Зміст[Сховати][Показати]
Чи є інженер 10X міфом?
Реальність така, що деякі люди вміють програмувати краще, ніж інші.
На моїй попередній посаді в технологічній компанії я був вражений тим, як деякі люди в моїй команді, здається, знають, як робити все.
Навіть під час мого навчання в університеті, беручи участь у хакатонах і стажуваннях, я мав змогу познайомитися з кількома дуже талановитими розробниками, у яких я багато чому навчився.
У цій статті я розповім про деякі неправильні уявлення, які люди можуть мати щодо інженера 10X. Після того, як ми розглянемо, що таке інженер 10X не, ми розглянемо кілька найкращих порад, які я можу дати вам, щоб самому стати інженером 10X.
Що таке інженер 10X?
Багато розробників сперечалися б щодо фактичного визначення інженера 10X. Але для ясності давайте зараз дамо просте визначення.
Інженер 10X — це розробник програмного забезпечення, здатний бути таким же продуктивним, як десять його колег.
Ідея інженера 10X могла виникнути раніше, ніж ви думаєте.
A дипломну роботу з 1968 року під назвою «Дослідницькі експериментальні дослідження, що порівнюють продуктивність програмування онлайн і офлайн» вперше висунув ідею, що деякі з найкращих програмістів працюють на порядок краще, ніж найгірші програмісти. Хоча це не те визначення, яке прийнято сьогодні, ідея інженера 10X незабаром поширилася за межі академічних кіл.
Кілька років потому класична книга The Міфічний Людина-Місяць ще більше проілюстрував ідею інженера 10X. Автор Фред Брукс припускає це розробка програмного забезпечення команди можуть бути структуровані як хірургічні бригади.
У цій команді у вас буде головний програміст або «хірург» із допоміжними програмістами або «медсестрами».
Хоча цю аналогію легко зрозуміти, я вважаю, що вона дещо спрощена та застаріла у застосуванні до поточного стану розробки програмного забезпечення.
Командна динаміка в технічній команді дуже відрізняється від хірурга. Ця ідея про те, що одна людина виконує більшу частину роботи або лише найскладнішу роботу, неправильно характеризує те, яким, на мою думку, має бути інженер 10X.
Поширені помилки
Оскільки ідея інженера 10X поширилася в технологічній сфері, більшість керівників часто неправильно тлумачать, що ми маємо на увазі під «10X».
Поширеною помилкою є те, що інженери 10X створюють у десять разів більше коду, ніж їхні колеги. Це просто неправда.
Хоча 10-кратний інженер міг би створити більше коду, ніж його колеги, кількість не є правильним показником. Уявіть собі програміста, який витрачає тисячу рядків коду на те, що можна було б зробити менш ніж за сотню. Так само інженер 10X не кодує в десять разів швидше!
Інше неправильне уявлення про інженерів 10X полягає в тому, що вони чудові просто завдяки своїм знанням програмування. Знову ж таки, це ще один випадок розгляду неправильної метрики.
Що робить інженера 10X таким цінним, так це те, що він додає в десять разів більше цінності своїй команді та організації. Інженер 10X є незамінним завдяки своїй здатності використовувати свої знання кодування та узгоджувати їх із потребами компанії.
Менеджери повинні шукати інженерів, які можуть вирішувати проблеми та добре працювати з іншими. Крім знань у програмуванні, інженери 10X повинні мати можливість підняти роботу всіх навколо.
П'ять способів стати 10-кратним інженером
Цей розділ для вас, якщо ви менеджер, який шукає свого наступного працівника, або просто інженер, який прагне стати інженером у 10 разів.
Ось деякі з ключових звичок і рис інженера 10X:
Вони знають, як максимально використати свій набір технологій
Знати свої інструменти — це, мабуть, найочевидніша порада, яку я можу вам дати. Однак багато розробників можуть покращити свій робочий процес, навчившись працювати ефективно.
Більшість 10-кратних інженерів, з якими я працював, знають, як працювати з терміналом. Хоча для початківців це може бути трохи складно, розуміння того, як створювати команди оболонки на льоту, допоможе вам виконувати свою роботу набагато швидше в довгостроковій перспективі.
Інженерам 10x також може бути корисно бути трохи ледачими. Дозвольте сказати вам, що я маю на увазі.
Уявіть, що вам доводиться щодня вручну виконувати серію команд, щоб передавати нові коміти у виробництво. Інженер 10x повинен уникати виконання повторюваних завдань. Вони докладають додаткових зусиль, щоб автоматизувати якомога більшу частину дня.
Найкращі інженери також повинні думати в довгостроковій перспективі. Якщо ви працюєте в стартапі, може виникнути спокуса зосередитися на швидких і простих рішеннях. Однак ці рішення можуть не розширюватися.
Вони ніколи не перестають вчитися
Чудовий розробник ніколи не перестає вчитися. Найкращі інженери знаходять час у своєму напруженому робочому дні, щоб випробувати нові концепції, мови та фреймворки, які вони можуть спробувати застосувати у своїй роботі.
10-кратний інженер повинен підтримувати здорове почуття цікавості. Вони часто запитують себе: «Чи можна це зробити краще?» або «Чи існує більш простий або ефективніший спосіб вирішення цієї проблеми».
Таким чином, 10-кратний інженер повинен оволодіти мистецтвом навчання. Навчитися вчитися – це найкращий спосіб залишатися на плаву в стрімкому середовищі.
Вони знають, як краще провести час
Чудовий інженер-програміст чудово вміє приймати рішення, зокрема щодо того, чим зайняти свій час.
Інженерам 10X рідко потрібно працювати більше годин, ніж середньому інженеру. Інженери повинні знати, коли відмовитися від певних запитів і сказати «ні». Вони повинні знати, які завдання виконувати самостійно, а які делегувати.
Ефективні інженери повинні навчитися визначати, чи варто завдання виконувати швидко. Однією з ментальних моделей, про яку слід пам’ятати, є принцип Парето.
Принцип стверджує, що 80% вартості вашої роботи приносить 20% ваших зусиль. Іншими словами, не всі завдання однакові.
Вони шукають належного наставництва
Великий інженер може багато чого навчитися у досвідченого ветерана галузі. Інженери 10X часто шукають наставництва на роботі та за її межами, щоб розширити свої знання.
Подібним чином інженери 10X отримають вигоду від ролі наставника своїх товаришів по команді. Вся команда піднята, коли вона відкрита для його нових товаришів по команді.
Вони розуміються на справі
Простими словами, розробка програмного забезпечення — це лише спосіб вирішення проблем реального світу комп’ютерами. Маючи це на увазі, ефективний інженер повинен стати експертом у проблемі, яку він намагається вирішити.
Як інженеру, докласти зусиль, щоб отримати розуміння бізнесу чи галузі, частиною якої ви є, є розумною ідеєю. Інженер 10x повинен бути активним учасником зустрічей з іншими відділами.
Якщо інженер докладе зусиль, щоб зрозуміти, чим займаються інші відділи в контексті бізнесу, він стане ефективним комунікатором. Ефективне спілкування допоможе запобігти неправильному розумінню вашою командою бізнес-вимог і специфікацій проекту.
Висновок
Сподіваюся, тепер ви маєте більш чітке уявлення про те, як виглядає інженер 10X. Ви також повинні розуміти, ким не є інженер 10X.
Наведені вище поради, звичайно, є лише загальними рекомендаціями, які можна застосувати до будь-якої посади розробника програмного забезпечення. Якщо ви хочете дізнатися, як стати найкращим Інженер DevOps, повноцінний розробник або науковець з обробки даних, ваш найкращий варіант — знайти можливості для навчання та створення.
Подумайте, чи є ваша поточна посада хорошим середовищем для навчання. Можливо, ви хочете приділяти більше часу роботі над побічними проектами, які дозволять вам досліджувати технології поза вашим поточним набором технологій. Це лише деякі поради, яких ви можете дотримуватися, щоб отримати перевагу в технологіях.
Яка, на вашу думку, найкорисніша порада для інженерів-початківців?
залишити коментар