Carnegie Mellon University

Software Engineer

What we are looking for:

The National Robotics Engineering Center (NREC) at Carnegie Mellon University is seeking applicants for the position of Software Engineer for existing and new projects. In this position, you will work on a variety of software and embedded systems that are used in the robotics perception systems. You’ll have an opportunity to collaborate on an internal team and with sponsoring partners to support the work through all lifecycle stages.

Our team has members with diverse backgrounds both in robotics and other industries aligned to make robust software and firmware that is useful in the world. Projects you may support range from industrial machine operator assist systems to agricultural productivity tools and beyond to other automation, autonomy, or safety systems. Your day to day work will include: interfacing and programming for custom sensors and hardware, debugging prototypes, and integrating your work and other software modules into complex systems.

  • Design, develop, document, test, troubleshoot, and maintain software applications and integrated systems for both robotic and general-purpose applications.
  • Develop computer vision algorithms for real world applications.
  • Create and maintain development tools and infrastructure for robotic systems.
  • Adapt and integrate proprietary and open source software packages and APIs.
  • Transition applications to embedded CPU/GPU/FPGA code for production.
  • Build new tools for software communication, logging, and data analysis.
  • Gather and provide input on functional specifications and requirements.
  • Supporting business user questions/issues regarding applications and/or systems issues and availability.
  • Interact with the team and sponsors for planning, application support, and reporting purposes.
  • Participate in the software process: design, code reviews, etc.
  • Survey literature and implement state of the art techniques to solve challenging problems.
  • B.S. in Computer Science, Engineering, Mathematics or equivalent experience (more is a bonus).
  • 3+ years combined graduate academic and professional software development experience.
  • Demonstrated understanding and use of software engineering concepts, practices, and procedures.
  • Knowledge of basic computer vision principles.
  • Proficient C++ skills.
  • Experience with scripting languages for quick prototyping (Python preferred).
  • Linux development experience.
  • Experience with network communications and protocols.
  • Solid technical communication skills.
  • Demonstrated success working as part of a cross-functional team.

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

  • Computer vision, robotics, machine learning, scientific computing, simulation, or graphics.
  • Embedded or real time-systems engineering.
  • Microcontroller programming (stm32 or other ARM based microcontroller preferred).
  • Embedded Linux.
  • Data science or data management.
  • Networking interfaces and applications.
  • Developing hardware drivers.
  • Software Architecture development and requirements development.

Have an Impact!

Take Control of Your Career!

  • Select the career pathway that interests you
  • Influence the direction of projects
  • Supportive of a non-standard schedule
  • Maintain work/life balance
  • Switch between part-time and full-time as life demands

NREC is at the center of the robotics ecosystem in Pittsburgh, PA. With over 60 robotics companies, Pittsburgh has become the robotics capital of the world. Geek Wire calls it Robotics Row; others call it Roboburgh. Join the leader in the most exciting time in robotics!

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.

NREC also leads in educational outreach through its Robotics Academy, which builds robotics curricula and software for K-12 and college-level students.

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.