Truths about Software Development

I’m sure every software developer can relate to these truths.

  1. No matter how well you have designed a piece of software, another software developer will always tell you how their way would have been better.
  2. A requirements specification always misses out at least one absolutely vital piece of information.
  3. Software developers love to moan and complain about the work of other software developers.
  4. That beautifully crafted piece of shiny code will eventually turn into a steaming pile of spaghetti code — it’s only a matter of time.
  5. A happy software developer is one that is using the latest, shiniest new technology (or “toys” as they are usually called).
  6. As soon as you leave a company to work somewhere else, you will always be blamed for all the awful code when you leave — whether you wrote it or not — for years to come.
  7. No matter how much testing a developer does, another developer/tester/anyone will find a bug in it in under 5 minutes.
  8. Trying to explain something technical to someone non-technical is one of life’s biggest challenges.
  9. The intake of breathe you make when you realise just how much that useless IT consultant is getting paid to propose solutions you know he won’t be around long enough to witness (but which impressed the company executives by using every buzz word you can throw a stick at).
  10. When you try to explain why you need to revisit all those bodges and quick fixes you put in to get the release out on time, suddenly everyone seems to have gone deaf.
  11. If I had a dollar for every time I heard the phrases “How long will it take” or “How much will it cost” I’d be a very rich man. Good job I’m not waiting to hear the phrase “How about the quality”.
  12. You will always think of a better solution to the problem you resolved 5 minutes after it gets released to the customer.
  13. You look at code you wrote just last week and wonder what the hell you were thinking.
  14. There is always that one developer who writes awful code no matter how much time they have to write it.
  15. No matter how much effort you put into staying current you’ll always be asked about that one technology you haven’t got round to looking at yet.
  16. When you’ve checked in all your code and feel all smug as you wait for the rest of the team to finish their work for the sprint, you realise that 6 new bugs have been raised needing your attention before the software can be released. Suddenly you’re the bottleneck.
  17. When the only estimate you can give to the project manager is “How long is a piece of string”.
  18. The terror you feel when you have to upgrade your development environment in case it breaks something.
  19. Triple checking the question you’re about to post on Stackoverflow as you just know there’s going to be some smart asses who will pick your question apart or just plain down-vote it.
  20. The buzz you feel when you finally fix that bug that’s been evading you for days.

If you enjoyed this article , please do hit the 💚 button below. Thanks!

A father, cyclist, vegetarian, atheist, geek and multiple award winning technical author. Loves real ale, fine wine and good music. All round decent chap.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store