Нові спеціалісти та делегування: як створювати ефективні команди з розроблення. Розповідає CTO Uklon
Запорукою успішного проєкту є сильна команда. Розроблення програмного забезпечення — це складний процес, який потребує спілкування та організації, не кажучи вже про правильний підбір команди. Без ретельно підібраних спеціалістів завершити проєкт вчасно та якісно стає майже неможливим завданням. Однак, навіть маючи професійну команду розробників, брак комунікації чи організації може вплинути на результат.
Я Віталій Дятленко, співзасновник та СТО української техкомпанії Uklon. У цій колонці розповім про ефективні стратегії формування та розвитку команди, методи управління проєктами та налаштування робочих процесів.
Для створення ефективної команди розробників програмного забезпечення важливо залучати правильних людей. Наразі ми активно працюємо над розширенням проєкту delivery, що потребує додаткових зусиль від програмного розроблення. На мою думку, для ефективної роботи команди має бути чітко побудована технічна та продуктова вертикалі.
Від поставлених на рік цілей та ідей буде залежати пул завдань технічних менеджерів та product owners. На етапі запуску продукту мають бути чіткі домовленості між усіма членами команди. Крім того, варто додатково деталізувати план, ключові метрики, аналітику, прогнози та кількість спеціалістів, потрібних для виконання поставлених завдань.
Про шлях Uklon, факапи та досвід
На початку, коли команда була значно меншою, дуже багато речей доводилося робити самостійно. Через це виникали проблеми. Ти займаєшся і розробкою, і аналітикою, і маркетингом, і бізнес-операціями. З досвідом та зростанням кількості завдань ми зрозуміли, що для того, аби рухатися далі та розвиватися, необхідно віддавати частину завдань експертам у тій чи іншій ніші.
Варто пам’ятати, що на цьому етапі не обійдеться без помилок. Колись ми співпрацювали з менеджером контекстної реклами. Він провів аналітику, зробив нам певну прогностику та сказав, що, враховуючи нашу нішу, ми ніколи не отримаємо понад 2000 замовлень на місяць. Через певний час ми залучили спеціаліста з тієї самої ніші для кросаналізу, який зробив аудит та порадив змінити спеціаліста. Зробивши це, ми побачили якісні зміни і почали значно перевершувати озвучені ліміти. Бо, як виявилося, ліміти лише у головах.
Також у команді зараз ми жартівливо використовуємо таке поняття, як індекс Монатіка, концерт якого свого часу поклав наш сервіс. Нині за цим індексом ми визначаємо рівень навантаженості і те, що впливає на те, як ми працюємо із завданнями, відстежуємо зміни в архітектурі, структурі продукту та навіть у самій команді — все заточено на кількісні та якісні показники роботи продукту. Варто пам’ятати, що побудова процесів, делегування та зміни — це неперервний процес.
Підписуйтеся на наші соцмережі
Про роботу команди під час війни
Щодо самих структурних процесів, то вони наразі є досить сталими, а тому залишилися незмінними. Втім, значно змінилася робота команди. Наразі в Uklon понад пів тисячі спеціалістів, у команді розробників приблизно 200 людей, і навіть під час війни ми продовжуємо працювати над її збільшенням.
З початком війни змінилася географія наших експертів: більшість працює з інших міст чи навіть країн, а тому багато зустрічей перенесли в онлайн. Крім того, у нас наразі відсутні тимбілдинги чи корпоративи у звичному форматі (всі ресурси спрямовані на здобуття нашої перемоги), та попри це команди продовжують іноді збиратися окремо.
Постійно працювати онлайн — важко. Надто це стосується нових спеціалістів. Раніше ми з певною періодичністю привозили тих, хто жив в інших містах, у головний офіс, щоб познайомитися, адже що краще ти знаєш команду, то легше тобі з нею працюється. З війною це стало важче, але сподіваюся, що скоро ми зможемо повернутися до попереднього формату, адже це несе в собі багато користі.
Про залучення спеціалістів зовні та ефективність
У відділі розроблення ми покладаємося насамперед на наших власних експертів. Наша рекрутинг-команда іноді залучає фрилансерів для пошуку людей. Крім того, є певні внутрішні процеси, для яких ми залучаємо спеціалістів ззовні, наприклад, у сфері аудиту. Це дозволяє дати свіжу оцінку наявним процесам і продукту та вчасно вирішувати наявні проблеми.
Крім того, всі члени нашої команди керуються принципом time to market, що характеризує час, зайнятий від отримання ідеї до її реалізації. Кожна команда робить свій внесок до загального розвитку компанії — кількості замовлень та клієнтів, долі ринку та інших ключових цілей. Зважаючи на поставлені задачі, відділ розробки розраховує потенційне навантаження і цільові метрики. На цьому етапі важлива синергія, адже за її відсутності деградують загальні показники.
Про безпеку даних в Uklon
Один із ключових показників для нашого сервісу — це час подачі авто. Ми дуже багато інвестуємо в розробку та покращення різноманітних алгоритмів, щоб “правильна машина” подавалася клієнту в якомога коротший час. Так водій зможе заробити максимально, а клієнт буде чекати мінімум часу.
Крім того, ми турбуємось про захист персональних даних клієнтів і це ставить перед командою особливі виклики. У нас є така процедура, як опрацювання ініціативи. На цьому етапі в нас завжди залучені фахівці з відділу безпеки, які вносять рекомендації, на що звернути увагу і що змінити, щоб усі дані наших клієнтів не могли бути скомпрометованими.
Усе, що стосується паролів, ми зберігаємо, звісно, в зашифрованому вигляді. Якщо ж говорити про платіжні картки, то ми не зберігаємо дані карток, надаємо можливість оплати через АpplePay, Google Pay, де взагалі не фігурують дані карток у явному вигляді. Ми використовуємо акредитованих і сертифікованих фінансових провайдерів, які мають ліцензію на законне право зберігати та обробляти дані карток.
Поради для побудови ефективної команди
Розробка програмного забезпечення вимагає широкого кола різних експертів, які будуть відповідати за різні завдання. При цьому недостатньо просто заповнити всі необхідні ролі у вашій команді. Важливо також постійно знаходити нові можливості для навчання, залученості та розширення можливостей тіммемберів. Це допоможе їм злагоджено працювати разом і розробляти програмне забезпечення, яке відповідає вимогам вашого бізнесу.
З нашого досвіду хочу поділитися кількома стратегіями, які допоможуть вам отримати найкращі результати:
- Розвивайте проактивних командних гравців. Завжди шукайте спеціалістів, які мають активний підхід до роботи. Команда має бути самодостатньою. Проактивні інженери самостійно виявляють і розв'язують проблеми. Вони розуміють, що розробка програмного забезпечення це складний командний процес, де потрібно взяти на себе ініціативу і відповідальність, щоб гарантувати, що розробка і поставка ідей будуть завершені вчасно і якісно.
- Заохочуйте членів команди бути проактивними, даючи їм свободу приймати рішення, коли це необхідно, а також забезпечуючи їм доступ до всіх необхідних ресурсів для розв'язання робочих задач.
- Окресліть чіткі обов’язки для кожного члена команди. Збираючи команду, ви повинні чітко визначити цілі та відповідальність для кожної окремої ролі. Це зменшить плутанину серед членів команди та забезпечить ефективне виконання задач.
- Підбирайте людей, які захоплюються своєю роботою та шукають до неї нові підходи. Шукайте інженерів, які постійно навчаються і розвиваються, займаються своїми власними проєктами. Так, перед нашими розробниками часто стоїть багато нетривіальних завдань, що вимагають для їх вирішення використання чимало складної математики та великого спектра алгоритмів. Наразі ми активно поліпшуємо наші внутрішні картографічні продукти та сервіси, які краще розподілятимуть замовлення — як для райд-хейлінгу, так і широкого спектра доставки.
Для нашої компанії технології — це можливість постійно змінюватись і розвиватись. Але головна цінність — це люди. Варто оточувати себе розумними людьми, розумнішими за тебе. Тоді шлях до мети обов’язково стане легшим та цікавішим.