Software Engineer - Robotics
Apptronik is building robots for the real world to improve human quality of life and to help solve the ever-increasing labor shortage problem. Our team has been building some of the most advanced robots on the planet for years, dating back to the DARPA Robotics Challenge. We apply our expertise across the full robotics stack to some of the most important and impactful problems our society faces, and expect our products and technology to change the world for the better. We value passion, creativity, and collaboration to help us overcome existing technological barriers in the industry to create truly innovative products.
You will join a team developing a state-of-the-art general-purpose robots designed to operate in human spaces and with human tools. It is designed to work alongside humans, mobilize to human spaces, and manipulate the world around it.
We're looking for an experienced Software Engineer - Robotics with proven hands-on capabilities and a strong theoretical background. We are primarily interested in candidates with prior robotics hardware implementation experience. In this role, you will create high-level planning and control algorithms, implement them in software simulation, and bring them to life on a robot platform. You will work as part of a team focused on developing a dynamic humanoid robot robust to unstructured environments and able to perform useful tasks.
Specifically, we seek an experienced Software Engineer with proven hands-on capabilities and a strong theoretical background. We are primarily interested in candidates with prior implementation experience on robotics hardware. In this job role, you will develop high-level planning and control algorithms and implement software in C++ for a variety of robotic platforms.
- 2+ years of relevant industry experience
- Bachelor’s degree in Computer Science, Electrical/Mechanical/Aerospace Engineering/or similar, or equivalent. Master’s degree preferred
- Proficient in C++ in a Linux development environment, with prior demonstrated ability to:
- Translate complex theoretical concepts and algorithms into practical, efficient, and bug-free software implementations
- Perform on a fast-paced software development team using standard CI tools like Git while following rigorous documentation and testing standards
- Strong theoretical understanding of some significant subset of dynamics, controls, estimation, and linear algebra
- Proven experience developing and debugging real-time, multithreaded software systems
- Experience implementing model-based feedback control of articulated robots and troubleshooting hardware
- Excellent communication and documentation skills
Nice to have
- Experience with complex robotic systems, especially planning and control for grasping and manipulating generic objects with a robot arm in an industrial automation context
- Familiarity with any of the following:
- Experience with modeling dynamic systems, system identification, and optimization solvers
- Experience with embedded systems and firmware development
- Familiarity with RTPreempt and Linux kernel configuration
- Experience with EtherCAT
- Creative, analytical, and disciplined
- A passion for robotics
- Competitive base w/ benefits
- Highly motivating equity incentive package
- Flexible work hours policy
- Professional development opportunities
- Unlimited Paid Time Off (PTO)
- 401k plan
*This is a direct hire. Please, no outside Agency solicitations.
Apptronik provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type without regard to race, color, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state or local laws.