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
I get it. You like Microsoft C# or Java or JavaScript or Python or Cobol. However, most technologies have a life cycle of adoption, peak, outsourcing, niche, and unhirability. Meaning if you knew Cobol in the 1980s, cool. If you knew it in the early 1990s and werenโt looking to retire, you were at risk of losing your job. If you knew it in the late 1990s then Y2K got some people $300 an hour. Today, after 20 years of Cobol programmers not making all that much money, suddenly there is opportunity. But you have to be willing to relocate away from the coasts, and youโll probably make less than youโre accustomed to.
What about Java? I used to bill $300 an hour for Java consulting. Now? Now Java labor is hired in bulk at large companies. If you donโt think JavaScript or Python or whatever your favorite thing is will go the same way, you just arenโt paying attention.
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.


