Why Developers Get Fired
jammag writes "Other coders get canned — but never you, right? From a developer who's now a manager (and who admits to being fired himself) comes the inside story on how the Big Ax might sneak up on you. To prevent it, he recommends some strategic bragging, keeping a CYA (Cover Your ...) folder to document your efforts, and making sure that your talent isn't frittered away so much that even your most mediocre colleagues look good. "
I wasn't fired because I didn't toot my horn. I got fired because I knew the system too well -- and when upper management was told about this, specifically about a distinct lack of guidance in their security policies and documentation, they canned me. The reason developers get fired is either for the same reason most people get fired -- namely that they piss off the wrong person and they find someone in power to make their dream come true (and someone else's nightmare to begin), -OR- they learn too much about the system and not enough about politics and get caught by surprise when they try to implement a change that is a political hotbed. My last job: In-house developer doing network/system administration, deployment, and integration tasks.
Very often, developing stuff (especially in-house) has conflicting political goals, which are distinct from the design goals. Each team wants a certain piece of the pie and wants assurances they are "indespensible". Well, the problem is that in every project people need to work together and so there is always some overlap or need for integration -- which is fought tooth and nail because once things are integrated and made redundant (as business should be) -- people stop being "indepensible". So those that are slightly more politically aware find ways to strategically delay the project or insert superfluous technical considerations. And should a really good developer see this and figure out a way to convince others (by the strength of his/her design argument) -- this person will very quickly find a surprise pink slip for some random reason.
Keeping your job as a developer is as dependent on your ability to design well as it is on your ability to know when to duck.
#fuckbeta #iamslashdot #dicemustdie
I've been a software engineer at the company I'm at for about 7 years now. Was in technical support before that (enterprise level development support).
Here's my solution to not being fired. Make yourself damn good at solving the difficult customer problems no one else can solve. Do it so that customers and executives at your own company request you by name (executives at a customer knowing you by name can help here too). Yes, it makes life somewhat miserable when those ugly ass escalations come in, but you know what, when customers and company exeuctives ask for you by name because you did a great job solving problem xyz 3 months ago and saved a multi-million dollar deal, middle management will think twice about being the one to tell company executives, uhh, that person was fired last month.
Screw making deadlines, I miss deadlines all the time and haven't been fired yet. Why? Because instead of working toward my deadlines I'm saving multi-million dollar deals that could get lost because of other people's incompetence :). It's a great way for job security, and I love troubleshooting, even if the escalations are a pain in the ass.
You clearly need to get out in the world a little more. What happens when, not if, your boss doesn't see things quite your way? What happens when your hard work feels threatening to your co-workers, who may not work quite so hard, and leads them to do all kinds of stuff to undermine you. You're not working in splendid isolation with some fairy-tale objective criteria, assessed by equally mythical perfectly fair assessors, for success. You're in reality land, and while working hard is one thing to do--sometimes it's not even a good thing--it's far from the only one.
One example of "working hard" that's not good to do is when you, through your diligence, pile more technical debt onto a project that's already got unsustainably much of it. Another is working hard to accomplish something that's illegal and/or unethical.
What part of "A well regulated militia" do you not understand?
What you said is dead on, but the point you didn't explicitly make, but probably intended to, is that what you are doing there is valuable. It's not just fluff. Your management needs and wants that kind of communication, and when you provide it for them, they love it. When they have to suck it out of you, they hate it. When they never feel like they have a clear picture of what's going on, it's a source of stress for them, and when you communicate well, it lowers their stress levels.
Why don't they just trust you? Because they've had people working for them before who communicated poorly on purpose, because they *weren't getting anything done*. And they've had good people working for them who kept quiet about what they were doing because they didn't like the plan, and wanted to go in a different direction and present it as a fait accompli. And, so often, that sort of thing doesn't work out. So if you also communicate poorly, they're going to tend to assume your situation is the same. It doesn't matter how many poor communicators they've had working for them who actually got stuff done. They remember the times they've been burned, not the times they haven't.
and they were the ones who wound up getting my job!
/. Dissent will not be tolerated. Think like us or perish.
Selection bias. First, no one here is posting saying "I have an extremely fair employer who works closely with me in a very just way to ensure that I do my job well, and in turn I work very hard to please my employer so that my employment is safe and full of opportunity." The people responding here are ones with stories to share about how they got fired, and people who are fired rarely blame themselves or consider it to be justified.
Second, geeks in general seem prey to misconceptions about how the world should operate in ways that are very logical and rational and (invariably) beneficial to them. Their collisions with real life tend to lead to anecdotes posted on ./ about how much they suffer at the hands of a cruel, cruel world.
(c.f., any thread mentioning Hans Reiser)
Anyone who loves or hates any language, platform, or manufacturer, doesn't know what they're talking about.
I got laid off once when the old boss died, and the new boss thought I was too tight with the old "administration". After I was gone, the lay offs were done. Go figure.
Later I got fired from Microsoft. Microsoft's corporate culture is about a grading curve. No matter how good your team is, no matter how successful they are, some get "A"s, some "C"s, some "D"s, and some Fail. You get an "A" and (at the time) you could be rich beyond your dreams. You fail, and you are asked to leave.
This makes life at work brutal, because helping others be productive doesn't get you a great grade unless you can clearly claim credit. Furthermore, making use of someone else's advances in an obvious way is going to count for them, so you don't do it. Bottom line, it makes a very productive environment cause deadwood gets tossed. But if you survive a few years, you do so because you can develop an "in" with those that grade you, and you increasingly get grades partly (but almost never solely) because of who likes you.
The bottom line is that your first year is absolutely critical. You are almost never going to get an "A" cause you don't have the "In"s for that. But you can't fall down in visibility or you are toast.
Now it happened that my Dad died the first year I was working there. It was a long and drawn out process with cancer. I took several trips during the year to be with him when things got bad. And for the funeral. And I found it tough to talk to people. Then I had a meeting with my group leader, a guy who laughed nearly constantly but paradoxically had no sense of humor what so ever. We met in a conference room outside the doors of the building, and I was told to simply leave. My stuff would be sent to me.
After being tossed out the door, the project lead told me, "My dad died, and it didn't hurt my productivity."
The bottom line is that I MIGHT have avoided this had I spent more time talking up and down the chain of command about what I was going through. I could have taken leave until I had my head back together. The environment made it tough to get any support from people around me at work, but I might have worked harder at that. But it is also possible that some situations just are not going to be within your ability to manage.
Again no modpoints when I need them. You're absolutely right.
In the same vein, I remember something from a previous workplace. I wrote a very nifty piece of software, technically some of the best stuff I ever did for that company, asked my boss to come around so that he could take a look. His only remark, after I was "I like the look of it, but could you make the green a shade more yellowish? then it would be really great". I was quite pissed off for the rest of the day somehow
Non-IT people generally really don't care about how code works (or even if it work at all), what matters is that they have something shiny to look at.
"DRM is like the Ford Pinto: it's a smooth ride, right up the point at which it explodes and ruins your day."-C.Doctorow
For the first 9 months, no. But from then on its possible, just impregnate 1 woman a month. And wait for 9 months time(which may or may not be acceptable depending on the case) and 9 women would have a baby in a month. All you have to do is forget the first nine months, and hope that you will survive the first 9 months without loosing too much.