I’m confident that every smart human should have a plan for life, part of which is a career plan. Most of us spend more than half of our lives working. Did you ever think about that? We spend hours working on some projects, solving some problems, interacting with colleagues, creating and modifying things. Are you dedicated to what you do? If no, I have a question for you: Why do you work on xyz? Really! You may say that you could possibly work with more pleasure on another job. If that is your answer, why don’t you plan to change your job?

If you are dedicated to your work, I would assume you want to grow. Right? Do you have an idea on how you should proceed to reach your goals? Do you know exact steps to take and your knowledge gaps to overcome? No? How then can you be sure that you will grow to more respectful position, a position in which you are recognized and admired?

I always ask people about what motivates them and what they would recommend me to do to motivate others. Answers I get are different in formulation, but they all have the same core elements behind: possibility of career growth, recognizing, achievements, possibility to chief. Main question to you is this:

What do you do to reach your professional and life goals? Do you have a plan?

If you are not sure about what you do or what you should do, it is exact time to build your career plan.

Career plan

Career plan is list of positions and actions you should take in time to reach your short- and long-term career goals.

How to build your career plan?

First of all, building a plan is a great exercise and a process of establishing steps you should perform. The process itself allows you to have a critical view on your current career situation. You should know where you are right now, where you want to be and what are your abilities/skills. Answers for those questions are prerequisites for building a good career plan. If you have no clear vision on where you want to be, don’t be upset. Work on that. Try to write a few words that describe you after you as if you already reached your goals. How you see yourself in future might change, but at least you have some kick-off list. For me the list is something like “MVP, Consultant, Architect, Author, Community developer”. Also thinking out loud: “own company, another country, being manager, etc”

After you have some preliminary plan, you can refine it by removing less important items and by adding some additional ones. Also you can rethink some things and then rethink again and rethink few more times. In the end you will have some kind of more or less good plan. But do not expect it to be you final plan. I would say that you should always take a look on it and consider if anything requires improving.

Benefits of having a career plan

  1. Clear vision of the path you want to take.
  2. Possibility to track your progress to avoid getting stuck.
  3. Something you can use when you are trying to establish your life priorities.
  4. A way to communicate with your management on your career and get feedback.
  5. Extra confidence in your life.

You are now different!

After creating your personal career plan you will be different from your co-workers, who just continue to work blindly. There are people who work just to get enough money for a living. This cannot be considered as success, clearly not for me and hopefully not for you. Some other people probably think that simply working hard will lead them to success. Hey guys, just don’t think so! Yes, you are right that hard work is needed and respected, but there are definitely other things you have to add to bake a cake!

Once you have established where you want to be it is time to understand the path.

The Path

Positions path

Normally positions for Software Engineer start with these three:

  • Junior Developer
  • Intermediate Developer
  • Senior Developer

This is the most general part of a path I see in all software companies. What do we have after that? It really deviates from company to company, but generally speaking this depends on the factor of your interaction with other people, with technology and with the company.

The more you interact with people the more you become leader of team, say Team/Tech Leader. The term might differ, but I like the “Technical Team Leader” one. Even more, if you would like to take more responsibilities you can switch to managing positions and become a Project Manager right after being Tech Leader or Senior Developer.

The less you interact with people the more you become an expert (it is even possible to have such position officially in tech industry). Expert is the person with whom others consult and get advise from.

The more you interact with a company the more you become CEO, but depending on your company’s size you might have few more steps here. Of course, position’s title can differ as you climb the career ladder.

Summarizing, your further steps are in one of the following areas:

  • Technical Team Leader – a balanced position that has something from technical and management worlds
  • Expert – way to consulting and architect positions
  • CEO – way to management positions and eventually CEO

Goals in the Path

Why did I say “positions path”? Because this is not whole representation of the path. A good path should also go through you own personal ambitions related to your job to lead you to the established goals. What do I mean by this? Since I want to be recognizable community developer and known over the world, I should commit a lot of efforts in maintaining this blog, in speaking at events, etc. This has no explicit impact on my career growth, but believe me it has huge and tremendous indirect impact. Also, I would love to write a book and I’m planning on it. I still do not have a clear idea on what that book will be about. I only imagine something either on tech or on success. What matters is that I’ve planned it and I’m proud of it. Some remark goes here. I mentioned about this to my friend and he was laughing at me because I want to write a book and planned it but I do not know what about. I can express my arguments against it here, but would love to hear from you. [Edit 2015-Sep-16: I’ve released a free e-book on design patterns in my native language in 2012.]

My personalized “Developer’s RoadMap to Success”

My company as one of the leading outsourcing companies in Ukraine is trying to make employees happier with helping them in their careers. They create more positions and they also establish processes that allow employees see where they can move. (I hear you scepticism here…)

It is well known that one of the biggest motivation engines is visibility of a career growth. Since I’m considered to be a perspective employee (at least my employer thinks so), me with my company almost finished building my personalized Career Plan. It is the path with steps I should take to move from one position to another.

Of course, the company doesn’t care about my non-career goals even if they are dedicated to my personal improvement. It is the reason why the company has only included official positions in my career path. Highest position they’ve planned for me is to be one of the tech chiefs of one of the divisions. Highest position means a lot of interaction with clients and huge responsibilities in developing and advising on solutions. But it doesn’t include any of my desires to become community developer and stuff I would like to do to achieve my other goals.

So here I will present my own Personal Career Plan that also includes a lot of other things. I would recommend you to build something similar. On the left you can see path I built combined with some positions, certificates (officially needed for those positions). On the right side you can see my table of “Where do I want to be in a year“. List of  “where I want to be” is really powerful tool if you keep doing it year after year. (here is list for 2010 & here is list for 2011) [Edit 2015-Sep-16: To see complete list of year plans click here.]

A concrete career plan

You must be thinking now: “Boy, hold-on, hold-on! It is way too optimistic path. Are you kidding?“. I would answer “Shut-up! I know my path and will do my best to stick to it. And, btw, where is your plan?

Even I realize there is some overestimation of my possibilities/skills/efforts I would love think I can do all of this. Thinking in such a way is movement to The Success!

[Edited 2011-Jan-10: grammar fixed and few links added]

[Edited 2016-Jan-20: some grammar fixed]

2016 Follow Up?

As this post receives a lot of traffic, I decided to fix some grammar. I’m not changing the story though. I want to keep it the same so I can compare my old plan with my current achievements. Probably it is something you would like to know as well. Therefore I’m planning to write a follow up post in coming months.

2021 Update

Just for fun, here is my 2021 career update: I’m a Senior Software Engineer at Google working in Vancouver, Canada. Before Google I worked for Amazon as SDE3. I don’t know if this is an indication of any success or progress. I definitely had greater plans for myself in 2010. My ambitions subsided significantly and I tend to appreciate diversity of life much more than before. I feel like I probably need a new plan.