КАРЬЕРНЫЙ РОСТ
Наша концептуальная схема карьерного роста разработана для того, чтобы помочь нашим инженерам программного обеспечения знать, что от них ожидается, и что им надо сделать, чтобы продвинуть свою карьеру в Shellpea.
Карьерная лестница
В Shellpea мы предоставляем линейное развитие, начиная с уровня стажера (без опыта коммерческой разработки) до уровня старшего Инженера-программиста. После этого происходит разветвление либо на менеджерскую, либо на техническую тропу.

Тропы не жесткие. Можно, например, пойти по менеджерской тропе, и если окажется, что это не твоё, тогда перейти на техническую.

Соотвествие позиций наименованиям в других компаниях
В нашей индустрии нет общепринятых стандартов, а ещё некоторые лепят себе титул "Старший" (Senior) запросто так.

Но, в среднем, примерно такое соответствие:

  • Инженер-программист 1 => Junior
  • Инженер-программист 2 => Middle
Роли
Уровень 1 - Стажирующийся Инженер-программист

Стажирующийся – это многообещающий Инженер-программист, с любым опытом, от "не имеющий никакого опыта коммерческой разработки" до "я делал значительный вклад в некоторые проекты".

Цель на данном уровне – развить навыки, необходимые для того, чтобы присоединиться к проекту. Это развитие происходит за счёт самообучения, внутренних курсов и подсобничества другим инженерам.

Этот этап длится в среднем 6 месяцев (зависит от начальных навыков). Ожидается, что стажирующийся находится в офисе в рабочее время 20-30 часов в неделю.


Уровень 2 - Инженер-программист 1

Инженер-программист 1 имеет достаточно навыков, чтобы вносить значимый вклад в проект.

У него есть базовое знание языка и может выдавать базовый код. Он следует процессам проекта и ведёт себя профессионально. Ему нужно значительное количество указаний и он стремиться изучить что-то новое при каждой возможности.

Инженер-программист 1 в Shellpea должен стремиться стать Инженером-программистом 2 менее чем за 2 года.
Уровень 3 - Инженер-программист 2

Инженер-программист 2 в Shellpea имеет широкий спектр навыков и ему доверяется производить качественный код для больших задач в команде проекта.

Он чувствует себя уверенно со своими основными языками программирования и фреймвёрками и производит код средней сложности, используя современные подходы к разработке.

Он уверенно общается с коллегами и заказчиками.

Он всё ещё изучает техническую сторону, чтобы углубиться в знаниях и набирается уверенности в распространении своих знаний, чтобы помогать другим.
Уровень 4 - Старший инженер-программист 1

Старший инженер-программист 1 обладает сильными навыками в языках, которыми он пользуется, и может доставлять сложные задачи end-to-end, всегда следуя наилучшим практикам, с минимальным сторонним наблюдением.

У него сильно развита компетенция по целевым фреймвёркам (но не ограничена ими) и он может вести других в использовании этих фреймвёрков.

Он авторитетен по технической части для младших разработчиков, может быть полностью ответственен за небольшие проекты или некоторые части больших систем.

Он постоянно поддерживает других членов команды через код-ревью, парное программирование и применение Agile практик.

Они обладают хорошим здравомыслием и могут здраво судить о конкретных бизнес областях, могут чётко формулировать свои мысли и предоставлять экспертное мнение Клиенту.
Уровень 5 - Старший инженер-программист 2

Старший инженер-программист 2 обладает глубокими и широкими техническими знаниями, с опытом коммерческой разработки на нескольких языках, платформах и фреймвёрках.

They are often seen as the delivery powerhouses on projects where they support TTLs in technical decision making, especially around software architecture.

Their breadth of knowledge makes them exceptional technical problem solvers and core contributors to the community through guidelines and communities of practice.

They are well-respected for their technical abilities and authority at Shellpea.


Уровень 5 (менеджерский) - Тимлид

A Technical Team Lead is focused primarily on the management of a team of engineers on a project.

They own a project from a technical perspective throughout its lifecycle, from initial discovery through to setup, implementation and launch.

They are proven senior engineers, but do not need to solve every technical challenge, they elicit solutions and ideas from their team and encourage everyone to contribute.

The amount of time that a Technical Team Lead spends hands-on coding varies, but not more than 50%.

They build strong relationships with clients, giving them technical direction and ensure clear communication throughout the engagement.

They are experienced with Agile project processes and able to lead in the place of their Project Manager, both internally and externally with clients.

They are capable of identifying risks to the project, and of flagging those risks to their Project Manager.
Уровень 6 - Главный инженер-программист

A Principal is a beacon of trusted technical knowledge within Shellpea.

They have transferable and also deep domain knowledge, often in multiple domains.

They exert technical influence across many projects, providing insight and guidance to TTLs and teams, helping inform on final solutions.

They are experienced architects and technical leaders, with wisdom to judge which of the latest tools and industry trends are worth exploring and relevant to Shellpea.

A Principal has a natural overlap with a Software Engineering Manager, but their primary focus is on technology and tools whereas the Software Engineering Manager's primary focus is on people and process.
Уровень 6 (менеджерский) - Менеджер разработки ПО

Software Engineering Managers are responsible for ensuring high engineering quality and consistency across projects through the management of Technical Team Leads, Senior Software Engineers and community-wide initiatives.

As well as being a line manager to support the growth of lead engineers, they hold them accountable to Shellpea principles and practices through being actively engaged with them and their projects. This could be through joining project ceremonies or more directly by pairing with team members.

They are flexible and proactive in working with Project Managers, Delivery Managers and the Resourcing department to assist in billable technical work, although they rarely apply their services in solo tasks, preferring to help and upskill the team at every opportunity instead.

A Software Engineering Manager works with a high degree of autonomy, taking initiatives from inception to completion, leveraging help from others as needed. Success is measured by adoption of their work by community and they will always focus on the value that their efforts bring.

They use their cross-project exposure to feedback to the engineering leadership team to guide understanding, improve consistency, develop and implement initiatives to improve the community for the future. A Software Engineering Manager has a natural overlap with a Principal Software Engineer, but their primary focus is on people and process whereas the Principal's primary focus is on technology and tools.


Made on
Tilda