Senior Software Engineer не може знайти роботу DevOps. Проблема в тайтлі?
На Reddit Software Engineer з 15 роками досвіду поділився історією пошуку роботи DevOps.
Він каже, що працює в софтверній компанії у відділі Platform Deployment і щодня займається EKS, Terraform, Jenkins, Grafana тощо. Тобто по факту виконує те, що роблять всі DevOps-фахівці. Але в них у підрозділі всім дають тайтл «Software Engineer».
І зараз він активно шукає нову роботу, але відгуків на його CV — нуль. Як він думає, то це через те, що його теперішня посада ніяк не пов’язана з DevOps.
Як думаєте, чи справді це так чи просто зараз кількість DevOps-спеціалістів настільки шалена, що не відповідає реальному попиту на них?
47 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарівКолись, коли я ще брав участь у подкастах, я декілька разів наголошував, що навички кожного ІТ спеціаліста можна поділити на дві великі категорії:
1. Власне навички аби добре працювати.
2. Навички пошуку роботи та проходження співбесід.
Без одного неможливе інше. Ви можете бути достобіса геніальним прінципалом, але в чому сенс, якщо ви ці навички нікому не зможете «продати».
Ну і навпаки, якщо ти майстерний балабол який зміг всім заговорити вуха на співбесіді, але в реальності знання близькі до нуля, то тебе дуже швидко звільнять.
Обидві цих категорії(робота та її пошук) є навичками, які можна тренувати і розвивати. Хороший спеціаліст володіє обома.
У випадку автора оригінального посту, ми бачимо провал, мінімум, по одній категорії. Хоча може й по двом, ми не знаємо наскільки добре він працює.
Відповідь проста — всі CEO в штатах/європі очікують що AI дозволить їх компанії роботи те саме швидше, або те за за допомогою меншої кількості людей. Їм це вже пообіцяли, вони вже підписали великі контракти з AI вендорами. Вони чекають на ROI. Я наприклад останні 4 місяці пишу 100% коду за допомогою AI. Раніше я як і ви сміявся з мемів про вайб кодінг, а зараз я вже не пишу код вручну (ну іноді трошки підправляю що AI нагенерив, або маленькі зміни які швидше самому зробить).
Мій висновок — половина програмістів втратить роботу в наступні можливо 10 років. Я вже рік спостерігаю по своїх друзях що важче знаходити роботу або фриланс контракти. Пропоную вам вчити як використовувати AI щоб бути конкурентно спроможним на ринку праці
іти в сантехніки та електрики.
піздюкати це не не мішки носити ))
Розкажіть як ви вчились використовувати AI.
Купив ліцензію Cursor за 20 баксів, подивився кілька відео, спробував на пет-проекті та був шокований результатом, потім вже почав використовувати на роботі, потім повністю перейшов на нього
роботодавець в курсі шо ви його код копіпастите кудись в інтернети в промислових масштабах?
Роботодавець мені одразу сказав щоб я AI використовував по максимуму. Це тільки на доу найрозумніші інженери планети — воюють з аі в темі про те як чувак роботу знайти не може
а
ну то ясно що в вас там за «код» тоді
Це проблема домену, в моєму, наприклад, навіть вакансії на Trainee відкриті досі, бо той ШІ максимум накидати ванлайнер на баші чи юніт systemd може.
Робив те саме і саме з цієї причини використовую його в роботі відсотків на 30 мабуть. Мій максимум — згенерувати реалізацію методу по детальному опису — це дуже добре виходить. Внесення змін в існуючий код: рефакторинг, деталізація вже згенерованих фрагментів, переписування коду з викиданням одного паттерну / бібліотеки на користь іншого, виправлення помилок — це працює для мене настільки погано, що просто вибішує і покидає бажання продовжувати.
Там багато нюансів. По перше для кодінга рекомендую Claude Sonnet / Opus — вони найкращі саме для програмування. Далі треба навчитися використовувати: rules, mcp server (context7 погугліть), далі треба вчитися писати промпти і взагалі як саме писати код. Наприклад я часто спочатку пишу промпт і додаю «... Create a plan but don’t write code yet», потім дивлюсь що воно планує і якщо все ок, тоді зберігаю це в файл plan.md і потім вже його використовую в промптах щоб писати код. Я не зможу все в одному пості написати, але скажу так — треба цьому вчитися, так само як колись ви вчили vim або visual studio або що там у вас улюблене
Як виглядає робота з пропрієтарною, закритою NDA кодовою базою, про внутрішні API якої публічні моделі не знають, а те, що можна підняти локально не на астрономічно дорогому залізі не поміщає чогось складнішого за екран коду?
Мені здається ви не розумієте про що ви говорите. Робота виглядає майже так само як писати код самому в IDE, але тепер замість коду пишете prompts (які звісно треба вміти писати теж, але це простіше ніж писати код). Потім дивитесь що воно написало, можливо трохи поправляєте, або кажете йому переробити трохи (наприклад розбити великий метод на менші). Іноді генерить фігню, доводиться відкатувати та думать як переписати промпт щоб отримати код що треба.
Публічні моделі про внутрішні апі не знають, але можна їм дать посилання на доки або на код і воно все прочитає та зрозуміє.
Це вже суттєве обмеження — чимало проектів працюють з гігантськими кодовими базами з тисячами субмодулів, в яких задіяно десяток мов, і які тим IDE не вдасться навіть проіндексувати без астрономічної кількості RAM і/або складного тюнінгу індексатору.
Навіть стандартне ядро лінуксу запхати в VS Code, щоб той не вдавився індексувати кілька гігабайт коду, а тим більще щоб ще і правильно розкрив макроси по вмісту .config, вже задача на любителя, так що багатьом досі простіше грепати.
Ну от є, скажемо, код планувальника тасок в ОС, який бере таску з одного зі зв’язних списків відповідно до квот часу різних пріорітетів, задача, додати ще один пріорітет. І що, та модель, без детального копання у всій кодовій базі розбереться як влаштована лінковка таски в одну з черг по пріорітетам, сама розширить комплект вказівників на попередню-наступну таску, сама напише сеттери-геттери, які додають-вилучають-переносять в голову/хвіст потрібного пріорітету цю таску, навіть ніколи не бачивши самого коду?
Хто це такий роботодавець, що миттю не звільнить за жостке порушення NDA при подібному? Опенсорсні компоненти займають досить незначну частину коду, з якою доводиться працювати.
аналогічно з дев опс задачами де в інфрі маса кастомних модулів на тому же терагранті і ще й розкинуто по різних репах . ai в основному зробить треш де самому прийдеться все чистити і все куча раз перепровіряти і в результаті більше на все часу потратиш
Головне — вірити!
Майте віру з гірчичне зерно — і LLM згенерить вам нове ядро лінуксу з одного промпту!
И оно будет на 100% будет совпадать со старым 😁
Яке NDA? Яке локально? Деплоїте модель, яка вам потрібна, в клоуд і юзаєте.
ви коли код пишите, то зразу у всі ці модулі?
але ок, можете скормити вашу кодову базу вашій задеплоєній моделі, вихідний код буде ближче по стилю. хоча всі ці понти про «пропрієтарний унікальний код» на практиці не витримують ніякої критики, код цілком посередній і нікому крім клієнта не потрібний.
p.s.
ядро Лінукс — приклад невдалий і специфічний.
Зазвичай в ембеддеді зміни не локалізовані: додавання якоїсь фічі складається з власне її реалізації під контролем RTOS на одному ядрі на взаємодії з залізом, правці логіки чи конфігів на кастомному дистрибутиві лінуксу і якомусь прикручуванні тих опцій до вебморди. Так, зміни потрібно робити синхронізованим чином, при цьому це буквально код, який виконується на різних ядраз у складі SoC, часто на різних мовах, і тому просто відкрити в IDE мономовний проект і жмякати кнопку Run неможливо.
Суть не в якості коду, а в надто широкому контексті, щоб той ШІ міг його осилити. До речі, розробка включає в себе прошивку девайсів, зняття логів і дампів додатковими вимірювальними приладами, для деяких багів потрібно робии окремі тестові білди для кастомера і просити проробити якісь маніпуляції з його залізякою. В результаті, писати руками код — це менше половини робочого часу девелопера, навіть якби ШІ все міг взяти на себе, це все одно лишило б купу роботи.
Навпаки, це самий вдалий проект, бо відкритий і написаний в гарному стилі, з непоганою документацією, і дозволяє натренувати на ньому публічні моделі. Нутрощі реальних залізяк часто містять не менших розмірів проекти, написані як курка лапою за пару десятків років, і по ним добре якщо буде хоч якась документація і ще не звільнилися ті хто це писали, більшість часу код не пишеться, а читається і аналізується написане попередниками.
А, я щось на ваш тайтл не глянув.
Я про ЛІнукс писав що приклад невдалий, бо він далекий від ентерпрайз коду і ближче до ембеддед. А який по якості код ллм-ка генерить для ембеддед, я хз, вам видніше.
Хоча, навскидку, якщо залізо стандартне і під нього написано достатньо коду, то може і непогано? Умовно, в Cisco IOS/Juniper OS код закритий, але є опенсорс проекти написані для роутінга, тож хз наскільки це критично.
а тут навскидку не мало б бути проблем, розбір/пояснення кусків коду зазвичай досить пристойно робиться. але, знову ж таки, не варто ій для цього увесь проект підсовувати, якийсь необхідний мінімум.
З залізом проблема в тому, що стандартів на нього насправді практично немає, і досить невелика кількість реалізацій де-факто, деталі яких не завжди розкривають без NDA, відповідно і драйвера часто в тому ж лінуксі зроблені шляхом реверс-інжинірінгу. А головне, знову ж таки, критично важливий контекст, бачити, які ресурси вже задіяні, щоб не було конфліктів які OS на SoC з якими регіонам пам’яті працюють, інтерапти від такої-то периферії в які OS направляти, які мають бути пріорітети у них, щоб не сталося дедлоків, і таких позапрограмних сутностей багато.
Це, до речі, основний камінь в город фанатам безпечних мов типу Rust — нарізкою об’єктів з heap і їх видаленням менеджмент ресурсів не обмежується, і примітивність і бідність абстракцій C різко стає перевагою, коли доводиться співставляти код з поведінкою заліза.
З простими задачами і під обмежені платформи типу Arduino насправді так, накидати код ШІ може, він навіть запрацює. Але це на багато десяткових порядків менша складність за те, що буває в продакшні.
В більш простих залізяках все одно присутні пропрієтарні компоненти — чисто софтварно, засобами лінуксу чи *BSD, обробляти пакети це енерговитратно і проблемно по латентності, тому присутній оффлоад в залізо, і його прикручування до лінуксу непрозоре і дуже залежне на конкретного виробника SoC.
Эдине що не іноді, а не так вже і рідко, на будь якому складному кейсі шаблону якого немає в токенах. А в 95% випадків програміст комбінує існуючі вдалі шаблони.
Насправді це нафіг не потрібно, в сенсі шарити кодову базу із ШІ. Зараз йдеттся про програмування на проектах, і прості ясно і пдрібно описані кейси трансформери беруть на раз.
Це вайбкодерські 100% чи гуманітарні?
Бо, на око, там вже не 100% нормальних відсотків.
🤡 пан мій профіль подивися перед тим як комент про гуманітарієв висрати?
Ти не достатньо привабливий, що б я у профіль дивитись ходив.
Так що по 100%, то які? Все ж таки гуманітарні, бо зачепило саме це?
Не уявляю що це за таски у вас в компанії, щоб АІ вдало генерував 100% коду, та навіть 50% (особливо в існуючій кодовій базі, в абсолютно новому проекті дійсно це буде працювати краще).
От я нещодавно отримав одну непросту задачу, для виконання необхідно покращити існуючий функціонал.
В цей раз я серйозно підійшов до питання інтеграції АІ в роботі, і почав думати як же йому описати, що саме треба зробити. І під час написання цього «правильного» промту, я зрозумів що це досить важко пояснити навіть живій людині, РЕАЛЬНОМУ інтелекту, а не тому що просто генерує текст :) І що мені простіше, і насправді швидше, зробити самому цю задачу без вгадування промту або безлічі корекцій після яких він просто починає марити.
Я не вважаю себе анті-АІ, користуюсь ним на постійній основі, але виключно як заміна гугл і перекладач. Саме в цьому він дає мені найкращі результати. Недавно на реддіті побачив повідомлення яке на 100% відображає для мене використання АІ в роботі:
Ще він досить добре допомагає в чомусь абсолютно новому для мене (проект на новій мові, або налаштування робив недавно Raspberry-pi вперше то дуже добре допоміг), але в принципі як я і сказав — це заміна гуглу, я би зміг це і з гуглом просто було б довше. Але в тій сфері де я спеціаліст я на пояснення йому витрачу більше часу
Я хз що ви там всі робите, спробуйте Cursor з моделями Claude Sonnet/Opus, подивіться відоси на ютубі як цим користуватися.
Я ще раз повторюся що треба вчитися використовувати інструменти. Я намагаюсь вам допомогти, а ви кажете що для вас це не працює. Ну не працює, що ж тоді я можу зробити, пишіть код вручну...
Дуже цікаво що ви робите... я і за 200$ моделі пробував, а витрачаєш часу в декілька разів з ними більше. Щось просто та елементарне ізі, но комплексне, він починає лажати. Ще хуже це код який виливає. Даже з різними модулями на підключення баз/синтаксів виходить вирви глаз. Навіть більше скажу 90% задач на які було вбито по декілька годин я закрив сам скоріше чим це зробив AI але все що я вкінці просив це каркаси
Cursor — рєдка помойка. Рекурсій самого себе в нього це прям стабільність бо не може рішити задачу. ( по коментах як побачив )
Може він просто вказав вилку, від якої всі рекрутери в аху*х, і тіпа чел начитався про 12к девопсів, лупанув ці 12, а рекрутери такі, ну панятна, в ігнор нах.
DevOps — це не просто щоденне використання Jenkins, Terraform, Ansible... Як і щоденне написання простих сценаріїв чи інструментів автоматизації на Python, Go, C це ще не Software Engineering.
Я не знаю де ви там дженкинс з ансиблом використовуєте, але claude.sonnet без проблем вам напише терраформ або внесе зміни в існуючий. DevOps коли з’явився то ідея була що будь який інженер повинен сам свій код деплоїть та підтримувати на проді. Потім хтось придумав тайтл який мені ніколи не подобався бо це просто переймінування інфра/опс інженеров в девопс інженеров.
Якщо коротко, то зараз будь який інженер може написати промпт в Cursor «Create terraform files in order to deploy service A to gloud/aws/azure similar to service B which you can find in folder F» і отримати терраформ без проблем. І так само з CI/CD і взагалі з інфрой.
Краще поміняти тайтл на Platform Engineer — для багатьох людей хто з інфрой працює це зараз стандарт
Клод то тераформ напише, а от хто буде потім те написане фіксити ?
До чого тут Claude чи Cursor? Дивне розуміння DevOps чи розробки взагалі. Так і замість SWE AI теж може артефактів нагенерувати.
DevOps/Platform Engineering/SRE/Operations — це про процеси й культуру: як організувати надійний CI/CD, як побудувати GitOps-платформу, як забезпечити SLO/SLI, інцидент-менеджмент, безпеку й стандартизацію.
Claude не визначить, де потрібна мультизонна архітектура, як рахувати capacity, або як впровадити zero-trust. Це робота інженера.
Термін може бути DevOps Engineer чи Platform Engineer — суть одна: ми будуємо інфраструктуру та процеси, які дозволяють розробникам деплоїти швидко й безпечно.
Тому «написати Terraform по промпту» — це не DevOps. Це лише інструмент у великій системі практик і відповідальностей.
Якщо інженер вважає написання пайплайна або IaC DevOps-ом, то у нього і мають бути закономірні проблеми з наймом.
Давайте я перефразую. Раніше люди писали код в блокноті, потім з’явились IDE які допомагають писати код значно швидше. Людина яка вивчила як ефективно користуватися IDE буде писати код в 2 раза швидше ніж інша людина в блокноті. Але тоді програмістов було мало і їх все одно не вистачало навіть якщо вони писали код в 2 раза швидше.
Зараз з’явилися нові інструменти, і ті хто їх освоїв буде писати код скажемо в 2 раза швидше ніж людина якак пише вручну в IDE. Але зараз інша сітуація з кількістю інженеров, бо за останні25-20 років багато людей пішли вчитися або свічнулися в програмісти. Зараз програмістами ринок насичений, тому конкуренція висока. І умовній конторі в якій було 10 девопсів (Platform Engineers) тепер може те сами зробити маючи тільки 7 або навіть 5 девопсів які вміють користуватися AI/LLMs/новими інстументами.
Стало важче знайти роботу, я бачу все по всім знайомим в Європі, думаю в Штатах так само. Замість того щоб боротися з AI, краще навчитися як їм користуватися бо це теж скілл
Шо бля?!
Ви ок?
Саме тому від появи Turbo Vision пройшло чверть століття, і програмісти зустріли як великий прорив Atom, а потім VS Code. Другий ще і запиляний виробником справжньої дорослої IDE VS, ну тупі...
А написати у резюме інший тайтл не пробував?
Я шукав роботу в штатах. 6 місяців, 1200 аплікацій, з цього всього тільки 5 інтервʼю і один офер. Це було десь рік тому і зараз стало ще гірше. Дуже багато людей і мало реальних вакансій, не думаю що проблема в тайтлі.
.
ШІ вдарив по девопсах, тому девопсу варто вдарити у відповідь по ШІ
Під час пошуку роботи у вас в резюме було щось про model tuning, RAG, CAG, MCP iтп ?
лол потішний баян. з цим текстом зараз ходять усі айтішніки і навтіь кожен другий хто ніколи не був айтішніком, але став недавно вайбкодером
Думаю що цей пост тупий
Проблема в інженері.
В сенсі? Його навіть не кличуть нікуди на співбесіду. Проблема дуже проста в Америці — дорого і наймають індусів, чи ще кого небудь.
Ще може бути ситуація, що поточний роботодавець може помститись за переманювання свого співробітника так, що ніхто не хоче з цим зв’язуватися, та це не про Америку взагалі.
це десь 4 криза від 00, думаю не остання