Berkshire Grey
Senior Software Engineer, Robotics
Berkshire Grey, Bedford, MA, United States
Minimum Qualifications:
- Bachelor's degree in Robotics, Computer Science or a closely related field.
- 4+ years of experience in software development with a focus on robotics and manipulation.
- Strong expertise in Python.
- Experience developing for robotic manipulation, including experience working with ROS 1/2, MoveIt!, OpenRAVE, or similar frameworks.
- Experience in designing and implementing software and algorithms for motion planning, motion execution, multi-arm coordination, robotic kinematics, and/or environment representation.
- Familiarity with simulation tools and environments for testing and validating robotic systems.
- Ability to work collaboratively in a team setting and communicate effectively with both technical and non-technical stakeholders.
- Familiarity with system design, and design patterns.
- Master's degree in Robotics, Computer Science or a closely related field.
- 6+ years of experience in software development applied to robotic manipulation.
- Proficiency in modern C++.
- Experience with development and integration of drivers for robotic hardware (including Fanuc / ABB robot arms).
- Experience in developing APIs and SDKs for robotic systems.
- Experience in developing RESTful, and/or gRPC services/clients.
- Experience with the Robotic Operation System (ROS2).
- Experience with NoSQL databases (e.g. MongoDB).
- Familiarity with CI/CD pipelines, Docker/Kubernetes, and software testing frameworks (e.g. pytest).
- Understanding of parallel/distributed systems and asynchronous/concurrent programming.
- Knowledge of the material handling field.
Berkshire Grey is a leader in the field of AI and robotics, providing innovative solutions for e-commerce, retail replenishment, and logistics. Our technology automates complex pick, pack, and sort operations.
In the role of Senior Software Engineer, Robotics, focusing on manipulation, you will play a pivotal role in enhancing the capabilities of our robotic solutions. Your work will involve developing advanced software that enables robots to interact with their environments in completing complex, real-world tasks.
Responsibilities
- Design, develop, and support advanced robotic manipulation software deployed in production environments.
- Create high-performance software solutions for robotic manipulation, focusing on motion planning, kinematics, control strategies and motion execution, to enhance the robotic solutions.
- Utilize and extend simulation software environments to test and refine manipulation development, ensuring expected and robust performance.
- Work closely with hardware engineers, product managers, and other software teams to integrate capabilities into our broader robotic systems.
- Provide technical leadership and mentorship to junior engineers.
- Communicate technical priorities and status.
6110-2501RL