Control Systems Software Engineer, Robotics
About The CompanyOpenAI is an AI research and deployment company dedicated to ensuring that general-purpose artificial intelligence benefits all of humanity. We push the boundaries of the capabilities of AI systems and seek to safely deploy them to the world through our products. AI is an extremely powerful tool that must be created with safety and human needs at its core, and to achieve our mission, we must encompass and value the many different perspectives, voices, and experiences that form the full spectrum of humanity.ResponsibilitiesDesign and implement real-time control algorithms for robotic systems, including motion control, feedback loops, state estimation, actuator control, and subsystem tuning.Define the control architecture from low-level actuators and hardware interfaces through whole-robot behavior and policy.Identify and characterize actuator, hardware, and software parameters through rigorous experimentation, testing, commissioning, and verification.Work with machine learning engineers to implement reinforcement learning models.Collaborate across mechanical, electrical, and software teams to integrate control logic with sensing and actuation hardware.Help inform the mechanical and electrical design to maximize capability and flexibility.Create the control system architecture; determine the correct level of abstraction from actuators all the way up to whole-robot policy.RequirementsHave a strong robotics background, including manipulators, mobile robots, or other complex physical systems.Have experience with actuation, control systems, robot dynamics, estimation, subsystem tuning, or whole-body motion.Are comfortable being hands-on with robotic hardware, including commissioning, debugging, testing, and iterating on real robots.Have strong fundamentals in classical control, system dynamics, and estimation, with exposure to modern learning-based or reinforcement learning approaches.Can move comfortably across the stack, from low-level actuator behavior and hardware interfaces to higher-level algorithms and whole-robot performance.Have experience writing performant production-quality software in C++ or Rust.Experience with robotic hardware and enjoy iterating quickly between simulation and real-world testing environments.