Senior Software Engineer — это технический лидер, который сам работает с кодом и отвечает за проектирование, создание, тестирование, развёртывание и эксплуатацию высококачественных возможностей цифровой платформы в портфеле Corporate Affairs. Он руководит решением сложных и неоднозначных инженерных задач и следит за тем, чтобы решения приносили измеримую бизнес-ценность, оставаясь при этом безопасными, масштабируемыми, поддерживаемыми и удобными в эксплуатации.
Работая совместно с Technical Delivery Leads, Product Managers, архитекторами, инженерами, QA, операционными командами и поставщиками, специалист определяет техническое направление для своей команды, руководит средними и крупными инженерными инициативами и задаёт высокий стандарт для кода, дизайна и реализации. Эта роль сочетает написание кода промышленного уровня с техническим лидерством, наставничеством и долгосрочной заботой об архитектуре платформы.
· Руководить сквозным техническим проектированием и реализацией сложных возможностей и сервисов цифровой платформы.
· Превращать неоднозначные бизнес-задачи и технические проблемы в прагматичные, масштабируемые и поддерживаемые инженерные решения.
· Разбивать крупные решения на понятные потоки работ и координировать поставку между несколькими инженерами и зависимостями.
· Принимать взвешенные компромиссные решения с учётом бизнес-ценности, темпа поставки, технического качества, безопасности и долгосрочной устойчивости.
· Руководить проведением design reviews, technical spikes, рассмотрением вариантов решений и инженерными решениями, а также участвовать в них.
· Влиять на партнёрские команды в тех случаях, когда прямые или косвенные технические зависимости влияют на поставку или результаты платформы.
· Писать высококачественный код промышленного уровня, задающий стандарт поддерживаемости, масштабируемости, расширяемости и ясности.
· Проектировать, создавать и поддерживать компоненты, сервисы, API, интеграции, автоматизацию и общие инженерные паттерны.
· Поощрять повторное использование вместо изобретения заново и упрощать системы, чтобы их было легче улучшать и эксплуатировать со временем.
· Проводить качественные code reviews и давать практичную обратную связь по дизайну, тестированию, безопасности и реализации.
· Диагностировать и устранять сложные дефекты и технические проблемы на уровнях приложений, интеграций и платформы.
· Работать с Product Managers и Technical Delivery Leads, чтобы связывать бизнес-приоритеты с техническими результатами.
· Участвовать в формировании roadmap, уточнении backlog, оценке, планировании спринтов, демо и ретроспективах.
· Определять технические задачи, критерии приёмки, зависимости и нефункциональные требования.
· Проактивно выявлять архитектурные проблемы, технические риски и возможности для улучшений, позволяющие поставлять быстрее и с более высоким качеством.
· Ясно доносить технический прогресс, решения, риски и компромиссы до технических и нетехнических заказчиков.
· Выстраивать надёжные практики тестирования: unit-, интеграционное, компонентное, регрессионное тестирование и автоматизированный контроль качества.
· Улучшать конвейеры CI/CD, автоматизацию релизов, управление окружениями и практики безопасного развёртывания.
· Обеспечивать, чтобы решения были наблюдаемыми, отказоустойчивыми, безопасными, доступными, производительными и готовыми к поддержке в production.
· Участвовать в реагировании на инциденты, анализе первопричин и мероприятиях по улучшениям после инцидентов.
· Руководить сокращением технического долга, операционной рутины и повторяющихся точек отказа с помощью инженерных улучшений и автоматизации.
· Наставлять и обучать инженеров-программистов через парную работу, обсуждения дизайна, code reviews и практические технические рекомендации.
· Задавать чёткие ожидания в отношении инженерного качества, ответственности за результат, документации и операционной ответственности.
· Поощрять конструктивную критику и помогать разрешать технические разногласия, находя лучший путь вперёд.
· Делиться переиспользуемыми паттернами, уроками и стандартами между инженерными командами, командами поставщиков и партнёров.
· Развивать любознательность, инклюзивность, непрерывное совершенствование и сильный продуктовый и клиентский взгляд.
· Значительный опыт проектирования, создания и эксплуатации цифровых продуктов, веб-платформ, API, интеграций или cloud-native сервисов.
· Прочные основы компьютерных наук и разработки ПО, включая дизайн, поддерживаемость, тестирование, безопасность, масштабируемость и производительность.
· Опыт руководства сложными инженерными инициативами и координации работы нескольких инженеров или технических потоков работ.
· Практический опыт работы с современными практиками разработки, системами контроля версий, автоматизированным тестированием, CI/CD, DevOps и эксплуатацией в production.
· Умение понимать бизнес-последствия и использовать их для принятия обоснованных технических решений и компромиссов.
· Опыт наставничества инженеров и повышения стандартов через code review, design review и технические рекомендации.
· Опыт сотрудничества с командами продукта, поставки, архитектуры, QA, операций, безопасности и поставщиков.
· Будет плюсом опыт работы с Contentful, MACH или headless-архитектурой, современными front-end фреймворками, Java или разработкой API, AWS, Azure DevOps, observability, автоматизацией или инженерией с использованием ИИ.
Мы работодатель равных возможностей и ценим разнообразие в нашей компании. Мы не допускаем дискриминации по признаку расы, религии, цвета кожи, национального происхождения, пола, гендера, гендерного самовыражения, сексуальной ориентации, возраста, семейного положения, статуса ветерана или статуса инвалидности.
Несмотря на то, что вакансия опубликована как работа на полный рабочий день, свяжитесь с нанимающим менеджером или рекрутером, так как могут быть рассмотрены гибкие условия работы.