Agility is pioneering a new era of automation with their commercially deployed humanoids in various industries. They are seeking a Staff/Senior Staff Software Engineer to lead the architectural direction of their Robot Platform, focusing on developing robust software systems that enhance robot functionality and reliability.
Responsibilities:
- Define and Evolve Architecture: Own and drive the long-term technical direction for the robot software stack, including component boundaries, data contracts, inter-process communication protocols (RPC/streaming), and deployment workflows
- Core Frameworks & Services: Take hands-on ownership of the critical, cross-cutting frameworks and core services that are fundamental dependencies for all robot features, such as:
- Behavior coordination and state machine frameworks
- The robot’s belief state and world representation
- Simulation and playback timing coordination mechanisms
- Advanced logging, telemetry, and configuration management libraries
- Performance & Reliability: Drive performance, determinism, and reliability improvements across the entire on-robot software stack, and evaluate and introduce major infrastructure upgrades
- Internal Tooling: Lead the strategy and execution for internal developer tooling, including advanced debugging utilities and scripts for provisioning and testing within simulation and hardware environments
- Technical Advisor: Act as the primary technical advisor, mentoring Senior and Staff-level engineers on system design, developer experience, and best practices across the full software development lifecycle
- Drive Adoption: Champion the adoption of internal tools and foundational frameworks by cultivating strong collaboration and iterating based on organizational feedback
- Engineering Partnership: Partner directly with AI, Controls, and Perception teams to ensure frameworks meet their performance and capability needs, accelerating their feature delivery
- Data Platform: Coordinate with the Data Platform team on advanced logging, serialization, and telemetry strategies
- Release Alignment: Align with OS and Release teams on container, image, and deployment primitives, focusing on high-level integration points rather than low-level operating system ownership
Requirements:
- 12+ years of professional experience in high-performance, real-time, or deeply embedded software engineering, with a significant track record in robotics or similar complex, integrated systems
- Demonstrated expertise in defining and evolving large-scale software architectures, and a history of ownership over mission-critical, cross-cutting frameworks
- Mastery of modern C++ and expert-level proficiency in systems programming on Linux
- Expertise in designing, building, and operating low-latency and highly reliable distributed systems, particularly those with strict timing and determinism requirements
- Proven experience mentoring and providing architectural guidance to Staff and Principal-level engineers
- Exceptional ability to autonomously gather complex, cross-team requirements, communicate high-stakes technical trade-offs, and deliver foundational internal solutions
- Robotics industry experience
- Familiarity with 3D graphics programming
- Proficiency in Rust or Go
- Kubernetes or other container orchestration systems
- Bazel or other or similar build systems
- Experience writing and extending code generators