Senior Software Engineer (Robotics Manipulation)
Berkshire Grey
- Bedford, United Kingdom
- Senior Level
- 4+ years
- Bachelor's degree
- Posted
Skills
Required
- integration
- software development
- motion planning / motion execution / multi-arm coordination / robotic kinematics / environment representation
- Python
- version control
- Git
- code reviews
- issue tracking
- Jira
- gRPC
- MongoDB
- C++
- ROS / ROS2
Preferred
- robotics
- simulation tools and
- test environments
- kinematics
- control strategies
- simulation software
- scope
Join our team as a Senior Software Engineer specializing in robotics manipulation. In this role, you will develop advanced software that enables robots to interact with their environments and complete complex tasks. You will design, develop, and support robotic manipulation software, create high-performance solutions, and work closely with hardware engineers and product managers. You will also provide technical leadership and mentorship to junior engineers.
Responsibilities
- Design, develop, and support advanced robotic manipulation software deployed in production environments, focusing on motion planning, kinematics, control strategies, and motion execution.
- Utilize and extend simulation software environments to test and refine manipulation development, ensuring expected and robust performance.
- Provide technical leadership and mentorship to junior engineers, and clearly and proactively communicate technical priorities and status.
- Ability to handle ambiguous or ill-defined problems, and scope, plan and implement solutions for them
Requirements
- Experience with version control (Git), code reviews, issue tracking (Jira) and automated testing (unit, integration, and hardware-in-the-loop)
Familiarity with system design principles and design patterns
- Understanding parallel/distributed systems and asynchronous/concurrent programming
- Bachelor’s degree in Robotics, Computer Science, or a closely related field
- Experience in designing and developing RESTful interfaces, gRPC services/clients, etc
- 4+ years of professional software development experience in a production environment
- Ability to work collaboratively in a team setting and communicate effectively with both technical and non-technical stakeholders
- Experience in designing and implementing software and algorithms for motion planning, motion execution, multi-arm coordination, robotic kinematics, and/or environment representation
- Strong development expertise in Python
- Strong drive to deliver well-designed, well-implemented and well-tested solutions to meet internal and external requirements
- Familiarity with Python’s asyncio library
- Experience with NoSQL databases (e.g., MongoDB)
- Programming experience in C++
- Familiarity with the Linux ecosystem
- Experience with development and integration of drivers for robotic hardware, particularly robotic arms
Experience with ROS/ROS2
- 6+ years of experience in software development in a production environment
- Master’s degree in Robotics, Computer Science or a closely related field
Preferred
- Familiarity with robotics simulation tools and test environments
Pay
USD 112,000 - 180,000
jobapplier