Москва, Дмитровское шоссе, 9
Метро: ДмитровскаяМы разрабатываем платформу 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». Это то, чем мы занимаемся.
- Это то, что реально используется каждый день миллионами пользователей и десятками тысяч разработчиков
Открытая мобильная платформа
Москва
Не указана
The Skolkovo Institute of Science and Technology
Москва
от 250000 RUR
Научно-производственное объединение дальней радиолокации имени академика А.Л. Минца
Москва
от 250000 RUR