Послушать аудиоверсию этой статьи (6 минут):
Мы тут потихоньку рассказываем об уровнях программистов: был рассказ о джуниоре, потом о мидле, наконец — о сеньоре.
Кратко:
- Джун — начинающий, вроде стажёра, подай-принеси, напиши документацию, вот тебе три простые задачки, потом батьке покажешь.
- Мидл — боевая машина, ест за троих, работает за семерых.
- Сеньор — помидор (вы здесь).
Чем senior-разработчик отличается от всех остальных
Сеньор — это программист, который может всё. Он в силах написать нужный код и решить задачу оптимальным способом. Но это не самое важное. Важнее всего то, что он полностью понимает устройство проекта, все его связи, тонкости и нюансы.
Ключевое качество сеньора — умение работать полностью автономно. Это значит, что задача, которая ему поручена, будет сделана, даже если никто пока не представляет, как именно. Для этого сеньор:
- сам распределит рабочее время,
- выяснит, для чего нужно решать эту задачу,
- проверит, есть ли уже у кого-то готовое решение,
- продумает логику проекта,
- найдёт нужные инструменты,
- даст задания мидлам и джуниорам,
- проконтролирует их выполнение,
- посмотрит, как сделать результат лучше,
- если для этого нужно написать код самому — сядет и напишет.
Как им стать
Обычно говорят про 5–10 лет работы мидлом, но это ерунда. Настоящими сеньорами становятся не по выслуге лет (хотя иногда бывает и такое), а по способности решать сложные задачи и брать на себя ответственность за ход проекта.
Если говорить о требованиях, которые обычно предъявляют к сеньорам, то вот они:
- полное владение всем рабочим стеком инструментов и технологий,
- умение вести проект с нуля,
- оптимальный подбор фреймворков для каждой задачи,
- умение вести переговоры и руководить командой, ставить задачи и принимать их, мотивировать людей и не быть говнюком,
- понимание бизнес-процессов, которые реализуются в проекте.
А ещё он знает про технический долг и про то, что с ним делать. Про этот философский аспект работы программистом мы расскажем отдельно.
Зачем нужны senior-разработчики
Вести проекты. Если компания берёт много заказов на разработку, то как минимум один сеньор должен вести этот проект от начала и до конца. Он планирует загрузку всей команды, разрабатывает архитектуру и следит за тем, чтобы код был понятен не только компьютеру, но и человеку.
Помогать другим программистам. Когда у джуниоров возникают вопросы, они идут к мидлам. Когда вопросы у мидлов — они идут к сеньорам.
Думать на шаг вперёд. Джуниоры делают техническую работу, мидлы пишут основной код, но именно сеньоры понимают, зачем это нужно и что будет на следующем этапе. Благодаря такому подходу новые возможности программы не противоречат старому коду.
Сколько платят senior-разработчикам
Мы посмотрели зарплаты сеньоров разных направлений на Хабр Карьере за второе полугодие 2019 года:
- фронтенд — 170 тысяч рублей,
- бэкенд — 168 тысяч,
- разработчик мобильных приложений — 180 тысяч,
- десктоп-разработчик — 128 тысяч,
- фулстек — 155 тысяч.
Это в полтора раза выше, чем у мидлов.
Что дальше
Может показаться, что сеньор — последняя ступень в развитии программиста. Но на самом деле из них получаются отличные тимлиды, архитекторы или технические эксперты. Всё дело в специализации, которую выберет сеньор, когда захочет профессионального роста.
Об этом — в новых статьях.