Carnegie Robotics is seeking creative, energetic and driven Software Engineers with strong hands-on development skills to work on a variety of interesting and challenging robotics perception and control projects. This position provides the opportunity to join a team of talented veterans in the robotics field and program advanced sensors and autonomous robots from the ground up. The ideal applicant for this position has brains, creativity, and strong experience developing and testing software for robotics and/or sensing applications. We seek candidates who take pride in building solid, rigorously tested systems. Experience and interest in production-level coding and testing methods is a plus for this position.
Due to the nature of some of our work, US Citizenship or Permanent Residency is preferred.
Responsibilities and Duties
- Create software for robotics components and systems, including algorithms, high-level C++, lower-level C code, and user interfaces.
- Test software in system integration laboratories, simulation, and on fully-realized robots.
- Analyze system performance through the use of data logs and the creation of post-processing software and scripts.
- Work in the design space by writing use cases, software specifications, hold and participate in design reviews and coding peer reviews.
- Work with sensors and lower-level technologies like serial buses, Ethernet, and CAN.
- Integrate different sensor, actuator, and computing technologies into robotic systems.
- Document software using industry-standard best practices.
- Conform to company policies regarding confidentiality, software licensing, and export control restrictions.
- Excellent software engineering habits.
- Familiarity with development in Linux-based environments.
- Experience with version control systems such as Subversion and Mercurial.
- Working knowledge of software debugging and profiling tools.
- Solid background in data structures and algorithms
- Experience with complex robotic applications including perception and planning;
- Experience with embedded systems and real-time operating systems; and
- Strong math skills and familiarity with linear algebra
- Preferred Languages C,C++, Python
Benefits and Perks
- Carnegie Robotics offers a very competitive benefits package.
Carnegie Robotics is an Equal Opportunity Employer that welcomes applications from all employees and applicants for employment without regard to race, color, religion, gender, sexual orientation, national origin, age, disability, marital status, or status as a covered veteran in accordance with applicable laws and Carnegie Robotics’ employment policies.