Not all projects can enjoy all the best of situations. Sometimes things go south. People make mistakes, projects fall behind, integral people leave. At one point things need to be done to rescue a project before its considered a failure. Thats help needs to be called in and you are that person. The proposed saviour of the day.
So how do you do this? Firefighting is always hard work. You’re in a sinking ship and you go in with the fresh point of view and the (over?)confidence to patch it up and steer the ship to safety. You need to be able to get up to speed on the project as soon as possible, adjust to the team culture (especially for a team overseas), consider workflow and code improvements and do high intensity development to catch up with timelines.
Getting Up to Speed
You need to know exactly where the project is at in the point of view of the owners, managers, developers, testers. This would enable you to make accurate decisions on where most effort is required as to position yourself most accurately. Common questions you need to ask is:
- Who is in the team? Owners/Managers/Devs/Support/Testers?
- How is the project managed? Issue tracking? Source codes? Methodology?
- Server Configs/Integrations?
- Deployment and testing workflow?
- Who would be the source of truth for Design/Application Dev/ Server Configurations/Domain Knowledge? This would help minimize pointless discussions and communication and saves time on clarification requests.
Adjust to the Team Culture
Keep in mind that you need to be the solution to make things better, therefore, people need to be able to work effectively with you. Different parts of the word has different cultural differences. Id recommend studying a bit before you step on anyone’s toes. How late are people expected to reply emails/chats/calls? Do people socialize with drinks or drip tea? Office politics should also be considered as it might be the reason the project is in trouble or to avoid wasting time arguing with egocentric people.
Consider Workflow and Code Improvements
You’re here to save the day. How would you do it? Whatever your role is, you’re also kind of a consultant now. Bad communication? Redundant code? Insecure configurations? Long testing turnaround time? You’re the one with the fresh perspective so suggest ways to improve workflow and code. Execute if they are within a viable effort estimation in relation to the timeline available.
High Intensity Development
The urgency is your best bud and also your worst enemy. A firefighter doesnt take his time in a flaming building. Go in. Exert as much as you reasonably can. Get out. I say reasonable because any high intensity work will put a lot of pressure and stress on people. Stress relief is important to ensure people (including you) dont panic or break down in the worst times. Caffeine helps concentration, Magnesium pills can help nerves, Alcohol helps stress, and most importantly, sleep helps everything.
So got your helmet, heat resistant jacket and your axe? Good luck!