Software Engineer - Autonomy
Austin
Job Description Job Description 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 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 are seeking a talented and experienced Autonomy - Software Engineer to join our team at Apptronik, where you will play a key role in developing advanced humanoid systems. In this position, you will be responsible for designing and implementing a robust behavior architecture, providing various behavior authoring tools such as state machines and behavior trees. In addition, you will collaborate with multidisciplinary team members to develop and implement a full autonomy stack and ensure high-quality, reliable software that can be deployed in real-world scenarios.
Responsibilities
Work hands-on with the robots to test, verify, and constantly push what robots can do
Develop and test advanced manipulation control algorithms for whole-body manipulation tasks
Lead advanced software development activities, including architecture, design, coding, unit testing, integration, deployment, and maintenance within assigned autonomy algorithms software components
Must Have
Bachelor's degree in Robotics, Computer Science, Electrical/Mechanical/Aerospace Engineering or similar, or equivalent; Master's or Ph.D. degree preferred
2+ years of relevant industry experience, with experience implementing, testing, and deploying manipulation or navigation algorithms
Familiarity with modern behavior authoring methods, such as Finite State Machines, Behavior Trees, or Behavior Composition
Strong software development skills in modern C++ in Linux
Strong ability to collaborate with other software teams (e.g perception or controls) to ensure the seamless integration of software components with the overall system
Ability to communicate technical information effectively both orally and in writing with other team members
Nice to Have
Passionate about building humanoid robots
Experience in working with robotic hardware, including sensors, actuators, and robotic arms
Experience with real-time systems and multi-threaded software development
Expertise in related technical areas such as impedance/force control, model predictive/adaptive control, optimization, system identification, state estimation, or legged robots
Familiarity with standard agile and software development processes, including issue tracking tools (Jira), feature branching, version control (Git), continuous integration, and deployment
Ability to thrive in a fast-paced environment with unclear solutions requiring exploration
Familiarity with any of the following: ROS
Software Design Patterns
PyTorch
EtherCAT
Perks
Competitive base w/ benefits
Highly motivating equity incentive package
Flexible work hours policy
Professional development opportunities
Open 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.