Кто такой сеньор и что он делает (он же senior)

Программист, который умеет всё.

Кто такой сеньор и что он делает (он же senior)

Послушать аудиоверсию этой статьи (6 минут):

Мы тут потихоньку рассказываем об уровнях программистов: был рассказ о джуниоре, потом о мидле, наконец — о сеньоре.

Кратко:

  • Джун — начинающий, вроде стажёра, подай-принеси, напиши документацию, вот тебе три простые задачки, потом батьке покажешь.
  • Мидл — боевая машина, ест за троих, работает за семерых.
  • Сеньор — помидор (вы здесь).

Чем senior-разработчик отличается от всех остальных

Сеньор — это программист, который может всё. Он в силах написать нужный код и решить задачу оптимальным способом. Но это не самое важное. Важнее всего то, что он полностью понимает устройство проекта, все его связи, тонкости и нюансы.

Ключевое качество сеньора — умение работать полностью автономно. Это значит, что задача, которая ему поручена, будет сделана, даже если никто пока не представляет, как именно. Для этого сеньор:

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

Как им стать

Обычно говорят про 5–10 лет работы мидлом, но это ерунда. Настоящими сеньорами становятся не по выслуге лет (хотя иногда бывает и такое), а по способности решать сложные задачи и брать на себя ответственность за ход проекта.

Если говорить о требованиях, которые обычно предъявляют к сеньорам, то вот они:

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

А ещё он знает про технический долг и про то, что с ним делать. Про этот философский аспект работы программистом мы расскажем отдельно.

Зачем нужны senior-разработчики

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

Помогать другим программистам. Когда у джуниоров возникают вопросы, они идут к мидлам. Когда вопросы у мидлов — они идут к сеньорам.

Думать на шаг вперёд. Джуниоры делают техническую работу, мидлы пишут основной код, но именно сеньоры понимают, зачем это нужно и что будет на следующем этапе. Благодаря такому подходу новые возможности программы не противоречат старому коду.

Сколько платят senior-разработчикам

Мы посмотрели зарплаты сеньоров разных направлений на Хабр Карьере за второе полугодие 2019 года:

Это в полтора раза выше, чем у мидлов.

Что дальше

Может показаться, что сеньор — последняя ступень в развитии программиста. Но на самом деле из них получаются отличные тимлиды, архитекторы или технические эксперты. Всё дело в специализации, которую выберет сеньор, когда захочет профессионального роста.

Об этом — в новых статьях.

Обложка:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Маша Климентьева

Вам может быть интересно
Для чего нужен язык C#
Для чего нужен язык C#

Как в Микрософте сделали свой язык программирования. И зачем.

easy
Подборка из 8 лучших бесплатных хостингов
Подборка из 8 лучших бесплатных хостингов

Поднимайте сайт, закачивайте файлы и программируйте, что вам нужно. Это бесплатно.

medium
Делаем свой текстовый редактор с автосохранением
Делаем свой текстовый редактор с автосохранением

Это не так сложно, как звучит.

medium
Квадратный корень, который ускорил игры в сто раз
Квадратный корень, который ускорил игры в сто раз

Математика, которая дала нам современные игры

medium
Как разработчику наконец-то зафиналить зависшую задачу
Как разработчику наконец-то зафиналить зависшую задачу

Когда очень надо упереться

easy
Что такое MVP и чем он отличается от прототипа
Что такое MVP и чем он отличается от прототипа

MVP — это от слова «минимал», детка

easy
Зачем нужен Scala?
Зачем нужен Scala?

Разбираем, почему это не самый популярный язык.

easy
Как автоматизировать сложные штуки на компьютере
Как автоматизировать сложные штуки на компьютере

Учимся писать сценарии для вашей операционки

medium
Что нужно, чтобы создать свой веб-браузер
Что нужно, чтобы создать свой веб-браузер

Статья для тех, кому действительно интересно

easy
easy