Що має знати Senior DevOps Engineer, щоб заробляти від $6500
Продовжуємо рубрику «Що має знати Senior» і цього разу поговоримо про обов’язки DevOps Engineer. За даними DOU, медіана зарплат для DevOps Engineer з досвідом понад п’ять років і рівнем англійської від Upper-Intermediate у грудні 2023 року становила $6000 після податків. Я поставив перед собою ціль з’ясувати, які знання та навички очікують від спеціаліста роботодавці, що готові платити вище за медіану.
Для цього я скористався фільтром вакансій на Djinni, встановивши мінімальний поріг зарплати в $6500, а також відібрав вакансії на DOU із зарплатною вилкою від $6500. Таких вакансій я знайшов 25. Тут і позиції, де прямо не вказали тайтл Senior, але є відповідна зарплата. Для зручності абсолютні цифри переведені у відсотки. Поділ технологій на групи умовний.
Графіки нижче демонструють популярність тих чи інших технологій, але, на жаль, мало що говорять про особливості саме ролі Senior. Тому я попросив відомих DevOps-спеціалістів розповісти, що відрізняє DevOps-інженера рівня Senior від Middle. Якими є червоні прапорці при наймі Senior DevOps, а також які цікаві випадки траплялися на співбесідах.
Вакансії, що потрапили в дослідження (настисніть, щоб розгорнути):
Djinni — 5Blue Software, Adaptiq, Alty, ATLASLIVE, Career Karma, Data Science UA, Digital Method, EzApp, EpicentrK, FlexMade, GlobalLogic, Evoplay, LotusFlare, MEGOGO, Meest Group, MUGCO, Oncommarket, Raiffeisen Bank, RubyPlay, Social Solutions Group, Stape, TemaBit Fozzy Group, TrafficMarket
Досвід роботи, який вимагають компанії
Більша частина вакансій передбачає, що кандидат пропрацював за спеціалізацією DevOps від п’яти років. Проте отримувати високу зарплатню можна і з меншим досвідом.
Необхідний рівень освіти
У жодній вакансії не йдеться про диплом магістра. Профільний диплом бакалавра очікують від кандидата у 24% вакансій, і це рекордно багато для України, якщо порівнювати з іншими спеціалізаціями. Навіть від Data Scientist диплом бакалавра вимагали лише у 8% вакансій, а від iOS-розробника в 3%.
Public Cloud
AWS є найбільш затребуваною хмарою. GCP та Azure значно їй поступаються.
Контейнеризація
Жодну іншу навичку роботодавці не згадували у вакансіях так часто, як Kubernetes. Фактично DevOps-інженер без Kubernetes не може існувати.
Мови програмування
Дуже поширеною є вимога знати відразу дві мови програмування. Найбільш затребуваною є пара Python + Bash. Але зверніть увагу на популярність Golang. Це може стати вашою конкурентною перевагою.
Далі наведу кілька груп технологій без коментарів. Цілком очікуваними є вимоги знати Linux та CI/CD тощо.
Infrastructure as Code
CI/CD
Monitoring
Cloud Security
Технології персистентності
Message brokers
Операційні системи
Інші технічні навички
Рівень англійської
Сумарно у 56% вакансій згадують англійську мову. Згідно із зарплатним віджетом DOU, підвищення рівня англійської з Upper-Intermediate до Advanced збільшує зарплату DevOps-інженера з $6000 до $6833, або на $9996 на рік.
М’які навички
Комунікаційні навички високо цінують. Проте не лише їх. Наприклад, є роботодавці, які прямо вказали, що для них важлива робоча етика.
Цікавинки, знайдені у вакансіях
- У компанії Dysnix у вас буде можливість контрибутити в опенсорс. Зарплата до $7500.
- 5Blue Software працює над проривом в галузі 5G та ШІ. Шукають спеціаліста, що має сім років досвіду управління інфраструктурою великих підприємств.
- Alty шукала DevOps-інженера на неповний робочий день. Серед їхніх клієнтів «Монобанк», «ПриватБанк», Zakaz.ua та EasyPay.
- GlobalLogic шукала інженера з досвідом парного програмування в Румунію.
- TemaBit Fozzy Group шукала DevOps-інженера, «що не є євангелістом конкретної технології, а більше турбується про досягнення цінності для бізнесу».
Думки технічних експертів
Денис Васильєв, Senior Site Reliability Engineer у GfK, автор ютуб-каналу [не]правильний DevOps
Ділити на лички — невдячна справа, адже мідли можуть бути навіть кращими за сеньйорів. Я проводжу безліч співбесід, і вони це доводять. Сеньйорність — це більше про відповідальність. Завдання можуть мати різний рівень невизначеності. Рівень сеньйорності відповідає рівню невизначеності, який людина готова взяти на себе.
На це може впливати досвід і базові знання. Оскільки ми працюємо зі свіжими технологіями, досвід не завжди є показником. А от базові знання, розуміння домену — це основне.
Сьогодні багато дискутують про базові знання. Мовляв, знаю тулсет і я класний сеньйор. На мою думку, мідла від сеньйора відділяють фундаментальні знання в предметній галузі, досвід і відповідальність.
На співбесіді я майже відразу розумію, що це — сеньйор. Тому що він каже: «У мене з’явилося завдання. Ніхто його не міг виконати. Я зробив декомпозицію. Осягнув тайм-менеджмент. Набрав команду. І мені ніхто не давав дороговказів. Я сам можу побудувати флоу для вирішення будь-якого завдання з невизначеністю на певному рівні».
Червоним прапорцем на співбесіді Senior DevOps може стати розповідь про те, як він на минулих проєктах будував фортеці. Щоб його не могли звільнити, він щось хардкодить, десь не ділиться інформацією та ізолює інших від знань. На базі цього виникає токсичність і капітанство. Ми віддаємо перевагу команді, а не зіркам у команді.
«У моїй практиці було, що кандидати намагалися пройти співбесіду за допомогою ШІ-асистентів»
Наприклад, є ідеальне резюме з набором сертифікатів. Якщо позиція сеньйорна, я завжди прошу подивитись GitHub. І там понад сто репозиторіїв. Я починаю вчитуватися в коміти та пул-реквести та доходжу висновку, що це згенеровані репозиторії.
Фіктивний код — це перший дзвіночок. Далі я перевіряю сертифікати, а номери не проходять перевірку клауд-провайдерами. Запитую: «Як ти складав?». І виявляється, що кандидат ще цього навіть не зробив.
Ще один кейс — коли я ставлю питання, а кандидат чітко і голосно його повторює. А потім таке відчуття, ніби він зачитує відповідь з документації. Був навіть прокол, коли людина почала відповідати з прикладами коду з фейковими іменами, які їй згенерував ChatGPT.
Юрій Рочняк, Site Reliability Engineer в Preply, автор телеграм-каналу CatOps
Як і в будь-якій іншій спеціалізації, Senior від Middle відрізняє можливість працювати незалежно та готовність брати на себе відповідальність за проєкти, продукти, фічі. На сеньйорному рівні часто немає нарізаних задач. Потрібно розмовляти з бізнесом, розуміти його пріоритети та цілі, трансформуючи їх у технічні задачі та рішення.
Робота в IT — це про компроміси, і дуже часто good enough is enough. Якщо рішення розв’язує проблему бізнесу, то воно good enough.
Бізнесу не потрібно створити кластер чи налаштувати базу даних. Бізнесу потрібно, щоб платформа працювала, потрібна мінімізація даунтаймів. Умовний CEO не скаже: «Нам треба кластер». Він скаже: «Нам потрібно деплоїтись частіше». Або: «У нас був інцидент, коли сервіс був недоступним 10 хвилин і ми втратили мільйон доларів. Як такого не допустити?». Сеньйорна людина має розуміти, як це трансформувати в технічні рішення і які в них є недоліки.
Повертаючись до прикладу з інцидентом: «Гаразд, технічне рішення може бути, зарезервуймо все, будемо тримати по дві й більше реплік всього, що в нас є, але за це треба буде платити гроші. Відповідно, виникає питання, чи можемо ми собі дозволити розширити інфраструктуру удвічі? Чи будуть ці витрати співмірними з ризиками?» Сеньйор мусить відповісти на таке питання. Від мідла я б такого не чекав. Мідлу потрібна міцна технічна база, але хтось має дати задачу.
«В Україні люди нерідко ставляться до співбесід як до іспитів в університеті, де офер — це оцінка»
Насправді людина може бути сильною в технології, яку компанія не використовує. У моїй практиці був випадок, коли ми відхилили класного спеціаліста, тому що його експертиза відрізнялася від того, що ми шукали.
Я бачив мало компаній, де використовують декілька клаудів. Тому є велика варіативність серед спеціалістів. Це може бути сильний фахівець з AWS, але йому доведеться вчити Azure. Якими б класними не були процеси в компанії, спеціаліст починає приносити цінність через пів року, коли він розбереться, як все працює, які є підводні камені тощо. А тут людині ще треба буде вивчити нову технологію.
Якщо компанія є супершвидким стартапом, де пріоритети стрімко змінюються, людина, що звикла до ґрунтовного підходу, не підійде культурно. Якщо ж це медична сфера чи фінанси, не можна працювати за принципом «You live only once, раз-раз і в продакшн». Там вже підійде кандидат з фундаментальним підходом, а тим, хто хоче використовувати останні технології, буде сумно.
Якось ми не найняли спеціаліста, тому що він просив багато грошей. Має бути двосторонній метч.
Загалом не потрібно ставитися до співбесід як до іспитів. Так, я не раз співбесідував людину, яка чогось не знає. Але головне — не бути мудаком.
65 коментарів
Підписатись на коментаріВідписатись від коментарів Коментарі можуть залишати тільки користувачі з підтвердженими акаунтами.