Breaking the team lead: Software Engineering Manager has more salaries, better prospects - and we hire them in packs

The classification of posts in modern, especially technology companies, is confusing not only with an abundance of abbreviations and a mix of terms in two languages, but also with the nuances of the content hiding behind them. This is nowhere taught - an understanding of the intricacies, content and specifics of certain posts comes with experience and is transmitted only with experience. Over time, we plan to systematize our knowledge in this area, but for now let's talk about the essentials: the next Hiring Tournament will be held in Moscow on Saturday . At a tournament - or rather, a safari - in which four software companies DevFactory, Aurea, Ignite and Crossover went hunting for the heads of a rare beast Software Engineering Manager, trying to lure him to an annual salary of $ 100,000. Why not talk about this is the creation and how in the corporate jungle SEM differs from the twin post - Team Lead.

The more sophisticated the processes are debugged in the company - the more they resemble the conveyor, regardless of its
Team Lead profile
, especially in small teams - this is a universal soldier who will scatter tasks and can stand behind the machine himself to show how to work or close a hole in the resources. In general, he is a team leader throughout the team lead - dad of the development team.

However, if your company has a Software Engineering Manager , “seeds,” they will also lead teams of developers or engineers, monitoring and ensuring the team’s performance, and maintaining working contact with “neighboring” development departments. So what is the difference with team leaders? We asked Maxim Vinnikov, VP of Technical Product Management, Aurea Software, to help clarify the details.

Максим Винников — одна из жемчужин хантинга «Кроссовера». Мы пригласили его в компанию Aurea Software, одну из «дочек» техасского конгломерата ESW Capital, совсем не так давно, в январе прошлого года — и тогда ещё на позицию Technical Product Manager. Но уже в июле 2017-го Максим пересел в (виртуальное) кресло вице-президента.

At the previous place, at AT Consulting, he worked for almost two years just as Senior Software Engineering Manager. In general, almost his entire career led him to the moment when he was able to help us write this article on Habr :)

Narrow specialist vs general specialist

The difference between Team Lead and Software Engineering Manager is that between the therapist and pulmonologist. In our latitudes, Team Lead usually manages multi-disciplinary teams and can itself be multi-tasker. “Semes”, with due competence in the applied technologies and methods, do not take part in writing code, tests, and so on, and are focused on a specific front of work or operation. Yes, some may find this approach controversial, but it fits perfectly with the Factory development paradigm. Software Engineering Manager is a specialist in his field, and a high-class specialist who performs the functions of leader and organizer, leaving work with the code to linear programmers of his team.

However, not only SEM, but the company as such should grow to such a level of specialization. In the early days, most businesses needed universal soldiers. But as soon as growth begins, the specialization of employees and the "mechanization" of processes are necessary in order to be able to step onto the next step of development.

For the specialists themselves, narrowing their profile carries costs that need to be prepared for. When the burden of working directly with the code is in the past, giving way exclusively to managerial responsibilities, its activity becomes more understandable and transparent to others - and therefore less suitable for people who are inclined to emulate a sense of their own employment, having buried themselves in a heap of diverse tasks.

Cool SEM must be a powerful specialist, in which the manager won. Another problem for fans to antagonize these roles. At the same time, SEM does not have the right to “rust” and stop in its own literacy: it must understand from beginning to end what technologies his team works with and easily track possible problems.

As a communicator, the Software Engineering Manager must always control the input and output points of its team’s tasks. In order for a company to pump a product like Nord Stream pumps gas, each pipe segment must coincide with at least the thickness, diameter and position in space. At the “input”, SEM is obliged to clearly understand what is required of its subordinates, and at the output, it is necessary to qualitatively transfer the finished product (as part of the code, tests, and so on) to the next SEM and already to its “fighters” who will take it to further work. Especially when it’s not about primary product development, but constant support of, say, a SaaS solution - the task flow becomes continuous and the development cycle is rapidly rounded off - the slightest failure in this process threatens with the consequences of a loose nut in the wheel when leaving the autobahn.

But the established processes are not a reason for relaxation. Having debugged the processes, they should be started to clean. A banal example: increasing the number of commits is good, but if in the end 50% or more of them are subsequently corrected, then this is not an increase in productivity, but running in place with a burden. By debugging processes, SEM increases the amount of work performed, cleaning them - reducing the cost of performing its specific elements, resulting in a constantly growing ratio of result to effort. That is the same labor productivity.

Career over, long live the career

Many senior developers dodge the positions of team leaders imposed on them, fearing a professional pit - how you turn out to be a leader, you still have to find out - but the grip, skills and relevance of the developer's experience are guaranteed to sag.

But this choice is worth the risk. Even if you devote yourself to perfecting coding skills, you will only polish the glass ceiling above your head. At some stage, salaries simply stop growing - it only remains to change the location, moving from the edges more efficiently, with a conditional five $ per month, to the sunnier regions, where they pay 15 and more - but where life is incomparably more expensive and taxes are biting more . In general, if in your old age you want to accumulate not only honor and respect, you cannot fail to notice this ceiling - Hattori Hanzo could make the best katanas in Japan, but if he opened his factory instead of a workshop, he would become much richer.

And the transition from "masters" to managers is the most obvious and common way on the other side of the glass. A good specialist gets more than a mediocre manager, but a proud junior who lifts his nose in front of another “manager” in some Euroset puts himself into a trap: top managers will always earn more specialists, and owners and partners will get more employees.

And if you decide to take this step, then the SEM position will be an excellent testing platform. Unlike the team lead, which in this case only hurts: in the human orchestra mode, constantly distracting yourself with the code and related tasks, it will be easy to bother yourself - and it’s hard to impartially evaluate your real potential for moving into a caste of managers.

Software Engineering Manager is a place where developers come to die in order to grow from their own ashes as leaders. Further, however, the chain in many companies is not too long. In subsidiary companies of ESW Capital holding, for example, SEM report to VP, who, in turn, report directly to the CEO of the company. But what are the scale of these steps: from the salary of the "senior", say, $ 5K per month - to $ 8K from "seme" in the companies of our customers. And at the next stage, the already notorious million rubles a month at the position of VP. It can be noted that this growth is also not unlimited, but your future glass ceilings will already be glass domes. And the view from there opens up completely different.

Another caveat is that the salaries accepted in the companies of the ESW Capital group, which includes and, in fact, Crossover, differ from the market, and for the better. $ 8000 is a positive fluctuation in our case. On average, Software Engineering Manager in capitals can expect to earn between $ 2500-3500 per month. In general, you do not need to choose between breakfast and a metro ride. So the game is still worth the candle - many developers would have to try yourself as a manager.

Glass Ceiling Tournament

You can start right on March 10, registering for participation in the Hiring Tournament organized by us. Let the “tournament” in the title not bother you - this is not a game and we do not allocate places among those who have come, but evaluate the results of the participants on an objective scale — theoretically, almost all and no one can be above the set bar.

The tournament will be held and experience will be shared locally by existing SEMs working for ESW Capital. And on Skype, Aurea Software’s VP of Engineering will communicate with the participants. SlavaKulakov , which, we hope, will be able to join the co-author of this post Maxim Vinnikov. We consider it very important for specialists of this level to participate in Hiring Days - because we believe that the most valuable knowledge about your future work is not how to get on it, but how not to get stuck on it. In this sense, our VP definitely has something to share with SEM, both future and current, if any of them suddenly set their sights on changing their jobs now. Well, Habr users have the privilege to ask them questions in the comments throughout the week. As usual, our colleagues will answer whenever possible, but promise to devote time to at least the most interesting questions.