← К результатам

Senior C++ Engineer (1С Platform Core)

з/п не указана
· Россия, Москва, Дмитровское шоссе, 9
Полный день Постоянная занятость опыт от 6 лет
Откликнуться на источнике →

Описание

Мы разрабатываем платформу 1С:Предприятие — один из крупнейших low-code runtime в мире: 10+ миллионов строк C++, 1,5 миллиона предприятий, сотни миллионов запросов в день.Большинство знает 1С как бухгалтерскую программу - мы делаем то, что под капотом: компилятор языка, транзакционные механизмы, отказоустойчивые сервисы, распределённый кластер, собственную IDE.Ищем системного C++-инженера, которому интересно работать на этом уровне. Чем вы будете заниматься- Разрабатывать и поддерживать ключевые подсистемы ядра платформы: аллокаторы, межпроцессное взаимодействие, сервисы кластера- Проектировать и реализовывать высоконагруженные компоненты кластера серверов: балансировка, масштабирование, отказоустойчивость, multitenancy- Работать с компилятором встроенного языка платформы и его runtime: интерпретатор, байт-код, оптимизации выполнения- Решать задачи кросс-платформенной совместимости: один и тот же код должен корректно работать на Windows, Linux, macOS, ARM и Эльбрус — и работать быстро- Рефакторить и улучшать существующую кодовую базу: у нас есть легаси, написанное под C++03, и мы целенаправленно двигаемся вперёд — вы будете частью этого процесса- Влиять на архитектуру: у нас нет жёсткого разделения "пишешь только то, что сказали" — мы ждём инженера, который видит картину целиком Стек и контекст- C++17 — кодовая база прошла миграцию с C++03, задачи уровня memory management, custom allocators, lock-free структуры, concurrency- Highload: multitenancy-кластер, балансировка нагрузки, многопроцессность, десятки тысяч одновременных сессий- Кросс-платформа: Windows, Linux, macOS- Различные архитектуры: x86_64, ARM и Эльбрус- Базы данных: PostgreSQL, MS SQL, собственная In-Memory DB Дата акселератор и собственное двоичное хранилище — работа с планами запросов и низкоуровневыми механизмами хранения входит в повседневную практику- Это роль системного инженера. Не UI, не скриптинг на языке 1С, не поддержка конфигураций. Кого мы ищем- 5+ лет коммерческого C++ с реальными задачами уровня системного ПО, runtime, OS-компонентов или высоконагруженных сервисов- Глубокое понимание модели памяти C++, многопоточности (std::thread, атомики, memory ordering), UB и инструментов его поиска- Знание архитектурных паттернов — и умение объяснить, почему вы выбрали именно этот, а не другой- Системное мышление: вы понимаете, как изменение в одной подсистеме влияет по всей системе, и думаете об этом до того, как пишете код- Умение читать и улучшать чужой код: у нас большая живая кодовая база, а не проект с чистого листа Плюсом будет:- Опыт работы с highload: очереди, backpressure, circuit breaker, профилирование под нагрузкой- Опыт работы с СУБД на уровне ниже ORM: планы запросов, индексы, транзакционная модель- Знакомство с техниками компиляторов или интерпретаторов: AST, байт-код, JIT — хотя бы на уровне понимания принципов- Опыт кросс-платформенной разработки или портирования под ARM/нестандартные архитектуры Условия- Офис у м. Тимирязевская или гибридный формат — обсуждается индивидуально- Зарплата обсуждается - зависит от вашего уровня и ожиданий- Реальные инженерные задачи масштаба продукта, которым пользуются ежедневно — не пет-проект и не CRUD- Команда системных инженеров, а не «поддержка конфигураций»- Хотите посмотреть на задачи изнутри? Наши инженеры выступали на HighLoad++ с разбором реальных проблем кодовой базы — гуглите «1С C++03 C++17 HighLoad» и «1С PaaS HighLoad». Это то, чем мы занимаемся.- Это то, что реально используется каждый день миллионами пользователей и десятками тысяч разработчиков

Источник: hh · Опубликовано: вчера