Principal C++ Engineer
Отличное предложение для высококвалифицированных инженеров: работа над сложным техническим продуктом, удаленка в Германии, прозрачная система пересмотра зарплаты и фокус на качестве кода. Балл снижен только из-за географического ограничения (только Германия).
Сформировано ИИ автоматически. Не является проверкой вакансии или работодателя.
Сложность вакансии
Роль требует исключительных навыков в низкоуровневом C++, проектировании детерминированных систем и Data-Oriented Design. Уровень Principal подразумевает не только написание кода, но и владение всей архитектурой симуляции, способной обрабатывать сотни тысяч объектов.
Сформировано ИИ автоматически. Не является проверкой вакансии или работодателя.
Анализ зарплаты
Зарплата 'Negotiable', но для позиции Principal C++ в геймдеве Германии рынок стартует от 85-90к евро. Предложение с автоматической индексацией 2% и ежегодным пересмотром является очень конкурентным для немецкого рынка.
Сформировано ИИ автоматически. Не является проверкой вакансии или работодателя.
Описание вакансии
PRINCIPAL C++ ENGINEER (TOBSPR GAMES)
*🕹* Factory simulation game
*🧠* Principal
*💰* Negotiable
*⏰* Full-time
*🌎 Remote within Germany 🇩🇪*
*🦄* Description
We're looking for a Principal C++ Engineer to own the factory simulation of our next game. The game is built in Unreal Engine 5, but the simulation will be self-contained and written in raw C++.
Players will place hundreds of thousands of machines, belts, pipes, and more across a large world, and every one of them has to deterministically update on every player's device in a co-op session. You'll design that simulation module from the ground up as one of the first engineers on a new game team, working closely with the Engineering Team Lead and the Game Design department.
*🚀* Responsibilities
• Design and build a deterministic factory simulation that scales to hundreds of thousands of player-placed buildings
• Own the sim architecture: data layout, tick model, threading, and serialisation format
• Work with the Networking Engineer so the sim and co-op are designed together, not bolted on later
• Set and meet the CPU performance budget for the sim on our minimum specification target
• Review code and mentor other engineers on C++ and architecture
*📚* Required Skills
• Experience in professional C++ environments where you have architected, implemented, and maintained performant modules which are built on by other engineers, and lived with the consequences of your design choices
• Deep knowledge of data-oriented design, multithreading, and performance, including CPU profiling and applying algorithmic complexity-based analysis to select the right data structures
• Built a deterministic or lockstep system, or can show how you'd approach one
• A track record of mentoring engineers and making architectural decisions in writing that others could follow and challenge
*👍* Nice to Have
• 2+ shipped game titles
• Worked on a factory, automation or simulation-heavy game
• Worked in Unreal Engine, especially with Mass Entity or a custom ECS in Unreal
*🍪* What we offer
• Fully Remote: We employ directly inside Germany
• Flexible working hours!
• Paid overtime, on the rare occasions it happens
• A hardware budget to ensure you have the ergonomic setup and hardware you need to work comfortably
• A monthly personal growth allowance for courses, books or other learning material
• Focus days to research or learn new skills
• A yearly team gathering to meet and collaborate in person
• A yearly salary review to keep your pay in line with the market, and an automatic increase of 2% per year
Умный подбор, сопроводительные письма, советы по отказам — больше приглашений.

Навыки
- C++
- Unreal Engine 5
- Multithreading
- Data-oriented Design
- CPU Profiling
- Architecture
- ECS
- Networking
Возможные вопросы на собеседовании
Необходимо понять, как кандидат обеспечит идентичность состояния игры у всех игроков в кооперативе.
Как вы планируете обеспечивать детерминизм в C++ симуляции, учитывая различия в компиляторах и обработке чисел с плавающей запятой?
Ключевое требование — масштабируемость до сотен тысяч объектов.
Какие структуры данных и подходы Data-Oriented Design вы бы использовали для эффективного обновления сотен тысяч активных сущностей (конвейеров, машин) за один кадр?
Симуляция должна работать в многопоточном режиме без гонок данных.
Опишите вашу стратегию распараллеливания тиков симуляции: как вы будете минимизировать накладные расходы на синхронизацию потоков?
Важно понимать, как симуляция будет интегрирована с сетевым кодом.
Каким образом вы организуете сериализацию состояния симуляции для быстрой передачи данных при подключении нового игрока (hot-join)?
Роль Principal подразумевает лидерство.
Расскажите о случае, когда вам пришлось принимать сложное архитектурное решение, с которым была не согласна часть команды. Как вы аргументировали свою позицию?
Сформировано ИИ автоматически. Не является проверкой вакансии или работодателя.

