We are looking for a Principal Robotics Engineer to set the technical direction for how our robots make decisions. Today, much of that logic sits in handwritten C++. You will move it into behavior trees or a similar formal model, so that a reader can follow and test a flight from a file. You will also define how these models request flight skills from the autopilot, and you will make the stack reusable on a second robot. This is a technical authority role with no people to manage. You will join an autonomy team of five engineers, report to the Team Lead Autonomy, and work closely with our Principal Systems Engineer. We want a strong robotics generalist with deep C++ skills and real depth in at least one area: state estimation, motion planning, control, or perception. Own the behavior layer : design the nodes , the ports , and the structure that makes a flight readable and testable as data rather than as code. Move the remaining flight authority out of hand- written logic and into the tree , and prove that the new path behaves like the old one before we delete the old one . Define how the companion computer asks the autopilot for a flight skill , and how it reads back whether that skill is running , finished , or refused . Draw the line between what is shared across robots and what each robot writes for itself , so that a second platform reuses the stack instead of forking it. Make failures legible : a log and a trace should tell a reader which check said no , and why . Work across the autonomy , perception , platform , and testing teams , since the behavior layer touches all of them . Raise the technical bar: design reviews , code reviews , and the written arguments that go with them . Mentor engineers , without holding a management line . Have around 5 years or more of robotics software experience. Leadership experience is not required. Have deep C++ expertise, and the judgment to design a system that other people will extend. Have real experience with behavior trees, or with another explicit way of expressing robot behavior, and clear opinions about where that approach breaks. Have a breadth of knowledge across robotics: state estimation, motion planning, control, or perception. Depth in at least one of them. Have Experience with robots that run in the physical world , not only in simulation . Possess the ability to take a design apart in a discussion and put it back together better.