The Surgeon and the Deadline
In the previous article we saw the doctor-patient metaphor, and we discussed about our responsibility as software experts to ensure that we don’t let others corrupt our work.
In this article we are going to discuss about the other side of the coin: handling pressure and not letting ourselves corrupt our work.
Assume that you’re having an out-of-body experience, finding yourself on an operating table, while a surgeon performs open-heart surgery on you. Your chest is cut wide open, and the surgeon is trying to save your life while having a deadline, literally!
How would you want that person to behave? Calm and confident, adhering to his/her training and discipline, and giving clear commands to the supporting staff? Or maybe swearing, throwing tools around and complaining about unrealistic expectations and shortage of time while sweating intensively?
Would you want that person to behave professionally, or like a typical software developer?
Pressure is an inherent characteristic of the software industry. As a professional software developer you should learn how to handle it, and be able to act calmly and decisively under any circumstances.
As the pressure grows, you need to adhere more and more to your education and disciplines, because you know that’s the optimal way to meet deadlines and other commitments.
- If you haven’t already, start adopting disciplines that you can trust at all times, even during a crisis, and follow them consistently (e.g. Test-Driven Development - TDD). Following your disciplines only when it feels easy is utterly pointless.
- Never stop adhering to your education, and never stop enriching that education. The programming industry is continuously shifting, thus thinking you already know enough and remaining stagnant is the surest way to become obsolete.
- Ask for help from your team, and don’t let ego stand in your way. Plus, any other person, including less experienced fellow developers may be able to offer valuable input from their unique perspective.
- You should also make an effort to shorten the high-pressure periods by identifying and confronting their root causes, such as unrealistic expectations or messy code bases.
And speaking of messy code bases…
There’s no such thing as quick and dirty in software. Dirty means slow. Dirty means death. The only way to go fast is to go well. – Robert C. Martin
As with the previous article, metaphor was originally introduced by Robert C. Martin in his legendary book, The Clean Coder, a must-read for every professional software developer.
The last quote about speed is from the book 97 Things Every Programmer Should Know, where Uncle Bob gives solid advice on software professionalism, alongside numerous other excellent authors.