Three career paths for software developers
Our CEO – Vitaly Nikulenka continues to share his experience. This article is about 3 different career paths which software developers can choose.
Once any developer faces a challenge: what’s next? What am I to do? One can become an expert who is usually addressed to when assistance or advice is needed. One can also become the head of an IT business or found his own startup. What’s the best choice and where does it lead to?
There are two types of the career: vertical and horizontal ones. The horizontal career path is of an expert – a specialist with deep knowledge and vast experience in a certain field. The vertical career is a manager’s one – a leader with several subordinates. The third career path for developers is to set up their own startup.
That’s the most reliable path to follow if you want to make a career in IT field. No matter vertical or horizontal way you’ll start pursuing in the future, it is always better to start with the horizontal career. Following that path you are sure to acquire the skills and knowledge which will remain with you forever.
The goal of the horizontal career is to become the best specialist in the field you are engaged in, for example in Java development or database implementation. You can’t be a wide-knowledge specialist in many fields. One is either a good architect who can design systems, or an outstanding database specialist with extensive knowledge of DB2 or Oracle and skills to set databases better than anyone else can do. Most of the time system efficiency depends on fine DB tuning, index creating, SQL-query optimization, and many other things which come only with experience.
A Java specialist can be an expert in certain application environments, for example, WebSphere, WebLogic, Tomcat and deliver correct code, apply and inherit classes. There is, however, a wider field of object-oriented programming. It is applicable both to Java and C++. If one makes up his or her mind to become a cool expert, it’s impossible to embrace the both languages. At some point they go separately. Knowing the basics of object-oriented programming you need to choose an area of expertise: either Java or C++.
There are numerous directions within the field, including programming languages and data processing types. Every field has its own specifics. You need to read a lot, work a lot and learn the fine points of the applied approaches. Simply reading specifications or manuals is not enough for getting things done. The real projects differ from the theory, that’s why experience is valued over everything.
Another advantage of a horizontal career is that following that path people become distinguished and highly sought after professionals. Their time is very expensive, hence the salaries are high. However, besides being a good specialist in a chosen field, one needs to learn how to communicate with other people. The higher your expert rank is, the more frequently people turn to you. So, you need more skills to communicate with them and raise your personal value.
There are two stages in the Expert’s path:
- The first stage: “I’m an expert, I know everything, I don’t care what others think of me and whether they turn for my help or not. If I am set a task, I will complete it better and quicker than anyone else”.
- The second stage: an expert needs recognition and wants to teach other people and transfer the knowledge. Some people are ready to do it, but have very little understanding of how to actually start. If they are taught to share their experience and knowledge, they become even more valuable experts.
At R-style Lab there are professionals who help develop communication skills, and leadership traits.
Personal PR is very important for experts. They need to get recognition of their own, to feel themselves important and sought after. It’s not possible to be deprived of an expert career.
If a person has become an expert – that’s his or her own achievement. A manager’s career is much less stable. If a manager has not previously become an expert in the field, he can easily make a career, but can be equally well fired if anything goes wrong. Alternatively, if an expert takes a decision to carve a vertical career path, he or she will easily achieve that goal as such people are always welcomed.
First of all, you need to start with the horizontal career and later pass on to the vertical one. Knowledge and experience obtained during your horizontal career will be of assistance. Subordinates will try to do their best to fool you badly: “It's impossible” or “Nobody does it”. Being an expert you will be able to argue with reason, making the team do what’s necessary. But if you are only a manager you can be easily misled.
Your career can be as follows: an expert, later a team leader, a project manager, a unit head, a head of a bigger department, a head of a branch and as the final step – a C-level position.
You will have to study a lot. Besides becoming an expert in some field, you need to learn how to manage projects, develop leadership and communication skills. You might need some knowledge of marketing and economics. It is necessary to understand the sales processes as well. Some basic concepts of the legal sphere and legislation are a huge advantage as well.
Founding a startup
Startups can be either fully independent business entities or projects within the company framework. Many companies, including R-Style Lab, support and encourage their developers to promote the products or services they have created within the company’s framework. Sometimes a dedicated development team is allocated for such projects.
Frankly speaking, sometimes it can be difficult to persuade the company’s management in the final marketing success of an idea. Though, that hardly poses more difficulties than talking an external investor into a project. So, if the management gives the green light, you are immediately provided with additional resources of marketing, sales, legal departments and accountants.