How not to give up code quality even under pressure

From time to time, as a project manager, you face events which put your project under strong pressure. How to answer the imperative of quality in such turmoil?

Because of various factors, pressure can increase. Indeed, you may be closer to a very important business deadline, you may have unexpected leaves in your team, or simply things which do not progress as fast as expected.

The most common reaction towards pressure increase is to loose quality constraints. For instance, you postpone documentation writing or you develop with less complete unit tests. And it is quite efficient, at least for a short while: by reducing quality, you voluntarily create technical debt. As any debt, you will have to pay it sooner or later. Maybe, as the project is under pressure, later is a better option.

However, as a project manager, you have to ensure the final success of the project. When you create technical debt, you have to pay the interests; developing a given feature will take more time because of the junk code inside the project. If the technical debt is too high, your team will not be able to develop fast enough to meet business expectations, which put your entire project at risk.

A good practice is to implement indicators, dashboards and alerts to continuously monitor the amount of technical debt of your project. Then, you will be able to loose your quality practice just as much as needed, and create only a sustainable amount of technical debt. You will also be able to explain the situation to your sponsors and convince them of the imperative of not doing too much “quick and dirty” code; otherwise the project would be in jeopardy. As always with technical debt issues, it is a question of balance: not too much, not too less, and of the timeline: borrow now and pay later, but do not forget you will have to pay the total plus interests.