The High Cost of Losing a Developer

You’ve probably heard statistics about the “high cost of losing a customer.” The theory is simple and true (fact?): keeping existing customers and repeat business is much more profitable than attracting new customers. Here are a few facts from BusinessCoach.com:

- For every customer who bothers to complain, there are 26 others who remain silent.
- The average “wronged” customer will tell 8 to 16 people.
- 91% of unhappy customers will never purchase services from you again.
- It costs about five times as much to attract a new customer as it costs to keep an old one.
- Each one of your customers has a circle of influence of 250 people or potential customers who hear bad things about you!

The point of this post is simple: RETAIN YOUR GOOD DEVELOPERS. Getting someone up to speed on a legacy codebase takes a long time and is an expensive undertaking. A large part of the software coach’s or manager’s job is attracting, developing and keeping talent. And that talent becomes more valuable over time.

Yes, you might be able to replace someone at a lower annual salary, but you have to take into account the complexity of your code portfolio in how long it’ll take to make that person productive. A $60K/annum employee may very well take $120K before reaching the productivity level and contribution of the developer who left the team.

This entry was posted in business, management, systems thinking, teams. Bookmark the permalink. Follow any comments here with the RSS feed for this post.

30 Responses to The High Cost of Losing a Developer

  1. Me, myself and I says:

    Replacing a programmer is, in terms of costs, a matter of how well you are prepared to do so. Most successful manufacturing companies have some spare parts and spare machinery on stock, in case something breaks. They also have a clear image of what part and what machine is deployed where, and what it does. They have no trouble reconfiguring the assembly lines for when production demands it. Unfortunately, most programming companies, even large ones, don’t ever make plans for loosing a programmer. Clearly the costs associated with this event are higher in such companies than in companies planning for this. And it is unreasonable to assume that just because you try to make your employees happy they won’t leave. What if one dies in a car crash, wins the lottery or marries and moves to another town?

    On the other hand, if you put no effort into keeping your programmers happy at all, it is likely you already only have crappy programmers. Replacing a crappy programmer with another crappy programmer won’t do that much harm. There’s an article about development seen as a big ball of mud here: http://www.laputan.org/mud/. I don’t think that in such a situation replacing a programmer is much of a problem – things already run so bad that it’s difficult to make them run worse.

    @Rubio: usually, when we hire somebody, we allocate two weeks for productivity zero, the rest up to one month for some introduction, the rest up to three months to getting him where he can do simple things on his own, and the rest up to one year before he can do things without supervision. Any other planning would mean higher costs. A new, inexperienced programmer delivering working code that isn’t up to quality standards causes work for another programmer, and adding up the costs it is cheaper to have the inexperienced programmer do simpler and less work than to have him swamp other programmers with work.

  2. Rubio says:

    Great article.

    Dave, care to blog about the time required to break in a new developer? I’m having, once again, trouble convincing management that it takes at least 2 months before a newly hired developer is productive.

  3. Nike says:

    Nice information, valuable and excellent design, as share good stuff with good ideas and concepts, lots of great information and inspiration, both of which we all need, thanks for all the enthusiasm two sacrifice such helpful information here.

  4. It is true that a good developer should be retained. The trouble arises when the retainment involved increase in the pay packages. The managemetn often does not see the value that a good developer can bring to the organization. And quite often settle for another developer at a relatively lower cost and lost of productivity (which according to them is not that difficult to obtain if knowledge sharing is possible).

  5. frustrated manager says:

    It depends on your company/domain you work in. Most developers these days are incomponent at any price level other than peanut levels. Most “legacy” systems these days were built by morons in the dot com era and the developer industry still hasn’t shed them yet. The amount of technological debt that most companies retain probably outstrip cost of the all the middle eastern wars + the recession we entered.

  6. @scott: ” The biggest investment, as you rightly state, is dedicated time.”

    Very much agreed. I’m from Eastern Europe, I invested at least 10 hours a day in programming since I was 12. (I am almost 40 now.) It is quite annoying for me to see that the “cheaper” programmer in your story earns a lot more than I do :)

  7. scott says:

    @DavidD

    “Thats well over a million dollars invested so that I can spend 10 hours a day programming and learning about programming.”

    “I don’t think companies and governments of a lot of the cheaper countries have put in as much investment into there workers as the US has.”

    Perhaps not in terms of US$, but that doesn’t say anything about actual qualification.

    E.g. University textbooks. The same textbook sells for $120 (glossy, hardcover) in Canada and $10-15 dollars (cheaply printed paperback) in India/Bangladesh.

    The $1,000,000 invested to produce a quality programmer in the US is far, far less to produce a quality programmer overseas.

    By a global standard, you have probably overpaid for your education and been overpaid in your job; your dollar figures are inflated.

    Size of population also comes into effect. India is huge. The resulting competitive pressure and depth of the talent pool overseas fosters an insane work ethic and a desire to succeed. This represents an emotional investment that is very hard to quantify.

    I don’t think low prices overseas necessarily come from a lack of investment. The biggest investment, as you rightly state, is dedicated time.

    In a country with a far lower general cost of living, dedicated time is far cheaper. You’re absolutely correct – overseas hobby programmers will not unseat you.

    Overseas professional programmers might.

  8. Dave Laribee says:

    @DavidD – Good points, all. Perhaps a few observations about my rather taken-for-granted use of “good developer.” Also I want to thank you for – “I would not do surgery on someone because I have not put the time in” Sensible man! ;)

  9. David D says:

    I don’t think that people from one country are inherently smarter than another but I do think there is a difference in investment. My parents paid thousands of dollars for private school and the people who gave to my scholarship paid for my college. Then employers have paid me to program for the last 8 years. Thats well over a million dollars invested so that I can spend 10 hours a day programming and learning about programming. Those hours that I have worked are what makes me a good programmer. I enjoy medicine some and have access to all the books and online information that my doctor friends have but I would not do surgery on someone because I have not put the time in. I can’t put the time in because I have to work for a living and I have a family to take care of when I get home. I don’t think companies and governments of a lot of the cheaper countries have put in as much investment into there workers as the US has. If someone in another country doesn’t have that backing and they have to work at a non-programming job most of the day then take care of their family and just have a couple hours a day to pursue their hobby. I don’t think their product will be as quality even with the same resources at their disposal. So if you pay 100K for me and 30 for them it may not be a bargain because you lose out on alot of investment that people made prior to this. Im not saying that there are not jobs they can do just as well. I don’t write simple webpages because the client can find someone just as good for much cheaper and they should. But in order to do a lot of the more complicated stuff there is much more investment needed and if you put that into the cheaper countries I think you’ll find they wont stay so cheap.

  10. Andrew says:

    @David,

    “And Big companies like Ericsson are learning one by one what a painful process off shoring is and how the money saved now does little to offset the increased cost in the long term.”

    I’m curious how they are possibly learning this? Other than Lou Dobbs organizing a boycott on their products, I imagine it’s much too early in the game to even remotely know the long term costs/benefits of shipping jobs overseas.

    Let’s face it a good half of the poeple in our industry are just not good at their jobs (just a WAG, but it easily could be higher), so in theory shipping off the work that they’d be working on can’t get much worse than what is currently being produced here in North America…it’s just cheaper.

  11. Andy says:

    @ig – A developer’s IQ doesn’t necessarily make them a productive employee or a good teammate.

  12. Dave Laribee says:

    @majamin – the point isn’t that these stats directly map from customer to developer, only that it’s very expensive to replace a good developer, especially when you have technical debt (and we all do). please don’t take this literally or, more appropriately, a one-to-one mapping. i can’t see the case against “it’s more than salary, stupid.”

  13. majamin says:

    The statistics concludes these findings about customers. I don’t see how you can apply this to developers, who have a different relationship to the company than that of customers (some similarities, but different altogether).

    All of the comments and discussions under the post are valid in their own right, but there is no clear validity to replacing the word “customer” by “developer”

  14. David says:

    And Big companies like Ericsson are learning one by one what a painful process off shoring is and how the money saved now does little to offset the increased cost in the long term.

  15. baboune says:

    Well… Big companies like Ericsson are transferring hundreds if not thousands of SW developers from 60K+ paying jobs to India and China.

    And yes, they cost 50%.

    And yes, they are qualified.

    So? Your point is moot. Finding good developers is easy. And cost can be decreased by replacing complete teams not simply one developers.

  16. Andrew says:

    @Steve Py,

    Please be aware that I’m just playing Devil’s Advocate here, but how does a company measure “B) Does efficient and effective work” for a given developer?

    This is something a lot of companies have issues with.

  17. Dave Laribee says:

    @jd – that’s the corollary to the high cost of losing a good developer. perfect.

  18. Dan says:

    I totally agree. I currently work for a company which is in the process of losing their entire development team (even though it’s only 2 people) due to them being quite unhappy with compensation to begin with.

    I can’t imagine what kind of costs the company will have to endure to replace an ENTIRE development team.

  19. jd says:

    What about the cost of keeping bad developers?
    Buffalo theory… you can actually gain speed and stability by “thinning the heard”.

    There’s always lots of talk about hiring and keeping “good developers” but nobody ever talks about the fact that a “bad developer” can cause so much disruption that “good developers” become less efficient and start getting “poisoned” by chasing bad ideas and screwed up automations introduced by the bad developer(s)

  20. ig says:

    “A 60k developer probably could be replaced by 10 offshore poverty stricken developers in a poor nation. But a good 100k+ developer has skills that a 60k developer does not have, otherwise they wouldn’t be working for 60k.”

    What does the poor nation has to do with good developer and his skill level ?

    Unless someone is doing Cray related computing/software that even few people from “rich nations” have access to, nowadays anyone in an emerging economy country is able to buy an EEPC and master python/ruby/php/java/sql

    It may be frightening that one may loose his job because of lower wage rates in India or what-else off-shore defacto country, but this is the price everyone must to pay because of rich countries ignorance of poor countries.

    Western society promotes egalitarianism, but only if it is in their own backyard otherwise we are conservatory beings.

    Now any developer knows we are not equal, we almost have free and the same access to knowledge, but the way we use it depends entirely on us and how we’ve been raised by our parents.

    Anywhere the rule that applies is survival of the fittest, physically back in the old ages, mentally noways.

    If a child of 2 poor Romanians has an IQ above 200 million people why would he be rejected the capacity to take someone else’s job.

    The world must and will evolve no matter how hard is to face it.

  21. Steve Py says:

    @Andrew
    Easy, a good developer is someone that:
    A) Gets along with the rest of the team.
    and
    B) Does efficient and effective work.

    It’s not about what methodology they follow or technology they use, it’s about whether they “gel” with the environment, being the other people in the team, and are effectively keeping the client happy. (accurate, robust [non-fragile] code.)

    Anything else is gravy provided it doesn’t negatively affect point A or B.

  22. Liam Who says:

    A 60k developer probably could be replaced by 10 offshore poverty stricken developers in a poor nation. But a good 100k+ developer has skills that a 60k developer does not have, otherwise they wouldn’t be working for 60k.

  23. Liam Who? says:

    A 60k developer probably could be replaced by 10 offshore poverty stricken developers in a poor nation. But a good 100k+ developer has skills that a 60k developer does not have, otherwise they wouldn’t be working for 60k.

  24. You have got this all wrong. Developers are replaceable parts. When you find a cheaper one you should replace your current developers immediately.

    Your 60k developer can be replaced with 10 international devs, which means you will get 10x as much work done!

  25. Andrew says:

    Now here’s the hard part, define a “good developer”. :)

  26. I don’t think anyone will disagree here since we are all developers :o)
    But still, I completely agree with your point.

  27. Alex says:

    Nice post. The rule of thumb in HR is that is will cost, on average, between 1.5 and 2 times the annual salary to replace someone. I think this might even be higher for software developers since the institutional/application knowledge required can not be easily taught.

  28. Hector says:

    This is so true. Sometimes we dont see the bigger picture.

  29. Devmentia says:

    I think you missed some of the key points around replacing/removing a developer. The big red warning sign when you get rid of a developer for cost reasons is the hidden investment. You may be paying that developer 30K, but you’ve also spent (hopefully) on training and many other costs that are not as visible. This is investment and should be considered the same as investment in plant. When the developer disappears, so does that investment.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>