Окремий «велосипед» розвитку developer-а відмінний від FAANG

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

Питання взаємодії окремого developer-а в межах проекту/компанії з позиції росту кваліфікації самого розробника все частіше питання з розряду «включити мізки», аніж питання впровадження шаблонних/перевірених підходів (must have у вигляді самоосвіти/саморозвитку по дефолту завжди).

Матеріал я виклав на основі ідеологічних принципів, які закладав у спеціалізоване програмне забезпечення, створене в листопаді 2021 р. для своїх колег-developer-ів в компанії у якій реалізовую в тому числі роль teamlead-а.

Ця стаття — бажання отримати feedback співтовариства саме у питанні нюансів розвитку developer-а в рамках конкретної продуктової (передусім, але не принципово) компанії.

Для спрощення, можете образно вважати мене граючим тренером достатньо міцної футбольної команди, яка прагне завжди стабільно претендувати не самі значимі трофеї і при цьому не вважає вірним досягати поставлених цілей необмеженим кредитом в банку «Томсон енд Френч» за Катарською схемою ФК «Парі Сен-Жермен» чи Мадридського «Реалу». Якщо Вам є, що сказати як «футбольному» (читати ІТ) спеціалісту в питанні прокачки команди, буду вдячний за фахову думку.

Основні поняття:

0.1. «План Розвитку» (альтернативна назва — «Дорожня Карта» developer-а після «ребрендингу», так Компанія собі вирішила з 07.2022) — це план/карта куди developer-у рости/рухатися у своєму розвитку і в рамках яких саме конкретних технологій/проектів Компанії.

0.2. Спеціалізоване Програмне Забезпечення «Центр Компетенцій», покликане допомогти спроектувати та реалізувати «План Розвитку».

0.3. Дерево (матриця) Компетенцій — набір компетенцій (переважно технологічні skills) деревовидної структури імплементований в ПЗ «Центр Компетенцій» для проектування «Плану Розвитку» конкретного developer-а.

0.4. «техаудитор» — обособлена або комбіновані ролі по відношенню до developer-а:

0.4.1. техлід/провідний розробник у конкретному проекті developer-а;

0.4.2. роль, що робить постановку/приймання завдань у TFS (або аналогу) виходячи з ТЗ чи його окремих task-ів (у ролі обов’язкова наявність технічного background);

0.4.3. надає технічну консультативну допомогу у процесі реалізації окремого ТЗ/task-и чи здійснює code review;

0.4.4. затверджує pull request щодо розробок developer-а;

0.4.5. виконує роль, пов’язану з викладеним вище у цьому пункті, наприклад, ментор.

0.5. Аксіоми дають відповідь на ключові питання «Плану розвитку»: як і на основі чого проектується і яким чином реалізується «Плану розвитку» developer-а.

0.6. Програмне забезпечення «Центр Компетенцій» передусім створювалося як інструмент підтримки та розвитку developer-ів Компанії.

0.7. В ПЗ «Центр Компетенцій» не зашиті якісь ідеологічно приховані цілі, це виключно проект-подарунок більш досвідчених developer-ів Компанії всім іншим і ми маємо великі сподівання, що цей інструмент буде використано саме для підтримки/розвитку наших колег, а не якимось іншим чином.

Аксіоми проектування та реалізації Плану Розвитку developer-а:

1. Прокачування знань планується на 6 місяців, але кінцеві терміни залишаються завжди за developer-ом, якщо інше окремо не обумовено teamlead-ом або кимось з техаудиторів (наприклад, знання потрібні під конкретний проект на певну дату).

2. Developer, ознайомившись з деревом компетенцій і розуміючи можливості свого розвитку в рамках великої компанії, насамперед самостійно проектує п.1 (через «Шаблони ДК» в ПЗ «Центр Компетенцій») для подальшого обговорення та фіксації кінцевої редакції «Плану розвитку» teamlead-ом або погодженим з teamlead-ом техаудитором.

3. Базовими (пріоритетними) у ЦК «.Net/SQL» є компетенції: C#, MS SQL,. Net Core.

3.1. «Пріоритетні» — це ті, які найчастіше потрібні в проектах Компанії в межах сегменту «.Net/SQL».

3.2. До значимих також належать допоміжні компетенції, тісно пов’язані з базовими, наприклад: .Net Core + RabbitMQ, MS SQL + Service Broker і т.п. комбінації.

3.3. Чим вище рівень знань developer-а в базових/значимих компетенціях і чим більше проектів, в яких він ці базові компетенції застосував, тим ціннішим співробітником він є для Компанії.

3.4. Якість переважає над кількістю: немає сенсу прагнути набрати більше компетенцій/проектів, якщо будуть ситуації, коли компетенції застосовані в проекті з неналежною якістю (про це завжди знає техаудитор).

3.5. Невід’ємною складовою якості, а значить, цінності для Компанії практично завжди є комплексне архітектурне розуміння проекту, в якому Ви працюєте і Ваші навички алгоритмізації, тому не слід ігнорувати такі компетенції, як IO/UML-схеми процесів чи методики розробки ПЗ (Scrum, Kanban, Waterfall).

4. Оптимальна схема реалізації «Плану розвитку» — це конкретні результати Вашої роботи в Компанії та потенціал багажу знань і здатність їх якісно/оперативно застосувати в проектах з різними технологіями та масштабом.

4.1. В кінцевому підсумку цінність для Компанії складає Ваше вміння комунікувати та застосовувати власні професійні технологічні знання для оптимального та якісного розвитку функціоналу проекту або окремо взятої task-и.

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

4.2. Досить компетентно роботу/рівень developer-а можуть оцінити техаудитори, тому чим більше кваліфікованих техаудиторів в пулі developer-а, тим легше спроектувати збалансований «Плану розвитку» та пройти його реалізацію.

4.3. Часто варіантом реалізації «Плану розвитку» обирають проходження курсів по базовим/значимим компетенціям, які підтверджуються сертифікатами з подальшим використанням компетенцій в реальних проектах.

4.4. Значимим для «Плану розвитку» є менторство — технічний on-boarding нового учасника ІТ-Аутсорс рівня Junior або Middle (в окремих випадках Strong Middle).

4.5. Об’єктивним інструментом реалізації «Плану розвитку» є «шерінг знань» — структурована та зручна для використання фіксація на загально-доступних корпоративних ресурсах знань повторного практичного застосування у реальних проектах.

5. «План Розвитку» в ПЗ «Центр Компетенцій» — це наразі самобутня площадка взаємодії між Компанією та developer-ом і допоки її не замінили на якісь «потогонні» чи бездумно формалізовані системи «як у сусіда», варто скористатися можливістю отримати від цієї схеми максимальний потенціал для особистого росту та розвитку, тим паче значний пул проектів Компанії створює для цього ідеальні умови.

5.1. «План розвитку» насамперед орієнтований посилювати навички, отримані в попередніх ітераціях «Плану розвитку», якщо цілі попередніх ітерацій «Плану розвитку» в якийсь момент не були визнані хибними.

5.2. Можливе форсоване освоєння специфічної компетенції, якщо вона потрібна під конкретний проект і developer визначений як такий, що у зазначені строки має здібності та час освоїти специфічну компетенція на належному рівні якості її застосування у зазначеному проекті.

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

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному1
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

tl;dr
яснопонятно
В TemaBit Fozzy Group своё резюме я не отправляю :-)

в кінцевому результаті будь-де Вас будуть оцінювати при всіх об’єктивних чи суб’єктивних супутніх складових за Вашим результатом.
Якщо не готові до відповідальності за результат, то список компаній куди Вам не варто відправляти резюме значно більший, іншими словами, простіше скласти список-антогоніст, але не думаю, що Ви з того списку захочете відправляти комусь своє резюме уже по зовсім іншим причинам.
«Окремий велосипед» — це не інструмент оцінки (хоча, безумовно, і так заюзати зможуть при бажанні), а можливість підвищити прозорість у стосунках між роботодавцем і працівником (нагадаю, що мова йде не про компакт-команди на 5-10 людей). Навіть не досконалий план, як не крути, краще, коли плану взагалі не існує, тому що насправді в менеджменту завжди є план, просто про нього Ви можете дізнатися якось вельми несподівано у своїй наївності, вірячи, що ті, хто відкрито не декларують свої принципи роботи просто притримують їх, наприклад, на випадок коли Ви відправите їм Ваше резюме )

Усі ці знання та матріці, плани, карти потрібні щоб проходити інтервью в нову компанію, або не давати вам підвищення, на практиці, вне залежності від мастерінгу літокда та вікторини по теорії, всюди гівнокод різної ступіні «витримки», та менджмент котрий то на девопсів жлобьяться, то на хмари/сервери, то на тестувальників, а потім звалюють на кваліфікацію «формошльопів».

«Окремий велосипед» народився в тому числі і як реакція та бажання зменшити ризики в тому числі згаданих Вами кейсів.

Выглядит как типичный галерный план для повышения, где задрачивают конкретными технологиями, а не базой.

«галерний план»... ще й типовий... я б глянув, не думаю, що таке існує особливо на галерах, тим більше на систематичній основі.
Суть «галер» купі-продай: по суті їх цікавить де взяти дешевше і продати дорожче, ніхто на галерах сильно вкладатися у «вирощування» спеца не буде, простіше «прошвирнутися по ринку» на те вони і «галери».
Взагалі-то у нас також не відділення «Червоного хреста», тому з «базою» якось developer мусить уже розібратися самостійно, якщо я вірно зрозумів, що малося на увазі під «базою».

існує. Хтось з колишнiх колег проходив цей квест, хтось мiняв роботу.
Питання не у дотнетi, етц, а якi саме проблеми ви можете розв’язувати.

В Епамі така дроч наприклад. Для підвищення треба створити план розвитку, забрати фідбек з команди а потім пройти assesment на який приходять 3-5 людей і декілька годин задрачують питаннями по всьому підряд.

питання лише часу, коли всередині з’явитися якась система (їх-то і готових вагон), як мінімум, прокачки потенціалу ресурсів, коли багато проектів/технологій — очевидне бажання бізнесу.
Виходячи з цього «очевидного бажання», як на мене, оптимальний баланс інтересів компанії/співробітника, це систему, якщо є можливість, адаптувати до потреб самих developer-ів, а менеджмент так чи інакше все, що потрібно від неї візьме: треба «дроч», буде «дроч» і т.п. варіанти.
Викладене в статті і є варіант «найкраще, що можна зробити для своїх колег » в цій всій історії.

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

в моєму випадку epic fail співробітника в різниці між «віртуально архітектор» і реально «йолки, твій код так собі» імплементується в корегований «План розвитку» для нього на наступні 6 місяців.
Крім того, співробітник ніколи не отримає в «План розвитку» компетенцію «архітектор», якщо немає для цього передумов: навіщо йому і всім іншим психологічні стреси, створені своїми ж руками, а безпідставні амбіції — це завжди epic fail.
Важливий момент: я прийшов на DOU, перебуваючи значно далі «етапу хорошої ідеї», у мене в активі:
1. чіткі аксіоми, як проектувати та валідувати персональні «Плани розвитку» developer-ів;
2. готове спеціальне програмне забезпечення, яке дозволяє працювати з п.1 (і developer-у, і Компанії), причому система качає сама себе: чим більше в ній працюють, тим вища якість і реальна актуальність наступних «Планів розвитку» по Компанії в цілому.
А ось звідси, як кажуть «Ви заволоділи повністю моєю увагою»: «щоквартальна перевірка планів персонального розвитку підлеглих» у Вас:
— як саме проектуються такі плани?
— як в процесі проектування приймає участь сам підлеглий?
— як валідується через квартал результат?
— що слугувало першопричиною ось таких «щоквартальних планів»?
— «першопричина» сама по собі не зникне; якщо «щоквартальні плани» сильно різняться між теорією і практикою, тоді яка альтернатива, щоб таки вирішити «першопричину» і яка гарантія, що це не буде те саме, але в профіль?

Персональний план проектує сам підлеглий, дивлячись на свою поточну роль у команді та завдання команди + всієї компанії. План, до затвердження, обговорюється разом із тім лідом та (якщо потрібно) іншими зацікавленими особами. Наприклад, якщо в команду потрапляє новачок, він ставить собі реальні цілі, які дійсно можна досягти за квартал. Наприклад, розібратися у продукті, додати щось своє, чи вивчити одну або декілька технологій, які використує команда.
Через квартал, підлеглий може прокоментувати свій план і додати до нього реальні результати своєї роботи, що в свою чергу може вплинути на подальшій розвиток людини у команді.
Першопричиною таких планів, на мою думку, було дати можливість кожному розвиватися згідно з власними інтересами у межах команди (ну там, хтось більше любить фронтенд кодить а хтось бази даних). Друга причина — це оцінювання росту та перформансу спеціаліста. Так, наприклад, якщо людина хоче підвищення рейту, вона надає свої квартальні плани із підтвердженням їх дотримування (наприклад, лінки на пул-реквест з реалізованим кодом).
Якщо людина навпаки, underperforms, можна повернутися до плану та вказати, де саме цей underperfomance відбувся, а не абстрактне «ти не тягнеш».

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

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

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

(для Włodzimierz+) так, виглядає, як контракт, але простіших схем в масштабах великої компанії, які можуть змінити щось принципово якісно у взаємовідносинах найманого працівника і роботодавця, я не знайшов.
Agile — також по суті контракт і це нічого не змінює для тих, хто від нього бере собі профіт, в принципі так, як і для тих, хто профіту з agile не отримує чи не бачить сенсу типу біле називати білим, але доступна формалізація (читай контракт) понижає поріг входження для застосування типу «очевидних речей», які такими для багатьох стають лише після певної конкретизації.

Важко читати, нащо вам ті скорочення? Це ж не якийсь формальний документ, де використовуються типові скорочення, які всі причетні знають.

погоджуся лише в контексті «ребрендингу»: неможливо «автотазік» зробити більш надійним та комфортним, просто назвавши його BMW або замінивши на інший «автотазік», справа в іншому: я зі старту BMW роблю, а не «автотазік».
«аксіома Ескобара» — це такий собі частковий випадок схеми «обычно» від Denys Poltorak, а по «обычно» я вже висловився в контексті «окремого велосипеду».

Ничего не понял.
Обычно, чтобы увеличить зарплату, меняют контору. А то могут и уволить, если начальству проговоришься, что хочешь повышение.

«окремий велосипед» одноосібно не вирішує питань з/п, але робить більш зрозумілим та простим діалог між співробітником та роботодавцем і в цих питаннях також.
Маєш подібну систему — якість аргументованого діалогу росте, не маєш — тільки варіант «обычно».
Безумовно, є і інша сторона «окремого велосипеду»: сам developer «можливість» починає юзати, як «обов’язок» і вести діалог з позиції формалізму, що зводить ситуацію автоматично до «обычно».
«...могут и уволить, если начальству...» — супер-розклад: а навіщо Вам керівник/кантора/проект, з якими єдина Ваша перспектива — це гадання на кофейній гущі «звільнять чи ні», якщо Ви в якийсь момент вирішили, що Вас явно недооцінюють? От і народжуються так «стрибунці» по канторах, тому що діалог з керівництвом для них «обычно» закінчується «ху, не добавили, але ж і не звільнили», потім досить скоро наступає «мене намахали, спецом піду» (тут уже лише йти, бо інакше — це садо-мазо) і з величезною ймовірністю потрапляє людина в кантору/проект з аналогічними розкладами, бо кантори також часто юзають режим «обычно»: візьмемо, а буде щось не так, он там ще один за ту ж з/п.
Дякую за коментар, але «окремий велосипед» покликаний якось покращити розклади обох сторін в схемі «обычно», а не зводити до неї по замовчуванню.

не завжди зможу оперативно коментувати, але якісь принципові моменти намагатимуся не залишати без уваги.
Мова йде про можливості, а не зобов’язання.
Часто шукають цілеспрямовано наставників, тих, хто зможе бодай аргументовано виголосити позицію, яка дозволить відштовхнутися і зорієнтуватися при бажанні на якомусь етапі твого шляху розробника, ось цей «окремий велосипед» і є реакція на таку потребу зі сторони developer-а, а з іншої сторони — це бажання мати адекватну та гнучку площадку для діалогу, коли повстають питання: «що далі», «щось у мене у цьому проекті не складається», «хочу більше золота» і т.д.
Мова йде не про компакт-команду на 5-10 чоловік в окремо взятому проекті, а значно більшу штатну чисельність в тому числі в розрізі проектів/технологій.
«Усі цим хворіють» — це трохи, як на мене, з розряду: сходив в спортзал, притисло штангою. Висновок: спортзал небезпечна штука.

Підписатись на коментарі