Кратко — хорошие новости: то, что умеет генерировать код агент/AI уже сейчас, не равнозначно всему спектру инженерной работы. Есть много направлений, где человеческий опыт, знание домена, навыки работы с железом и сложными системами остаются востребованы и относительно «неавтоматизируемы». Ниже — практичные варианты с плюсами/минусами и конкретными шагами, чтобы перейти без пересборки жизни.
1) Embedded / C/C++ / IoT
- Почему: работа с аппаратурой, отладка на уровне регистров, реальные РТ ОС, безопасность, сертификации — всё это сложно автоматизировать. Физические навыки (пайка, измерения) и сертифицированные процессы ценятся.
- Минусы: надо изучить низкоуровневые вещи, иногда меньше удалёнки, вакансии в отраслевых компаниях и подрядчиках, возможны требования по допускам.
- Что делать:
- Освоить C на «встраиваемом» уровне, ARM Cortex-M, RTOS (FreeRTOS, Zephyr), периферия (I2C, SPI, UART), JTAG/Segger/OpenOCD.
- Пара проектов: STM32/ESP32/Arduino + датчики/прошивки, загрузчик (bootloader), simple device + PCB прототип (всё на GitHub).
- Курсы/книги: «The C Programming Language», «Embedded Systems» (Valvano), «Making Embedded Systems» (Elecia White), Zephyr/FreeRTOS tut.
- На практике: собери 2–3 законченных проекта и выложи код + описание проблем/решений.
- Сроки: 3–9 месяцев до уровня Jr->Mid, с учётом уже имеющегося опыта.
2) Safety‑critical и индустриальные системы (авто, медицина, авиация)
- Почему: стандарты (ISO 26262, DO-178C, IEC 61508), процессная работа, аудиты — нужны люди с опытом и вниманием к деталям.
- Минусы: часто требуют профильной сертификации/опыта, процессы строгие.
- Что делать:
- Изучить стандарты, безопасное программирование, тестирование и документирование.
- Пройти курсы по ISO 26262/DO-178 (есть вводные онлайн).
- Попробовать позиции по поддержке, валидации, maintenance — там возьмут с близкой техкомпетенцией.
3) Системное/сеть/инфраструктура (DevOps, SRE, Telecom)
- Почему: эксплуатация распределённых систем, инцидент-менеджмент, системная отладка, масштабирование — здесь нужен человеческий опыт.
- Минусы: процессы автоматизируются частично, но люди нужны для архитектуры инцидентов и сложных разборов.
- Что делать:
- Прокачать навыки Linux, контейнеры, Kubernetes, наблюдаемость (prometheus/grafana), CI/CD, infra-as-code.
- Устроиться на SRE/DevOps поддержку продукта; много вакансий с гибким удалённым форматом.
4) Security / Reverse engineering / Vulnerability research
- Почему: кибербезопасность, аудиты, эксплойт-разработка и анализ бинарников — сложные творческие задачи, где AI помогает, но не заменяет.
- Минусы: требует глубоких знаний ОС, С/ассемблера, опыта работы с инструментами (gdb, radare2, IDA, fuzzers).
- Что делать:
- Начать с практики: CTF, reverse engineering, fuzzing (AFL, libFuzzer).
- Сертификаты/курсы: Offensive Security (OSCP) и др. — полезно, но не обязательно.
- Позиции: security engineer, application security, pentester, binary analyst.
5) Поддержка старого ПО / legacy systems (банки, ERP, государство)
- Почему: системы живут десятилетиями; поддержка старых стеков (включая PHP, Java, .NET, COBOL) даёт стабильность и часто неплохую оплату.
- Минусы: может быть «скучно», технический долг, политические процессы.
- Что делать:
- Используй свои текущие навыки PHP/JS; ищи роли по поддержке и миграциям.
- Изучение сопутствующих систем (Oracle, SAP, mainframe) увеличит шанс.
6) Доменные специалисты (fintech, healthcare, telecom)
- Почему: реальное владение доменом + кодинг делает тебя незаменимым; агенты слабо понимают нюансы бизнеса.
- Минусы: нужно изучить предметную область.
- Что делать:
- Выбери сферу, где ты уже работал/есть интерес.
- Учить регуляции, рабочие процессы, данные — и позиционировать себя как dev с доменным опытом.
7) Языки и инструменты уровня инфраструктуры: Rust, компиляторы, базы данных
- Почему: системы, требующие производительности и безопасности памяти, предпочитают людей, умеющих писать низкоуровневый код.
- Что делать:
- Изучение Rust + участие в OSS проектах (Tokio, memalloc, базы данных) — путь в backend для latency-sensitive систем.
Как избежать «выжигания» агентами и остаться конкурентоспособным
- Стань «трудноавтоматизируемым»: глубокие системные знания, опыт отладки, комплексное понимание архитектуры, взаимодействие с железом, нормативы и безопасность.
- Позиционируйся не как «писатель строк кода», а как инженер, который решает сложные системные проблемы.
- Используй AI как инструмент: делегируй рутинное, тратить ресурсы на архитектуру, тестирование, root-cause analysis.
- Документируй и демонстрируй результаты — портфолио проектов по встраиваемым устройствам или системным задачам лучше резюме.
Реальный план на 6–12 месяцев (пример)
- 0–1 мес: выбор направления и целевой вакансии (embedded / security / SRE / legacy).
- 1–3 мес: базовая прокачка (C/RTOS/ARM или systems+Linux/Rust или security), пройти 1–2 курcа и начать проект.
- 3–6 мес: готовые проекты/пул рекрутеров, пройти собеседования на Jr/Mid позиции; участвовать в OSS/CTF.
- 6–12 мес: получить целевую роль или контракт; продолжать профильную сертификацию.
Практические советы по устройству и поиску
- Подчеркни в резюме transferable skills: debugging, системное мышление, ownership, CI/CD, тестирование.
- Создай GitHub с 2–3 законченных аппаратных/системных проектов и техническими постами (Habr/Medium).
- Рассматривай контрактные позиции/подрядчиков — часто берут с опытом разработки, а не профильным тезисом.
- Не бойся «прыжка внизу» по зарплате — опыт в новом стеке окупится. Но ищи заказы/компании, где ценят долгосрочную стабильность (доход часто восстанавливается через 1–2 года).
На счёт возраста
- 40 лет — вовсе не приговор. Компетенции и умение решать сложные задачи важнее. Большинство технических ролей ценят опыт и стабильность. Целевые направления (embedded, безопасность, legacy) особенно благоприятны.
Если хочешь — могу:
- Составить персональный 6–9 месячный план обучения под выбранное направление (embedded / security / SRE / legacy).
- Посмотреть и поправить резюме/LinkedIn под переход.
- Предложить список конкретных проектов/челленджей для портфолио.
Какой из вариантов тебе ближе — Embedded/C/C++ или, может, security/legacy/infrastructure? Тогда подготовлю конкретный дорожный план.