Как стать сеньором
Начал смотреть свеженькие доклады из HighLoad 2024 и наткнулся на выступление Василия Романова с простым названием «Как стать сеньором». Решил выделить основные моменты. Некоторые вещи, конечно, очевидны и так же многое зависит от компании, но поинты считаю полезные и применимы для большинста.
Василий выделяет три области, где можно встретить сеньора:
- Первая — системная разработка. Это про харды как ключевой фактор сеньорства: алгоритмы, базы данных, операционки, сети. Здесь сеньору нужно уметь хорошо кодить и без глубоких знаний Computer Science не обойтись.
- Вторая — инфраструктура. Тут фокус сеньора на архитектуре, систем-дизайне и взаимодействии. Здесь уже не обойтись без общения: нужно уметь объяснять, договариваться.
- Третья — продуктовая разработка. Здесь работа в целом строится вокруг коммуникации и понимании продукта. Тут пишут кучу CRUD’ов и за ними стоит много таких задач как: учёт требований пользователей, взаимодействие с продактами, аналитиками и дизайнерами и т.д. Нужно очень много общаться и сеньору надо быть причиной движения в коллективе.
Василий также выделил антипаттерны, которые мешают стать сеньором:
- Антипаттерн “интерес”. Например, желание писать только на Go или только с высокими нагрузками. Докладчик приводит метафору с врачом-реаниматологом. Врач не выбирает пациентов или интересные случаи. Его задача — работать с тем, что есть и спасать жизни. Сеньор действует так же: он решает задачи бизнеса, даже если они не кажутся увлекательными.
- Антипаттерн “понятность”. Все понятные задачи с четким ТЗ делают джуны и мидлы. Сеньору достается всякая “мутная фигня”. Чем выше грейд, тем больше неопределенности.
- Антипаттерн “нытьё”. Например, вместо жалоб на отсутствие документации или плохую систему сеньор просто идёт и исправляет ситуацию.
- Антипаттерн “сложные штуки”. Например, внедрение k8s или разработка своей БД, когда можно использовать готовые решения.
Как прокачаться? Чтобы стать сеньором, нужно развивать себя в нескольких направлениях.
- Во-первых, брать сложные, непонятные задачи, за которые никто не хочет браться. Их Романов называет «жопой» (см. теория жоп) - ключевой фактор роста. Это могут быть баги, дежурства, инциденты и любого рода беспорядок. Такие задачи неприятны, но именно они учат справляться с неопределённостью, разбираться в системе целиком и брать на себя ответственность за хаос.
- Во-вторых, делиться знаниями — прокачка через “синтез”. Написание документации, постов, статей, чтение лекций помогают не только команде, но и самому сеньору — объясняя что-то другим, вы глубже понимаете материал и включаете другой режим мышления.
- В-третьих, социализироваться. Многие вопросы решаются быстрее, если вы знаете, к кому обратиться. Социализация помогает решать более широкий спектр задач.
Итого, сеньор — это не тот, кто просто долго работает или знает миллион фреймворков. Это человек, который берёт на себя ответственность и умеет решать непонятные задачи. Если джунам и мидлам дают тикеты с понятным ТЗ, то сеньору чаще всего говорят: «Там что-то сломалось, иди разбирайся.»