Pages

Monday, January 11, 2016

5 Signs your development job is in trouble

Today I am a senior software engineer at Mattersight, a SaaS company. But it has not always been that way. Five years ago I was starting my first true software development job as a junior developer at NCSoft. 10 months later, as the most recent hire, I was let go in a round of layoffs. I've had four years to think about it, and can see at least five indicators that it was not a good position for me.

Programming language paralysis
Coming out of college, I figured I was capable of learning any language needed by a reasonable development team. Scripting languages in particular were my strong suite.  Then I met Perl - and found a language that just didn't click.  I tried my hardest to really grasp the language. I even made quite a bit of headway.  But, it still wasn't code I wanted to show off.  Quite honestly, it was confusing - and it paralyzed me.

Had I been in the job longer, I might have recognized just how serious this issue was. Or, I might have realized that there was a deeper issue at play. 

Objective Unknown
One of my early tasks was to groom the backlog. Find a ticket I thought I might be able to handle and show initiative. No specific target, no true goal. I started in, got my environment all setup, and then the backlog blues arrived. This continued for a while - maybe it was a good starting task, but mostly it involved asking the senior dev's how to fix their bugs. 

There was a good amount of time that did have an objective, but with these exceptions, there wasn't a clear objective.

The 'strike force' team, no, that's not you.
Now, this by itself is not a huge issue, but, it can be an indicator. For me, the stealth team concept is a harsh one. Let's grab these few devs, stick them on a project, and sequester them. If you're on the team, you're probably somewhere you are supposed to be. If you aren't - and you aren't doing anything you appreciate, maybe ask about it. I didn't, but I should have.

Communication: Zero
One thing I ran into as time went on was a drop off in communication. I had finally gotten a good strong project.  I went after it with a gusto. Along the way I asked my supervisor questions about my approach, and conferred with others.  I thought it strange, but I did not get much in the way of feedback. In fact, I didn't get much in the way of any communication.  But, I had a project.

As the deadline neared, I finished up on my work.  At this point, the department head wisely instructed a different senior dev to review my code. Turns out, it had a security vulnerability.  A rather large vulnerability according to the senior dev.  It was something I'd specifically asked my supervisor about.  Now, I don't blame anyone but myself for missing the vulnerability. However, had there been communication, even minimal communication, the project would have been steered in a better direction at an earlier point.

Doing nothing
Unlike the other issues, this one is probably the most significant.  If you are not doing something, then you are not needed. And towards the end, I was not doing anything. Sure, I hit the backlog - but in the end, I was no longer producing.  In fact, many were not producing. And there were layoffs. My advice, if you are not doing something, reach out.  If you are still not doing anything, get out while you can.

A Final Note
There were many political motivations for my layoff, but not politics I was party to. An exec left the company, and everyone hired under his vision was laid off. Or, if they were exceptional, replaced someone less exceptional.  I had a lot of family issues that summer (I could write a book!)  But my performance was, from self evaluation, mediocre at best during that time. Had I known what to look for, I would have seen the layoff. But I did not know what to look for.

No comments:

Post a Comment