Хто такий сеньйор в ІТ-сфері та що потрібно, щоб ним стати?
Розповідаємо про це в нашій статті.
Для початку давайте розберемось, що точно не є визначальним фактором у роботі сеньйора.
Попри те, що ви бачите в 95% оголошень про вакансії, тайтл Senior Developer не має жорсткої прив'язки до стажу роботи.
Як правило, чим довше людина працює, тим більше у неї досвіду. У багатьох компаніях при визначенні рівня спеціаліста орієнтуються на стаж. Але кількість відпрацьованих років - це не єдине, що визначає сеньйора.
Взагалі проблема зв'язку досвіду зі стажем досить поширена в сфері розробки і часто призводить до невідповідності між завищеними очікуваннями і низькими результатами.
Що ж робить розробника сеньйором?
Характеристики, які є визначальними для розробників-сеньйорів:
- досвід
- лідерські якості
- наставництво
- технічні знання і вміння
Звичайно, всі люди різні, і якісь риси у окремо взятого розробника можуть проявлятися в більшій мірі, ніж інші. Але всі разом вони визначають, наскільки ефективно цей розробник може допомогти команді рости.
Розглянемо кожен пункт докладніше.
Досвід
Досвід роботи зазвичай обчислюється в роках стажу, але це не дуже точний метод.
Досвід розробників так само унікальний, як і вони самі. Один розробник міг провести п'ять років на позиції, де йому доводилося інтенсивно працювати і щодня вирішувати складні технічні завдання. А інший міг всі п'ять років проводити час в невеликій компанії, де його єдиним обов'язком було оновлювати сайт раз в тиждень.
І останній варіант абсолютно не поганий! Зрештою, всі ми вибираємо власний шлях і відповідний для нас баланс роботи та особистого життя. Але не можна говорити, що п'ять років стажу в першому і другому випадку рівнозначні.
Лідерство
У старших розробників схильність до лідерства з'являється природним чином. Це не означає, що ви повинні неодмінно бути техлідом або саме за вами буде останнє слово при прийнятті рішень. Просто ви повинні бути здатні (хоча б на базовому рівні) штовхати проект вперед.
Кожен проект або окремий функціонал зазвичай мають цілий список історій (stories), які потрібно обробити, щоб завершити цей проект. І кожна така історія - окремий крок на шляху до великої мети.
Але якщо ніхто в команді не розуміє, яким чином всі ці окремі маленькі кроки ведуть до великої мети, у команди з'являються проблеми. Розробник-сеньйор повинен вміти бачити, яке місце кожного шматочка в загальній картині. Він повинен розуміти, чому кожна окрема історія написана з певними критеріями приймання. І навіть якщо сеньйор цього не знає, він повинен знати, як знайти відповідь і як донести її до команди.
Пряма допомога менш досвідченим членам команди
Коли ви здатні допомогти початківцям або просто менш досвідченим членам команди, такий крок буде цілком природним. Сеньйор повинен вміти постійно уявляти собі проект в цілому і розуміти, яке місце в цьому проекті займають різні історії.
Тому на цьому етапі потрібно допомагати колегам та направляти їх у вірному напрямку, навчитися розуміти, коли у них виникнуть складнощі з чим-небудь та заохочувати їх задавати запитання.
Наставництво
Найчастіше для розробника зручніше просто займатися своєю справою, не відволікаючись на те, чим займаються інші. Але чи принесе такий підхід користь команді?
Сприяйте розвитку товаришів по команді
Ви можете бути чудовим розробником, але якщо ви все робите самі і не допомагаєте іншим зростати, це лише уповільнює просування команди. Люди часто витрачають багато часу, намагаючись знайти помилку або придумати рішення самостійно, в той час як їм істотно допомогло б, якби хтось із колег теж глянув на їх код.
Егоїзм погано позначається і на моральному дусі команди. Нікому не подобається відчувати себе самотньо, а для джуніорів це тим більш прикро. Сфера розробки - це величезний лякаючий світ. Якщо ви будете хоч трохи направляти колег, це допоможе їм працювати більш продуктивно. Крім того, таким чином ви зробите свій внесок у становлення більш щасливого і менш стресового оточення.
Поширення знань
У багатьох командах виникають складнощі з обміном знаннями між колегами. Всі ми сподіваємося, що якимось чином цю проблему можна вирішити, але за фактом вона часто залишається невирішеною. Що ж робити?
Сеньйори беруть собі за правило ділитися тим, що знають. Представляючи колегам свою роботу, вони природним чином покращують і власні знання. А це корисно і сеньйорам, і тим, хто вперше відкрив редактор коду.
Здатність швидко просуватися вперед
Від розробників-сеньйорів очікується, що вони швидше почнуть ефективно працювати з будь-чим, ніж джуніори.
Зрозуміло, що не розумно чекати, що кожен сеньйор неодмінно розбирається у всьому. Тобто, не потрібно вважати експерта по Ruby менше гідним тайтла сеньйора, якщо він не знає JavaScript. Але все ж від сеньйора очікується, що він вміє застосовувати свої знання для вивчення іншої мови і написання коду на іншій мові.