When Developers Hit Their Capacity for Pain, Frustration and Career Dead Ends
Developers have limits but it takes time to realise you have hit them
It’s been the year of the big developer resignation — Why Are So Many Software Developers Quitting Their Jobs?. Where developers are quitting their jobs in greater numbers than any year before.
Quitting you job isn’t necessarily a bad thing and it could be that developers are taking advantage of the high demand for developers and are getting out of poor jobs where they are taken for granted — Why the Great Developer Resignation is a Good Thing
You can make a case that developers aren’t quitting their jobs, they are instead moving to new jobs that are better paid with better opportunities — It’s Not the Great Developer Resignation, Developers Are Playing Musical Chairs.
An end is a new beginning
The developers who I have spoken to recently are moving jobs not for more money but because they are tired of being taken for granted.
- Developers are moving jobs because they are tired of being put on terrible projects and not getting support from management
- Developers are moving because they are tired of career dead ends
- Developers are moving because they are tired of no investment
- Developers are moving because they are tired of seeing developers leave the team and their responsibilities being passed to the developers left with no extra benefits or pay.
The right words from management are only effective if action backs them up.
Football supporter
I read this article about a Tottenham Hotspur supporter, as a supporter of Ipswich Town football club, I can sympathise with. Football is a source of mostly frustration with small surprising pockets of joy.
This quote below sums up the pain beautifully:
The team still lacked any creative ideas — the default mode of every player was to pass the ball sideways — and Leeds, a side just above the relegation zone, were in complete control. What’s more, Spurs had not managed a single shot on goal, let alone one on target. So I told Matthew what had been on my mind. That I wasn’t sure how much longer I could face putting myself through such unremitting suffering, something that I had previously effortlessly taken in my stride. Indeed I had always worn Spurs’ capacity to let their fans down as something of a badge of honour. I had expected Matthew to tell me to get a grip and stop moaning. If I expected to win a major trophy I should support another team. Instead, he told me that his father — a longtime season-ticket holder back in the day — had also reached the same point at roughly the same age as me and had stopped going to games. Which got me wondering if there was a quantity theory of disappointment in football and that I had reached my limit. I’ve a while to find out. Spurs came out for the second half looking like a different team and went to dominate the game and win quite comfortably. We left the ground making plans to meet up for the Brentford game next week. Maybe I’m just incurably shallow.
The pain of Development
Reading about the dead end nature of supporting a terrible team made me think about some of my development jobs.
I remember being a Java developer working with some of the worst legacy code I had ever seen. Huge 1000 line methods and every change was made in fear that you could break multiple areas of the code. You did not know what it did.
The other developers I worked with were nearing retirement and took no joy in development, never tried anything new and cranked out an adequate amount of code each day, enough to not to get fired.
There was no training, no career and just a treadmill of unrewarding work to look forward to. The people were good and relationships were fun, but anyone who had any talent moved to work in a better environment with better developers.
The company had this cruel idea of making you list down interesting training at the start of the year but never letting anyone go on them. WHY!
They had another process where everyone had to come up with an idea that improved something by 5% but no one ever got a reward.
In the end, I hit my capacity for pain and suffering. I had reached the limit of this nonsense and looked for another job after many years. Looking back, I don’t know why I stayed for so long.
During my career I have seen many developers staying in dead-end jobs not reaching their potential because it was easier to stay in a job you new than move to a job you didn’t.
Developers are made for more than this, developers need to recognise when their career is stagnating and they are not improving. This should be the cue to move on and move upwards.
Annual job review
It can be hard for a developer to identity if they are in a dip or a dead end? Do you need to keep going to power through or are you bailing water on a sinking ship.
We go to the dentist every six months to get are teeth checked but yet they are happy to go to work 8 hours a day for years and not review their career.
You should review the year you have had and your plans and opportunities for next year.
Ask yourself questions
- Have I learnt new skills?
- What were my roles and responsibilities?
- Is my career progressing?
- Am I happy with my role, my project, my company?
- What is my ideal role and am I making progress towards?
- Am I being paid the average wage for my experience, skills and knowledge
This quote from Warren Buffett is a good way to view your current role and career
[Boat with a leak] Instead of great managers trying to fix the leak and spending all of their time bailing water, they may be better advised to find another boat. Warren Buffett
If you cannot see a way to progress your career in your current role and company, then you need to move. In some roles, it doesn’t matter how hard you work, there is no opportunity to progress there. This is a dead end role and you need to recognise this and move to somewhere there are opportunities.
It’s rare that hard work alone will progress your career, you need to create a plan and execute. You have to think your way forward in your career
You should raise these questions with your current boss because there be opportunities you aren’t aware of or you can’t see the route to progress.
Make progress and don’t stay in a comfortable role that you can do easily