You are viewing a preview of this job. Log in or register to view more details about this job.

Principal Software Engineer, Algorithm Development

Summary

Do you have a passion for robotics? Do you want to code the future of one of the largest consumer robots company in the world? You will have a hand in developing the next generation of products that will live in millions of homes all across the world. As a pioneer in the robot industry, our goal is to drive innovation, serve as an industry catalyst and change the world by empowering people to do more. 

Essential Functions/ Job Duties

Our Software Engineering Team is rapidly growing and we're looking for an exceptionalPrincipal Software Engineer to join our team. We're looking for someone with great interpersonal skills, passion, energy, and the desire to build.

 

  • Design, implement, test, and document robotics, navigation, and vision algorithms in C/C++ on desktop and embedded platforms. The candidate will participate in the creation of the next generation of consumer robotics products developed at iRobot.
  • The position’s responsibilities also include validation and characterization of the products developed at iRobot including embedded solutions for vision and navigation, robotics components, and hardware.
  • The position involves a substantial portion of “hands-on” work and requires an individual able to work independently with minimal supervision.

Qualifications

  • Experience developing robotics, navigation, or vision systems.
  • You are writting code in C++
  • Working understanding of computer systems including concurrent programming, operating systems, compilers, and computer architecture.
  • Working experience in both Linux and Windows.
  • Experience validating complex systems involving hardware, software, and mechanical components.
  • Strong analytical skills and mathematical foundation.
  • Minimum of 3 years experience in algorithm implementation using C and C++.
  • A solid engineering background with hands-on design and development experience.
  • Excellent verbal and written communications skills.
  • Strong problem solving and analytical skills.
  • Ability to learn quickly
  • Minimum Degree: MS in Computer Science, Electrical Engineering, or related field.

 

Preferred Qualifications:

  • Ability to build/assemble/modify electronic assemblies or robots into various configurations for test purposes.
  • Understanding of and experience with any of the following: behavior-based control, navigation, path-planning, obstacle avoidance, SLAM, estimation and control.
  • Understanding of and experience with GTSAM
  • Understanding of and experience with any of the following: object recognition, structure from motion, 3D reconstruction, ego-motion estimation, feature extraction and matching face recognition.
  • Algorithm prototyping/development with Matlab and/or Python.
  • MS or PhD in Computer Science, Electrical Engineering, or related field.

 

 

About Us

We are the leading global consumer robot company, designing and building robots that empower people to do more, both inside and outside of the home. Founded by MIT roboticists who had the vision of making practical robots a reality. To date, we have sold over 20 million robots and globally employ more than 600 of the robot industry’s best and brightest. iRobot is committed to fostering invention, discovery and technological exploration in the pursuit of practical and valuable robot products for the home. iRobot stock trades on the NASDAQ stock market under the ticker symbol IRBT.

 

iRobot is headquartered in Bedford, Massachusetts, accessible by our corporate shuttle directly from Alewife Station. We also have offices in California, the United Kingdom, Japan, China & Hong Kong. Imagine the future you could help us build as a fellow iRoboteer! Check out #LifeAtiRobot and follow us on Instagram: @irobotcareers