Gant Software Systems

The Cost of The Deathmarch

I’ve had a few projects over the years that have required insane amounts of work in a very short time period and usually have tremendous and horrible consequences for at least one person on a team (or the company as a whole). Besides the occasional server crash or “if we get this thing out, we land a huge customer” type of work, I’ve noticed some significant commonalities about deathmarch projects that I believe could be used to help an individual detect whether they are about to sign onto one. It’s hard to tell when you are interviewing, but after mulling it over, every single time it has happened to me, the signs have been there all along. So, without further ado, allow me to introduce some warning signs that I’ve noticed that frequently come during interviews or the first week of working a death march project.

  1. Dubious choice of technology. Think carefully through what sort of tasks you’ll be doing on the project, what sort of load your servers will be under, and what sort of capabilities your team currently has, or can obtain in short order. Now consider what technology is being used on the project. Does it make sense? Are you building a website using the latest and greatest javascript tools with a staff that only does winforms? Are you trying to construct a high-throughput, fault tolerant, messaging-based application by building processes that poll an SQL database continuously to see if they have anything queued yet? Are you trying to service mobile web clients on cell phones in the boondocks using old-school webforms? Consider a project mismatched to the toolset that will be used to build it like the first faint whiff of dead fish coming from your bedroom trashcan. You either need to go somewhere else, or it does, and pronto, because it’s going to reek in short order.
  2. Hard deadlines and vague requirements. If your project has hard, inflexible deadlines at a point in the future (usually one that is hurtling towards you all too quickly) and yet doesn’t have good requirements nailed down, you should quit immediately unless the people in charge are willing to quickly solidify project requirements at a level where they can actually be handled in the time allotted. Yes, I said quit immediately. You can’t keep that boat from sinking, you can only go down with it. A sudden resignation might just jar some of the folks in charge enough for them to change direction and save the rest of the team from insanity.
  3. An office environment that does not lend itself to focus. I’ve worked at way too many places who pride themselves on their artful decor, foosball tables, and the fact that nerf gun fights break out between developers at random times of day. None yet have been what I would consider functional or professional. Every single one lacked the discipline to head problems off ahead of time, instead preferring to play until play simply could no longer get by the higher ups. Then the debt comes due.
  4. A culture of working long hours. Ask around. Find out how many people in the office are putting in overtime. If it’s more than half and it has been sustained for more than a week or so, you’d better start asking questions. If it’s more than a month, you need to be looking for the exit. Overtime over an extended period has any number of deleterious effects on a team, a company, and a project (which I’ll list below). Sometimes it is necessary, but it should not be a normal course of business, any more than throwing up should be a daily occurrence. Both mean that you have taken something in that you shouldn’t and your body knows what to do about that, learn from nature.

I don’t mind working hard. I don’t even mind pushing around 45 hours a week for extended periods (even though that is slight overtime, it can be mitigated pretty well in a good environment). However, beyond that, crazy amounts of overtime hurt the entire project and everyone on it. Here’s some examples I’ve seen or heard about through my network of friends.

  • I worked with a fellow who had a heart attack on a Monday and was calling around for help on a project the following week. He simply had worked so much that he wasn’t able to take care of his health, having to frequently eat quickly (which meant eating rubbish) and being too tired when he got home to exercise or simply relax. He lived, thankfully, and has since taken better control of his health, but it took getting to that to decide that it wasn’t worth it. Other friends and acquaintances have not been so lucky. I know dozens and dozens with issues like diabetes, carpal tunnel, major vision problems from staring at a screen all day, and any number of people with major sleep issues because they CAN’T let stuff go.
  • Another fellow I know simply worked late every evening. He missed his daughter’s childhood almost entirely, between working late and constantly being on the road on weekends for work. His wife eventually left him and he committed suicide after becoming bankrupt (turns out child support payments for high earners tend to be based on your highest earnings and his highest ones were insane and unsustainable). Granted, I believe this to be a case where there were numerous other things afoot, but it is still sad to think that his ex-wife had to explain to a small child that she’s never going to see daddy again, and the overwork contributed there.
  • A company I worked at had a culture that was relatively loud, with a lot of goofing off. A team that was already overloaded was tasked with a project that simply could not be completed in the required time-frame. The developer frequently came in late and stayed late, so that he could avoid the noise and interruptions. This ticked off several members of management, who didn’t realize or believe how late he was staying (the guy wasn’t a “team player”, because he got agitated when he was interrupted while working…on the clock). Eventually, the eruption came and the guy rage-quit about a month and a half before a major deadline. The other developer on the team was also let go. I’m sure someone reading this believes they know which company that was that I’m talking about. Let me point out that this has happened three times that I’ve seen. I’ve once been the developer who rage quit, and I’ve also been the guy that got let go. I’ve also had the distinct pleasure of being one of the ones left behind to shoulder the extra work. There are no winners on this one.
  • At another company (I wasn’t at this one, thankfully), overworked developers left a number of very serious security holes in a website (yup, just checked, they are still there, both the developers and the security holes) that processes credit card payments. They are dumb little coding mistakes really, or at least they were when they were put in place late at night while someone was trying to get yet another feature out. However, there is so much code now built up around the broken features, that quite some time later, the company hasn’t gotten around to fixing the problems, even though they represent massive risks of lawsuits. When it’s the sort of situation where a list of compromised email addresses could allow one to siphon credit card numbers out of an application though, it really doesn’t bode well for the company if that ever gets loose. How do I know about the issue? Well, it turns out some people use Stackoverflow user handles that are easily tied to their names and I was troubleshooting a problem with credit-card related security holes that was ALSO produced by overworked developers and ALSO had a lot of architecture built around it that couldn’t easily be ripped out and I saw their questions late one evening when I was trying to fix the problems on a site I managed.
  • So, by analogy, I liken overtime to painkillers. Small bursts of it can get rid of pain points and restore proper function. Longer-term use may be needed if the situation is particularly dire or pathological. Chronic use creates death and destruction like chronic Oxycontin and heroin use, and people frequently don’t know how dangerous it is when they start or where it will end. And willful, intentional selection of a death march project, either because you think you can handle it or because “it sounds like fun/they have a foosball table and free beer” is pretty much analogous to eating bath salts given to you by a stranger. It will not end well and cannot end well.

I honestly do think there are some aspects to overworking that are startlingly similar to other sorts of addiction. It’s something to think about the next time you are asked to work over. Are you taking an aspirin to get through the pain, or are you taking a needle in the arm to get through life? The latter is probably not what you had in mind when you took up a career.