Principal Software Engineer (Manipulation)
Berkshire Grey
- Bedford, United Kingdom
- Lead/Staff
- 10+ years
- Bachelor's degree
- Posted
Skills
Required
- software development
- deployment
- Robotics
- integration
- simulation
- programming
- Python
- Jira
- C++
- MongoDB
- ROS
- Ubuntu
Preferred
- validation
- algorithms
- motion planning / motion execution / multi-arm coordination / robotic kinematics / control strategies / environment representation
- RESTful
- gRPC
Join Berkshire Grey as a Principal Software Engineer, where you will lead the advancement of robotic manipulation capabilities. You will define architecture, set technical direction, and develop advanced software for robots to interact with their environments and complete complex tasks. This role requires deep technical judgment, hands-on software development, cross-functional leadership, and autonomous contribution to manipulation capabilities.
Contribuer de manière autonome à l'architecture logicielle, à la stratégie technique et à la feuille de route à long terme des capacités de manipulation robotique.
This is an ideal role for a principal engineer who enjoys solving difficult robotics problems, guiding major technical decisions, mentoring other engineers, and seeing advanced manipulation software operate reliably on production systems
Responsibilities
- Diriger le travail sur la planification du mouvement, la cinématique, les stratégies de contrôle, l'exécution du mouvement, la coordination multi-bras, la représentation de l'environnement, la simulation et l'intégration du matériel robotique.
- Établir la direction technique pour les systèmes de manipulation et diriger des efforts d'ingénierie complexes depuis les exigences et la conception jusqu'à la mise en œuvre, la validation, le déploiement et le support opérationnel.
- This role requires deep technical judgment, hands-on software development, cross-functional leadership, and autonomous contribution to manipulation capabilities from concept and design through validation, production deployment, and long-term support
- Demonstrated ability to set technical direction and deliver well-designed, well-implemented, and thoroughly tested solutions that meet demanding internal and customer requirements
- Proven ability to influence multidisciplinary teams, communicate effectively with technical and non-technical stakeholders, and mentor engineers across experience levels
- Extensive experience designing and implementing production software and algorithms for motion planning, motion execution, multi-arm coordination, robotic kinematics, control strategies, and/or environment representation
- Experience architecting and developing RESTful interfaces, gRPC services and clients, and other reliable communication interfaces for distributed robotic systems
- Experience establishing robotics simulation tools, test environments, and validation strategies for complex manipulation capabilities
Requirements
- Bachelor’s degree in Robotics, Computer Science, or a closely related field with 10+ years of professional software development experience in production environments; or a master’s degree with 8+ years of experience
- Advanced experience with Git-based development workflows, code reviews, issue tracking systems such as Jira, and automated testing, including unit, integration, simulation, and hardware-in-the-loop testing
- Expert-level development skills in Python and strong programming experience in C++
- Deep knowledge of system design principles, software architecture, and design patterns, with a record of evolving complex systems over time
- Ability to lead ambiguous or ill-defined technical problems from initial investigation through architecture, planning, implementation, deployment, and operational support
- Deep understanding of parallel and distributed systems and asynchronous or concurrent programming
- 12+ years of software development experience in production environments, including significant technical leadership in robotic manipulation systems
- Deep experience with Python’s asyncio library or similar asynchronous programming frameworks
- Master’s or doctoral degree in Robotics, Computer Science, or a closely related field
- Experience leading the development and integration of drivers and software interfaces for robotic hardware, particularly robotic arms
- Experience architecting data models and services using NoSQL databases such as MongoDB
- Experience taking manipulation capabilities from research or prototype stages through robust deployment in real-world customer environments
- Advanced experience with ROS or ROS2 architecture, integration, performance analysis, and production deployment
- Deep experience developing, debugging, and operating production software in the Linux ecosystem, preferably Ubuntu
Pay
USD 140,000 - 220,000
jobapplier