Those are words that no developer wants to hear, especially with an exclamation point. Perhaps you are thinking it could never happen to you.
Do the following comforting thoughts cross your mind when you think about the possibility of getting fired someday?
Everyone likes me too much.
Im the only expert on the system.
I have incriminating pictures of my boss from that last happy hour.
Well, maybe that last one would work, except you might end up incarcerated for extortion youre fired anyway.
I have learned the hard way over the years that it doesnt matter how clever you think you are or how much everyone loves you on your team. The fact is, there are always potential circumstances that can come to a head, resulting in the ax coming down on your valuable head.
Sometimes these doomsday series of events are in your control. Sometimes its like being blindsided by a bus.
So why do developers get fired?
Let me first state that I speak from experience. I have fired developers and been fired (although it was spun as a reorganization casualty).
It sucks on both ends.
As a manager, having to fire someone is an awful experience. I know, you are thinking cry me a river. Keep in mind there are two sides to every story.
Even if a manager feels all options have been exhausted, it still is a nerve racking experience. You dont know how the person will react. You think about their family. You think, is there something else I could have done better as a manager so we didnt reach this point?
From the being fired side of the table, your feelings depend if you see it coming or not. Those who see it coming usually take it stone faced or with a smirk (which helps reduce the awful feelings on the other side of the table).
For those who dont see it coming well I have seen train wrecks. Depending on what else is going on in that persons life, the magnification of stress caused by a firing can be overwhelming, resulting in outburst, tears or even laughter. (The laughter is the scariest reaction because you know the suppression of fear and hurt can explode anytime.) The truth is, if management follows the typical rules of providing warnings before letting someone go, then no one should be surprised. However, some people truly have their heads buried in the sand (or their code).
They believe it just wont happen to them especially younger developers who havent been around the block.
How to Avoid Being Let Go (The Three Reasons)
Lets review three reasons and what you can do to avoid being let go.
We might as well start with the obvious. If your job consistently isnt getting done, then you will eventually be toast. All it takes is a few missed deadlines and your manager will have no choice because you know what rolls downhill. A manager can only absorb so many blows from unhappy end users or their own boss.
Why wouldnt you see this one coming? Well, you might be thinking the missed deadlines are not your fault. Your excuses may include the design was bad or the deadlines are not realistic or they are making me code in Java and I am a .NET expert.
Guess what? Excuses dont matter. Results matter.
If your deliverables are always late, then you need to sit down with your manager and look for solutions. Dont assume conditions will change on their own. You have to not only be a change agent, but you have to document every action you take to improve adverse conditions.
I recommend having an email folder called CYA (Cover Your ). This folder might save you from having to face C-YA (Can Your ) before youre ready to go. Save everything disk space is cheap.
A second reason developers are shown the door is that they arent communicating the great results of their work. If you think cranking out tons of code from the safe confines of your cubicle will ensure your job security, think again. You have to promote your work.
Yes, I mean brag.
You cannot always rely on your manager to communicate your successes with others on your team and in management. Take management out of the equation and start a peer award process where the team members vote on coder of the month award.
Provide some goofy trophy and post the winner (and what they did) on the company wiki or via email distribution list.
You can also subtly mention what it is youre working on with others in management or end users. If you are doing good work, then youll receive kudos when the software is implemented.
And if the implementation is not a success? This is tricky because you dont want to play the blame game in public.
One suggestion is to talk openly about things that can be done differently next time and how you are eager to work with the team to correct the problems. However, if failures keep happening then follow the actions from my first reason above.
Finally, a third reason. This is the one that drives managers crazy. Its the case of unfulfilled potential.
The developer who has all the talent in the world, but lacks either motivation or drive to perform up to expectations. As a manager, I expect to be able to motivate team members with money, career advancement, cool projects or even intangibles such as increased work schedule flexibility.
But sometimes, the rewards just dont motivate.
The result is a developer who isnt accountable. They consistently are late to work and meetings. They dont adhere to standards. Theyre simply complacent.
Sometimes really smart developers can get away with this for a period of time. They can write code in a fraction of the time it takes others. Yet the manager allows for the same time an average developer would take to complete the same code.
The problem is when the developer gets too lazy or too cocky and starts pushing their deliverables to the last minute, causing delays. Or they just arent around when other developers need to talk to them. Eventually the ax will come down on them as well the manager must look out for what is best for the team and long term success of the organization.
You can be sure that there are plenty of other reasons developers get fired. So take off the ear buds, close down your 20 Skype threads and take some time each day to think about what you can do to prevent this from happening to you.
Otherwise, dont feign surprise when you also hear the words Youre fired!
Eric Spiegel is CEO and co-founder of XTS, which provides software for planning, managing and auditing Citrix and other virtualization platforms.