Forterra
Senior Software Engineer, Platform Integration
Автоматический пересказ вакансии на русском. Полный текст на языке оригинала и форма отклика — на сайте работодателя.
Senior-инженер в команду платформы Fabric — распределённой системы регистрации, обнаружения и репликации данных в mesh-сетях. Задача — делать интеграции и developer-facing API, SDK, адаптеры и документацию, чтобы Fabric было проще внедрять внутри продуктов Forterra и у внешних партнёров.
Задачи
- Проектировать и разрабатывать API, SDK, адаптеры и инструменты интеграции для использования Fabric приложениями и партнёрскими системами
- Определять чёткие интерфейсы для регистрации, обнаружения, запросов, подписки и репликации критичных данных
- Строить интеграции Fabric с autonomy-сервисами, системами command-and-control, операторскими интерфейсами, бортовыми платформами, веб-приложениями и внешним ПО партнёров
- Разрабатывать и поддерживать API на gRPC, REST, Protocol Buffers и аналогичных технологиях
- Задавать паттерны эволюции схем, версионирования, совместимости, сериализации, аутентификации, авторизации и обработки ошибок
- Переводить реальные интеграционные требования в практичные технические решения и production-ready реализации
- Работать напрямую с внутренними командами и внешними интеграторами: разбирать проблемы, закрывать пробелы и улучшать developer experience
- Создавать тестируемые, наблюдаемые и поддерживаемые сервисы для распределённых сред с периодической связностью
- Готовить примеры интеграций, референсные реализации, автоматизированные тестовые стенды и документацию для разработчиков
- Улучшать инструменты и процессы локальной разработки, симуляции, интеграционного тестирования, деплоя и поддержки в поле
- Сотрудничать с командами platform, autonomy, networking, TerraLink, ATAK, web и product для выработки единых интеграционных паттернов
- Участвовать в формировании технического роадмапа, архитектуры и долгосрочной стратегии платформы Fabric
- Участвовать в design review и понятно доносить технические решения до инженерной и интеграционной аудитории
Требования
- Bachelor's degree in Computer Science, Engineering или эквивалентный практический опыт
- 4+ года профессионального опыта разработки production-ПО
- Сильный опыт проектирования и реализации API, интеграций, backend-сервисов или developer-платформ
- Владение одним или несколькими современными языками: C++, Rust, Go, Python, Java, Kotlin или TypeScript
- Опыт с API и интерфейсными технологиями: gRPC, REST, GraphQL, Protocol Buffers или аналогичными
- Понимание основ распределённых систем: коммуникация сервисов, репликация, консистентность, обработка отказов, конкурентность и восстановление
- Опыт работы с моделями данных, форматами сериализации, эволюцией схем и обратной совместимостью
- Сильные навыки тестирования: unit, integration, contract и end-to-end
- Опыт разработки и отладки ПО в Linux-окружении
- Умение работать напрямую с партнёрскими командами или заказчиками: выявлять требования и предлагать практичные решения
- Подтверждённая способность доводить технические проекты от концепции до продакшена
- Сильные навыки письменной и устной коммуникации, умение понятно объяснять сложные системы
Условия
- Salary range: $145,000 - $165,000 (Arlington, VA); $155,000 - $175,000 (Palo Alto, CA)
- Equity в Forterra включён в большинство full-time ролей
- Три варианта медицинского страхования, включая HSA-план; Forterra покрывает 80% премии для сотрудника и иждивенцев
- Basic Life/AD&D, краткосрочная и долгосрочная нетрудоспособность — 100% покрытие Forterra, опция докупить страхование жизни
- Щедрый календарь корпоративных праздников, включая зимние каникулы в декабре
- 20 дней оплачиваемого отпуска в год
- Минимум 7 недель полностью оплачиваемого родительского отпуска при рождении/усыновлении
- $9k в год на обучение или профессиональное развитие
- 401(k) с традиционными, Roth и after-tax взносами и матчингом компании до 4%
- Возможна проверка на получение и поддержание U.S. security clearance
Навыки
- C++
- Rust
- Go
- Python
- Java
- Kotlin
- TypeScript
- gRPC
- REST
- GraphQL
- Protocol Buffers
- Distributed Systems
- Linux
- DDS
- ZeroMQ
- MQTT
- NATS
- Kafka
- UDP
- TCP
- multicast
- routing
- containers
- CI/CD
- infrastructure-as-code
- observability
- logging
- metrics
- tracing
- CMake
- Conan
- Bazel
- Cargo