We invest in visionary teams with transformative ideas.

Join Canaan's extended family.
221
companies
886
Jobs

Senior Principal Software Engineer - Manipulation Planning

Berkshire Grey

Berkshire Grey

Software Engineering
Bedford, MA, USA
Posted on Friday, September 8, 2023
  • The Engineer in this role will work with a multidisciplinary team to develop planning software and algorithms for robotic manipulation applications related to store replenishment and e-commerce order fulfillment.
  • This candidate will be expected to be a primary contributor and leader driving to real-world customer delivery, acceptance, and operation.

Skills/Technical Requirements:

  • Masters or PhD in Computer Vision, Robotics, or closely related field
  • 12+ years experience in software development
  • Experience in designing and implementing solutions for manipulation related problems on real robotics systems
  • Experience in applying or implementing geometric algorithms to solve "real-world" problems
  • Commercial experience in a fast paced, agile environment
  • Ability to work as part of an interdisciplinary team
  • Demonstrated ability to
  • Lead major sub-domains of the robotic manipulation problem
  • Apply planning algorithms to real-world manipulation problems
  • Ability to synthesize approaches to problems from new or existing techniques
  • Provide technical leadership on key projects
  • Architect software solutions
  • Operate autonomously
  • Develop on and debug real robotic systems
  • Determine and communicate justification of technical priorities to management
  • Mentor
  • Manage execution of technical efforts across a small team
  • Proficient in
  • Motion planning libraries (e.g. OpenRave, OMPL, DART, SBPL, prpy, etc)
  • Python
  • C++
  • System design
  • Design patterns
  • VCS (Git)
  • Issue tracking system (Jira)

Preferred Qualifications:

  • Demonstrated abilities in one or more of the following
  • Trajectory generation for 6-DOF manipulators
  • Applying geometric algorithms to real-world problems
  • Applying nonlinear or combinatorial optimization techniques
  • API development (RESTful, websockets)
  • Robotics and robotic solutions
  • Parallel/distributed systems
  • Asynchronous/concurrent programming (asyncio)
  • NoSQL databases (MongoDB)
  • Messaging Systems (gRPC, Kafka)
  • CI/CD (Jenkins, automated testing)

Educational Requirements: Master’s degree in Computer Science, Robotics, or closely related field

6110-2320BC