Mar 23, 2017

Principal Embedded Software Engineer

  • iRobot Corporation
  • Bedford, MA, United States
Full time C C++

Job Description


iRobot Corporation, with a mission of “empowering people to do more” is at the forefront of the development of robotics and artificial intelligence technologies. iRobot has become one of the world’s preeminent specialist designers and builders of consumer robots. iRobot invests in the development and growth of its people, in a culture of empowerment, innovation and fun. Come work with some of the most talented and influential people in the robotics field utilizing cutting edge technologies, in an exciting, fast-growing industry! 


iRobot Engineering is expanding, and is looking for an exceptional senior embedded software engineer to join our team. Key personality attributes should include passion, energy, and the desire to build.

Essential Functions/ Job Duties:

What you will do:

As part of Product Development, you will be designing and implementing new technologies and features into next generation iRobot products.  Working in an Agile development process, you will design, implement, and document software to run on embedded platforms.


As a team, you will create cutting-edge sensors, processor mainboards, navigation software and motion control systems.  Job functions will include: system level design, board bring up, low level driver implementation, and advanced analog/digital signal processing.


  • Experience with real-time embedded microprocessor and microcontroller systems
  • Solid understanding of design patterns, data structures and advanced programming techniques
  • Knowledge of embedded software such as: interrupts, ADCs, DMA, SPI and clock management
  • Expert in embedded C/C++
  • Strong analytical skills and a desire to learn
  • Ability to understand electrical schematics and the fundamentals of analog circuits
  • Strong understanding of operating system fundamentals, and experience bringing up embedded OS’s on new platforms
  • Ability to work independently, without direct supervision
  • B.S. in Computer Science / Computer Engineering or other technical or scientific field

 Desired Qualifications

  • MS in Computer Engineering, Computer Science, or equivalent
  • Previous experience designing and building circuit boards
  • Foundation in control theory, and experience writing control loops

iRobot is an “Equal Opportunity Employer, Minority / Female / Veteran / Disabled”

Apply Now