Embedded Robotics Engineer

What we are looking for:

The National Robotics Engineering Center (NREC) at Carnegie Mellon University has several open positions for embedded systems engineers for robotics applications. We are looking for people with both robotics and non-robotics experience. We are a team with a desire to make robust software and firmware using agile development processes. Your day to day work will include: debugging prototypes, building and programming custom sensors, interfacing custom to commercial hardware, and integrating your work into complex systems. Our current embedded systems engineers have developed mixed hardware/software systems that work under the hot Arizona sun, in the middle of a dense forest, and on a chaotic factory floor.

Primay Responsibilities:

  • Developing embedded software for robotic and general-purpose applications
  • Developing on ARM embedded processor, SoC, and/or FPGA based hardware platforms
  • Supporting hardware development with requirements and technology integration
  • Integrate custom and COTS hardware components: sensors, controllers, networking, etc.
  • Adapting and integrating proprietary and open source software packages and APIs
  • Participating in the software process: design, code reviews, etc.
  • Build new tools for software communication, logging, and data analysis
  • Developing, documenting, testing, troubleshooting, and verifying software
  • Development in a Linux environment

Required Qualifications:

  • B.S. in Engineering, Computer Science, or equivalent experience (Any more is a bonus)
  • Experience with C or C++ on ARM embedded processor, SoC, and/or FPGA
  • Experience with scripting (Bash or Python preferred)
  • Experience in a Linux development environment
  • Technical communication skills
  • Ability to participate in a cross-functional team

Bonus Experience:

We want to hear from you if you have experience or qualifications in ANY of the following areas:

  • Embedded or real time-systems engineering
  • Networking interfaces and applications
  • Developing hardware drivers
  • Embedded Linux
  • Proficient FPGA programming skills (Xilinx preferred)
  • Professional FPGA development tools (hardware description languanges, Vivado preferred)
  • Microcontroller programming (stm32 or other ARM based microcontroller preferred)
  • Electrical engineering and custom circuit design
  • Software Architecture
  • Demonstrated understanding and use of software engineering concepts, practices, and procedures.
  • Computer vision, robotics, machine learning, scientific computing, simulation, or graphics


You will have an impact on shaping the robotics revolution, collaborate with and learn from experts, and build your career in a very fast-growing field. As part of our team, you will develop solutions to solve industrial and government challenges, deploy your technology in real-world situations, work side-by-side with elite robotics experts, and develop a variety of cutting-edge technologies.

Join our talented team at NREC, an operating unit within the world-renowned Robotics Institute at Carnegie Mellon University.

NREC has 20+ years of experience and is globally renowned for developing and deploying robots into many applications across multiple sectors, such as agriculture, mining, defense, energy, and manufacturing. We strive to provide solutions for real-world challenges where automation and robots have a greater impact on productivity and improve the safety and comfort of the labor force. Our unique expertise places us at the forefront of unmanned ground vehicle design, autonomy, sensing and perception, machine learning, machine vision, operator assistance, 3D mapping, and position estimation. With over 120 robotics professionals, we can solve challenges that no other organization can.

At NREC, we value diversity, support it, and thrive on it for the benefits of our organization, our employees and our community. Carnegie Mellon University is an Equal Opportunity Employer/Disability/Veteran.