Які soft skills потрібні розробнику? Думки з Яндекса

Скоро розпочнеться велика студентська олімпіада "Я професіонал". Вона вже кілька років проходить в онлайні та офлайні. Участь можуть брати студенти різних спеціальностей, включаючи технічні. Олімпіаду організують 26 провідних вишів: НДУ ВШЕ, МДУ, МДТУ, МФТІ, МІФІ, СПбДУ, Університет ІТМО та інші.

Яндекс – технічний партнер проекту. Для нас «Я – професіонал» вже другий рік поспіль стає гарним приводом поговорити про важливість софт-скілз (гнучких навичок) у роботі розробників та інших фахівців. Рік тому у нашому московському офісі пройшла зустріч для учасників олімпіади, присвячена софт-скілам. Говорив про них і керівник офісу розробки Яндекса в Новосибірську Сергій Бражник, виступаючи на тренінгу, що входить до програми «Я – професіонал». Сьогодні Сергій та ще двоє керівників в Яндексі — Ганна Федосова та Олег Мохов Olegbl4 — розкажуть для Хабра про гнучкі навички: які вони бувають, які з них потрібні розробнику, де їх отримувати і як їхня наявність позначається на зростанні в компанії.

Сергій Бражник, керівник офісу розробки у Новосибірську, директор з розвитку регіональних освітніх проектів

Які soft skills потрібні розробнику? Думки з Яндекса

— Для розробника важливі «4К»: критичне мислення, креативність, кооперація та комунікація. Прийнято вважати, що комунікація в цій професії — не важлива навичка, але якщо замислитися, вона необхідна для професійного зростання: треба вміти ставити запитання, слухати та чути співрозмовника, пояснювати свою точку зору та приймати чужу, говорити та домовлятися. Стажер може не вміти працювати в команді чи критично мислити — і це нормально, бо він ще не має такого бекграунду.

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

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

Допустимо, ви зрозуміли, яких навичок вам не вистачає. Це перший і найважливіший крок – усвідомити, що так, справді, у мене тут щось збоїть. Далі в ідеалі знайти наставника хоча б друга, у якого розвинені ці навички. За другом можна просто спостерігати. А якщо знайдете саме ментора, то він здатний дати поради та проконтролювати ваше зростання. Ментором може бути ваш колега (відразу зрозуміло, навіщо йому кураторство – ви працюєте на одну мету) або іноді навіть зовнішній експерт (але це зазвичай ваш знайомий, інакше його мотивація не зрозуміла). Книги, лекції, тренінги теж варіант, але так ви отримаєте тільки знання. Щоб знання перетворилося на навичку, потрібна регулярна практика.

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

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

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

Якщо все-таки робити хардкорного розробника керівником, то спочатку треба його підготувати і потім обов'язково ментувати перші три-шість місяців.

Ганна Федосова, керівник відділу навчання та розвитку

Які soft skills потрібні розробнику? Думки з Яндекса

— Важко скласти повний перелік навичок. Так, модель компетенцій Lominger включає 67 позицій. Усередині Яндекса ми ділимо навички на універсальні та ті, що потрібні керівникам.

Універсальні навички пов'язані з особистою ефективністю та з взаємодією з іншими. З особистою ефективністю пов'язані, наприклад, уміння керувати собою, своїм часом, робочими процесами, орієнтація на результат, критичне мислення, а також уміння вчитися. Сучасну економіку відрізняє від економіки тридцятирічної давності те, що ви навряд чи робитимете одне й те саме все життя. Швидше за все, щось зміниться, і треба бути готовим до цього.

Інша група універсальних навичок пов'язана із спілкуванням з іншими людьми. Ми вже не живемо за часів конвеєрного виробництва. Що б ви не робили, швидше за все, доведеться домовлятися і обговорювати це з іншими людьми. Процес комунікації у разі стає дуже важливий. У IT-компаніях, де обрій планування зовсім невеликий через постійний розвиток технологій, навіть технічним фахівцям доводиться приймати безліч колективних рішень, що народжуються в процесі обговорення. І співробітники не можуть дозволити переговорам зайти в глухий кут, інакше робота просто встане.

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

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

Можна застосовувати різні способи навчання. Так, досить важко навчитись командній роботі. У школі нас вчать працювати індивідуально, оцінки ставлять за особисті академічні успіхи. Але саме в команді люди вчаться брати на себе відповідальність, розподіляти між собою ролі, домовлятися про загальні цілі та результати. І часто виходить, що цьому доводиться вивчати вже у дорослому віці на роботі. Зараз у деяких школах практикується зокрема проектне навчання та спільне виконання завдань. Це має допомогти навчитися командній роботі з дитинства.

Як навчити дорослих людей вчитися та самостійно здобувати знання? Іноді допомагає досвід здобуття вищої освіти. У магістратурі та аспірантурі вчать розуміння того, що важливо, а що не має значення, де шукати релевантні знання. Але часто це доводиться освоювати вже у процесі роботи. Не дивно, що один із найпопулярніших курсів на Coursera називається Вчимося вчитися.

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

Слід пам'ятати, що в основі лежить мотивація. Якщо ви розумієте, що ви нелюдимі, але вам потрібно змінити це, наприклад, це важливо для команди, то з'являться і мотивація, і потреба змінюватися. Якщо по роботі вам не потрібно ні з ким спілкуватися, то навіщо переступати через себе?

Олег Мохов, керівник розробки HR-проектів та сервісу Яндекс.Контест, на якому проходить онлайн-частина олімпіади

Які soft skills потрібні розробнику? Думки з Яндекса

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

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

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

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

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

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

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

Джерело: habr.com

Додати коментар або відгук