9 career pitfalls every software developer should avoid
If you love to code, and donít think much about your career or your business, itís time to get real and rethink how you approach software development
Letís get real. Some of you got into software because your parents made you (if you grew up outside of the U.S.) or because you figured you could make a lot of money this way. You didnít start young because you were into computers, and you donít really like software development. Youíre always going to be mediocre. Youíll make money because our industry doesnít know how to evaluate skill, talent, or achievement ó but this article isnít really for you.
If you got punished for taking apart electronics to see how they work… If you snuck online at all hours of the night to learn how to make a video game… If you spent precious free time learning when no one was making you and you werenít actively pursuing a career… If you then found yourself in software as a career (probably because you found out that game development is the worst part of the industry), then this article is for you.
You need to change the way you think about your career. Youíre not coding for love anymore; youíre coding for money. Save the love for your side projects. By all means, make sure you at least like your day jobóeven better if you love it. If not, find a better place as youíre able or the economy permits.
However, your goal should be to open a 401(k), shove every tax-deductible dollar in it you can, and still have enough left over to buy a house, a car, and do whatever it is you want to do. Maybe save the travel for later. Otherwise, someone else is making your money.
Along the way, you need to think about your career, not just your current job. To do that you need to avoid these nine pitfalls.
Pitfall No. 1: Staying too long in a technology
Pitfall No. 2: Being a monopoly technologist
By the same token, you need to hedge your bets. It seems easy and safe to become an expert in whatever is dominant. But then youíre competing with the whole crowd both when the technology is hot and when the ground suddenly shifts and you need an exit plan.
For example, I was a Microsoft and C++ guy when Java hit. I learned Java because everyone wanted me to have a lot more experience with C or C++. Java hadnít existed long enough to have such requirements. So I learned it and was able to bypass the stringent C and C++ requirements, and instead I got in early on Java.
A few years back, it looked like Ruby would be ascendant. At one point, Perl looked like it would reach the same level that Java eventually did. Predicting the future is hard, so hedging your bets is the safest way to ensure relevance.
Pitfall No. 3: Staying in love with a fad
Never tell the Groovy people that it is over. And never tell the Ruby folks itís the end. However, the magic has died. People arenít going to pay a premium for Groovy or Ruby developers. If your boss lets you use them on a project, it will be either because he doesnít care what you use, it isnít very important and he wants to keep you happy, or heís ignorant and doesnít realize that there will be a declining labor supply.
By all means, jump on ascendant technologies and learn them. Be ready to be one of the first to know it and pitch yourself as an expert in it.
However, also be ready to jump when the demand goes lower. There are always other new technologies to fall in love with, whether it be a language or a database.
Pitfall No. 4:†Being allergic to politics
Every organization, no matter how big or small, has some kind of politics. So, you need to hone your political skills. If youíre not aware of the politics, youíre going to be a pawn in other peopleís games. I donít mean you have to be the jerk who is all political games and no work, but you do need to play defensive politics.
Pitfall No. 5:†Being disinterested in the business
ďIím just a developer, I donít interest myself in the business.Ē Thatís career suicide. You need to know the score. Is your company doing well? What are its main business challenges? What are its most important projects? How does technology or software help achieve them? How does your company fit into its overall industry? If you donít know the answers to those questions, youíre going to work on irrelevant projects for irrelevant people in irrelevant companies for a relatively irrelevant amount of money.
Pitfall No. 6: Having the ďunion shopĒ mentality
When I was young, one of my first jobs for a telecommunications company had an old-timer who estimated six months for nearly everything. He made the mistake of going on vacation, so I finished the entire project in two weeks but saved him one piece to work on. I expected heíd be happy about this. He was not. Boy, was he not. He took every opportunity to get me fired. It became his mission in life. He complained to the new director.
Of course, I got my work done. I was innovative. I was always finding new ways to get things done better and faster and solve problems. He retired shortly after I left that job. A few times, I saw him in a coffee shop and we pretended not to know each other.
This wasnít the last time Iíd encounter this ďgo slow or weíll mess you upĒ idea. My advice is to do the right thing codewise, but be ready to face what is coming. If it is a pervasive problem then vote with your feet ó that company isnít going anywhere.
Pitfall No. 7: Not knowing (or caring about) your value
ďIím not in this for the money.Ē Then get a hobby. By all means, donít go to work every day thinking about your next dollar. But also donít go to work making 50 percent less than everyone else either. Know your value, and collect it.
Pitfall No. 8: Treating your job like just a job
ďIt is just a job.Ē No, it is a step in your career. You wonít be at this job forever. So, what can you learn here? What is the next step? Who is where you eventually want to be? How does this job help you get there?
Develop situational awareness of the whole business. It will do you and the people you work for a favor. It will also serve you well in the long term. This isnít just a job, it is a journey.
Pitfall No. 9: Thinking it is just about the money
Salespeople like to say, ďIím coin operated.Ē However, if you are not in sales ó no one wants to work with someone just in it for the money. What do you care about? That is the only thing that you will ever put your fullest effort into. I know I only want to work with the person who cares about the work. How about you? On the other hand ó donít be insufferable about it. If the thing you truly care about is tabs vs. spaces then maybe some Ritalin or Clomipramine can help.