November 16, 2012 Leave a comment
This post comes at the completion of an assignment which was more development focused than I would like. While I focused as much as possible on adding business value, the core reason I am moving on is I did not feel the assignment was correct for my career. Working out of a paying gig may sound like a strange strategy for some of you, so I will explain it in more detail.
I see two types of people in every field. There are those who are in it for the job and those who want a career. Those focused solely on the job look at the current assignment based on what it does for them at the moment. They are likely to bounce around a lot, salary surfing, to get as high up the financial pole, but their moves are tactical. They rarely focus on long term strategies.
At the other end are career focused people. They see each assignment as a chance to improve themselves and – more importantly – their worth. They act as consultants to their employer(s), even when they are a full time employee. Their focus is on leaving every place they camped out better than when they set up the tent.
Please note that I have nothing against those who are job focused. I have just chosen software and architecture as my career. This post is focused on others who have this focus or would like to have it.
Working Yourself Out of a Job
I mentioned briefly that I worked myself out of a position. My primary reason was the group I was in had a strong focus on quantity, often to the detriment of quality. While I could have pushed out a lot of happy path code and made the manager happy, I am to the point where my code is my reputation and taking too many shortcuts to push more code was a reputation buster to me. My personal belief is one must be willing to compromise, but should never completely give in when you know the push is in a direction that ultimately damages your client.
I understand why some people do not walk when asked to do something they know is contrary to good practices. We live in a world where layoffs seem more the rule than the exception and jobs feel scarce. But there are three things I know that you may not.
- The bad job situation is largely hype when it comes to development jobs*. Even through the worst of the recession, IT has only seen low single digit unemployment, with the majority of the hardship falling on the networking side. Companies have been hiring as late as the week of Christmas for the past few years, so don’t believe that it is impossible for good people to get a position, even in a hard economy.
- Good people will rarely find it hard to get work. There is a potential we will experience really bad times in the future, but to date I have found I make more money when the economy is bad, as businesses get pickier on who they hire. You might think “but businesses also lower rates”, which is true … if you buy in. If you are unwilling to lower your rates, and can back up your skill, you will likely find that you can raise your rates and businesses will pay it. NOTE: If you are working with recruiters, you have to sell them you are worth your rate. This is more easily done before a bad turn in the economy and a layoff. Be proactive.
- Compromising you best qualities to keep a job will likely hurt you more than leaving the position. There are two reasons for this. First, you are a brand. Yes, I mean you are a product. If you are willing to be a product with poor quality ingredients, you may sell to the Walmart crowd (read: lower rates), but the people you really want to attract will turn you away. In addition, you will find it harder to market to new clients and end up having to sell yourself solely on your past. Second, you will develop bad habits. This leads full circle to damaging your brand. (Note to self: Blog on brand next)
* Realistically, the bad job situation is hype to all career focused individuals, as they focus on success. There may be down moments, but you will rarely find yourself unmarketable if you focus on career.
Now, let’s take this one step farther, as working yourself out of a job when you have a philosophical difference is one thing. I will also contend you should be working yourself out of a job even when you don’t.
What do I mean? I mean Bring it! Always bring your best game to every position you take, consulting or full time. Finish off the work better than anyone else. Make it easy to maintain and utilize best practices, preferably those either a) you document or b) are so well documented you can point out great examples.
Now you may think that this will lead to them firing you. This is a possibility. But do you REALLY want to work for someone who would fire the best? If so, you need to rethink job focus versus career focus. The bigger danger to being better is having a myopic employer that feels you are too good to advance, as you make him look good. If this is the case, you don’t want to work here either – at least not for this boss. But perhaps you can work on getting your boss a better position so you can take over his. It is a far more lasting rise to power to push someone else up the ladder, while pulling good people up with you, than it is to walk over someone to get to the top. The later method has you always watching your back for the inevitable knife.
So let’s summarize what I have said thus far
- Bring your best, even when you truly work yourself out of employment. It pays off great dividends in the long run.
- Work as a consultant, even when you are a full time employee. A “true’ consultant looks for ways to improve things and that is a very valuable skill.
- Work to help other good people advance, even those on top of you.
So what is career focus? Career focus is looking at the long term. It is continuous improvement on a personal level. And a desire to help others improve. It is taking the time to learn new skills, even when it is off the company time. It is also focusing on more than the latest sexy thing that Microsoft (or another tech company) just rolled out.
Even more important, it is planning your next moves far ahead of playing them. Like a good game of chess, you examine what you need to learn to not only remain relevant, but to excel. Get involved in beta programs and participate in making products better. Write a book, create a blog, speak at user’s groups. All of this builds your brand.
A note on career. While you will certainly rise in both money and reputation when you are career focused, neither or these should be an all consuming goal for your career. With excellence, you gain both reputation and money, but when you focus on gaining reputation or money, you often sink excellence, either by pricing your brand higher than the value you bring or coming across as an arrogant bore.
Take time to teach things to others, even when you are just learning. One of the greatest ways to learn a new technology, habit, paradigm or technique is to teach others. If you wait to be the best at something, you will often gain your reputation at being the best of a sinking technology.
And be willing to make mistakes. More importantly, be willing to own them and admit them. Anyone who gets rid of someone solely for making a mistake ends up with people who never grow or take chances. You don’t want to work for that person either.
Do Something Today … And Every Day
Denis Waitley, a great motivational speaker, states “when you are green, your are growning, as soon as you stop growing, you shrivel up, turn brown, and die”. While you may not experience a physical death by not growing every day, you will certainly kill your career and move back into a job focus.
Today you should write down at least three things you can learn that will make you better at your career. Initially, you might focus on three new, hot technologies. But you eventually need to get back to some foundational topics, business topics and soft skills.
Whether you realize it or not, learning to market yourself is extremely important, even if you are moving from one full time position to another. And learning more about business is paramount to getting through the glass ceiling set above the developer.
I realize some of you may only want to be developers for the rest of your working life. If so, be the best. But most of you will find you want to contribute even more. Perhaps this is management, but it may also be architecture or business process management. Either way, learning more about business is critical to your success. I would also argue it is critical to success as a developer, but you may need some time to have that soak in.
The important takeaway is you need to do something today and every day. Even if all you do today is determine what you need to learn, you need to do it.
I guess the best way to summarize what I have said is you have to determine what you want to do when you grow up. I say this whether you just graduated college or you are near the end of your career. If moving up to a decent salary and coding until you retire is your focus, then aim for being one of the best coders you can be.
Make sure you are always growing. Learn the latest tech, but also learn how to build better foundations. Learn how to bring more value to businesses. Learn how to be a better person and have better relationships. Move in the direction where people want you to work for them because you bring value. And learn to be a joy to be around. One of the most valuable skills is having people wanting you around even when you are brining bad news.
Best of luck to you.
Peace and Grace,