JavaRush /Java Blog /Random EN /Not all developers want to be managers, and this is the n...

Not all developers want to be managers, and this is the norm

Published in the Random EN group
Translation and adaptation of an article by developer Peter Zemek and his thoughts on whether the status of a senior developer is really an intermediate stage before a managerial position. Not all developers want to be managers, and this is the norm - 1

Developer career path

You probably became (or want to become) a developer because you love coding. Love to “wrap” abstract ideas in code. Create something important out of nothing. Learn new technologies, programming languages, frameworks, etc. Understand how everything is tripled. Therefore, while you work as a junior developer, gradually develop to a strong “average” developer and reach senior status, you enjoy what you do. And then one fine day you reach peak form in your business, or suddenly you show yourself to be a good organizer, or there is simply no one in your team suitable for the role of manager that this position is offered to you. In such cases, it is customary to say: “Moving to a leadership position is in the order of things.” But I would like to object: I think no one should do what he doesn’t want to do.

Why such a transition is not in the order of things

First of all, if you're asking someone who likes to write code to become someone who doesn't do that at all, where's the logic? He will feel that his favorite activity has been taken away from him, and sooner or later he will burn out and hate his job. Of course, he can shrug off new responsibilities and continue coding, but then the managerial functions in the team will sag. And this is bad for business. Why would anyone want a leader who doesn't want to manage people? Secondly, just because a person writes code well does not mean that he will be a good manager. Development and management are different fields that require different skills and mindsets. It's like football players and coaches. Just because you're a good football player doesn't mean you can run a football team well ( although this certainly happens ). The manager needs to interact closely with people and set up the work process so that it bears fruit. You need to give people the opportunity to do their work so that it is effective, but not to do this work for them. And a developer is a line employee. Being a manager means achieving results by properly organizing the work of other people, rather than doing it yourself. Third, there is a provision known as the " Peter principle ". Its essence is that specialists receive promotions based on their previous work experience until they grow into a position for which they lack competence. Thus, if a good developer is promoted to manager and he is not ready for this, he will not be able to do the new job properly. The transition of a good developer to a bad manager will only harm the company. The increase must be made within the framework of current activities. And if a developer does not voluntarily develop managerial competencies, there is no point in pushing him in this direction. Fourthly, some specialists agree to a managerial position in order to increase their salaries. Yes, managers often earn more than their subordinates. But not always: the opposite situation also occurs. If a team has strong specialists, it will be more difficult for them to find a replacement than for a manager. If the developer's contribution to the company is more valuable than the manager's contribution, there is no reason to overpay the manager. Besides, the patch isn't everything. It is better to do what you like for less money than to do a job you hate for a higher salary. Fifth, you should never accept a management position just because there is no one else on your team suitable for this role. This is not your fault. You need to be intentional about your career. Otherwise, not only your mood and self-esteem will suffer, but also the company. So what do you do if you love programming and don't want to switch to the management side? There is an exit!

You have a choice

The position of senior developer can be an intermediate stage before a managerial position. It may not be. In general, the career path may be managerial, or perhaps technical. You can easily develop in the technical field, because there are such positions:
  1. Senior/Chief Developer - this may be exactly the position in which you want to continue to develop. Allowing senior-level programmers to remain line employees is normal.

  2. Lead developer (tech lead) is a semi-managerial role. Lead developers manage projects/people only from a technical perspective. They do not have direct subordinates and do not manage employees: they can influence the final decision on certain issues by the power of their authority. However, the competencies and area of ​​influence of this specialist may differ in different companies.

  3. Architect – If you enjoy designing complex systems and are good at it, you can become an architect. Architect is often considered the pinnacle of technical career development. An architect's job responsibilities may also vary, to the point that not all architects write code.

Conclusion

I hope that among the readers there will be developers who will feel a little better: it is absolutely normal to doubt whether it is necessary to become a manager. Do what you love and don't let others drag you into doing something you'll hate. Moreover, programming is what you really like, isn't it? Being a manager is normal, and I know those who enjoy their responsibilities because they enjoy working with people. When choosing a future career path, consider what you really like.
Comments
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION