Stand with Ukraine

Stand with Ukraine logo
Quick donation

Чого ми чекаємо від трейні, джуніора, мідла, сеньйора й тімліда

ITOMYCH STUDIO
October 22, 2021
7 min to read
Чого ми че�каємо від трейні, джуніора, мідла, сеньйора й тімліда

Запит на фахового IT-спеціаліста на українському ринку перевищує кількість розробників. Ми в ITOMYCH STUDIO також це відчуваємо: хороший фахівець — це «золотий снітч», і хто його зловить, майже завжди перемагає.

Але хороший — не означає, що всім потрібні лише сеньйори. В ITOMYCH STUDIO майже завжди є місця в команді й мідлу, і джуніору, і трейні.

Щоби простіше орієнтуватися, ми підсумували, чого ж ми чекаємо від профі різних рівнів.

Чого ми чекаємо від трейні

Зараз на сайті ITOMYCH STUDIO є 2 вакансії, куди ми шукаємо людей практично без комерційного досвіду роботи — потрібне лише розуміння технологій. У них є 3 місяці, щоби під керівництвом досвідченого ментора дорости до рівня джуніора.

Для позиції трейні є 2 основні вимоги:

  • Рівень англійської не нижче Pre-Intermediate. Якщо на посаду (не лише трейні) приходить непоганий технічний фахівець, але рівень англійської трохи недотягує, ми допомагаємо — є корпоративні курси англійської.
  • Розуміння обраного інструменту і вміння ним користуватися. Наприклад, для Trainee iOS Engineer варто знати основи Swift і XCode, що таке залежності, persistence, як зробити простий UI з кодом, як користуватися Git тощо.

Перспективні кандидати часто можуть показати сертифікати про завершення професійних курсів. Вони легко відповідають на теоретичні питання й мають хоча б 1 волонтерський або пет-проєкт у резюме. Таких кандидатів ми беремо майже одразу.

Чого ми чекаємо від джуніора

У нас завжди відкрито кілька джуніорських позицій. Команда постійно розширюється, бо з’являються нові проєкти.

Джуніор виконує завдання у своїй предметній сфері. Він отримує таски в термінах розробки:

  • написати модуль;
  • написати клас;
  • написати метод.

Джуніору не потрібно виконувати бізнес-завдання. Наприклад, нам потрібно дати можливість користувачам додатку поширювати квитанцію про оплату в інших додатках. Це бізнес-завдання. Як це реалізувати, джуніор ще не знає. Але йому й не треба — для таких рішень є тімлід і проєкт-менеджер.

Усе ж ми очікуємо, що джуніор проявляє живу зацікавленість до проєкту. Так у нього будуть сили та наснага вчитися новому та швидко розвиватися. А вчитися є чому: важливо знати й фундаментальні теми (наприклад, математика, логіка), і технічні. Скажімо, робробник-джуніор на Node.js мусить знати Node, Express.JS, SQL та noSQL DB.

Розробники-джуніори зазвичай мають досвід роботи від 0 до 1,5 років, можуть виправляти невеликі помилки коду, працювати над внутрішніми інструментами та функціями «на стороні адміністратора». Вони також вправляються з визначеними функціями — тими, загальну концепцію яких раніше окреслили більш досвідчені розробники. Джуніори можуть брати участь у початковому плануванні проєкту. Компетентний джуніор, як правило, зосереджений на бекенді та загальному ході проєкту.

У наших командах джуніор може перейти на рівень мідла протягом року-півтора, якщо він впорається зі своїми завданнями.

Чого ми чекаємо від мідла

Відкриті мідл-позиції в ITOMYCH STUDIO, мабуть, найчисленніші. Фахівці цього рівня потрібні майже в усіх наших командах. Мідл виконує таски в межах предметної сфери:

  • декомпозувати завдання;
  • написати структуру свого коду;
  • побудувати специфікації класів для реалізації, методи та їх імплементацію.

Якщо порівняти з джуніором, мідл має більше автономності в роботі. Беручи приклад із квитанцією: мідл уже має розуміти, які рішення можуть бути, або ж принаймні знає, які питання поставити ліду, щоби знайти шляхи реалізації. Адже в мідла вже є багаж досвіду, він уже вирішував схожі завдання. Звісно, цілком нові завдання без обговорення та брейншторму йому можуть бути й не до снаги — це нормально.

Розробники-мідли зазвичай мають досвід роботи від 1,5 до 4 років, працювали на кількох проєктах, поодинці та в команді, компетентні в кількох етапах життєвого циклу розробки. Крім того, вони самостійно вміють налаштовувати середовище, можуть наставляти молодших розробників команди. Подеколи мідлу також потрібна підтримка ментора.

Чого ми чекаємо від сеньйора

Сеньйор-розробник здатний вирішити будь-яке завдання бізнесу й розмовляти з клієнтом однією мовою. Якщо ти це вмієш, то вже не так важливо, чи знаєш ти якийсь фреймворк, чи ні. Дуже важливо підкреслити, що 10 років досвіду в розробці не зроблять тебе сеньйором. Номінальний стаж на цей раз не позначається на рівні. Головне — розуміння технології й завдань бізнесу.

Інженер-сеньйор розуміє проєкт у цілому, вміє будувати й розширяти архітектуру проєкту, декомпозує завдання будь-якого плану та масштабу. У «правильного» сеньйора багато років досвіду не однотипної, а різнопланової розробки. Це дозволяє йому бути технічно розвиненим у багатьох аспектах і застосовувати ці знання, аби підходити до розробки проєкту максимально правильно й обмірковано.

Хоча стаж тут не головне, зазвичай у сеньйора 5–8 років досвіду розробки. Він здатен розвивати та наставляти мідл-розробників у команді, може експериментувати, перевіряти припущення. Сеньйор може взяти на себе повний процес розробки, розгортання та запуску, він складає технічні характеристики та технічні завдання, визначає початкові ризики у роботі над великими проєктами, відповідає за менторство джуніорських і мідл-команд, регулярно рев’ювить код менш досвідчених колег.

Чого ми чекаємо від тімліда

Коли сеньйор виростає зі своїх завдань, логічним розвитком є позиція тімліда. На цьому рівні в розробника величезна внутрішня тяга до навчання та саморозвитку як менеджера. Він має знання та досвід у всіх аспектах програмної інженерії: розробка, архітектура, дизайн, інтеграція, тестування тощо.

Тімлід може проводити технічні співбесіди з кандидатами, генерувати ідеї та рішення бізнес-завдань, планувати роботу всієї команди або відділу. Тімлід створює та впроваджує проєкти з нуля. Навички розробки дають йому змогу працювати над бекендом і фронтендом, із мобільними додатками та веб застосунками.

Він уже не пише код і не думає над тим, як реалізувати ту чи іншу функцію. Натомість тімлід розподіляє навантаження на команду, стежить за ходом проєкту й бере на себе відповідальність за цілий продукт.

Уявіть таку ситуацію: клієнту потрібен мобільний додаток. Беремося за роботу: сеньйор планує архітектуру, мідл пише код, а джуніор прикручує кнопки в інтерфейсах. Якийсь час замовник бачить, що кожен займається своєю справою. Та цілісного продукту немає: є окремі частини, вони працюють, але не разом.

Завдання тімліда полягає в тому, щоби таких ситуацій не виникало. Для цього він керує командою та ходом проєкту:

  • зустрічається із замовником і обговорює деталі проєкту;
  • сам оцінює хід і терміни кожного етапу робіт;
  • розуміє, що потрібно зробити насамперед, а від чого наразі можна відмовитися;
  • розбиває завдання на етапи, а етапи — на спринти;
  • розподіляє навантаження між розробниками;
  • стежить за тим, як просуваються завдання;
  • оцінює код і дає рекомендації;
  • щоби не втрачати кваліфікацію — теж пише частину коду, якщо в нього є на це час, але це не обов’язково;
  • погоджує із замовником виконану роботу;
  • працює дипломатом і стежить за атмосферою в колективі.

Але не з кожного сеньйора вийде хороший тімлід. Суть в управлінських навичках, які є не в кожного розробника. Навіть якщо взяти першокласного сеньйора, далеко не факт, що він буде так само ефективно управляти всією командою, як пише свій код.

Окрім конкретної сфери програмування, тімлід мусить уміти:

  • планувати завдання;
  • приймати управлінські рішення;
  • наймати нових програмістів;
  • вести переговори й шукати найкраще рішення;
  • писати технічну документацію;
  • робити код-рев’ю;
  • розв’язувати конфлікти з замовником і всередині команди;
  • контролювати хід проєкту й відповідати за нього.

А далі все залежить від того, наскільки тімліду подобаються функції менеджера. Якщо йому більше подобається керувати, ніж програмувати, то з нього може вийти хороший продакт-менеджер. Про те, хто це такий — наступного разу.

Якщо тебе зацікавив такий розвиток, заходь на сторінку з відкритими позиціями в команді. Цілком можливо, що там є місце якраз для тебе.