Barrett Technology is a great place to work and develop professionally. The supportive, learning atmosphere is led by seasoned management and competent engineers. We promote from within, investing in our people. Personality and integrity are important at Barrett. The type of person who will do well at Barrett is a team player and a clear communicator. We look for people who are personable, honest, and open to feedback, as well as those who are open to learning new skills, finish tasks in a timely and thorough manner, and who understand that documentation is an essential component of most tasks.

Robotics Software Engineer

Position Overview

The engineer will be an integral member of a cross-disciplinary engineering and manufacturing team supporting Barrett Technology’s advanced robotic systems for R&D ( and medical ( applications.

Barrett’s advanced robotic systems include the WAM Arm, a highly dexterous, naturally backdrivable manipulator that can be used for a wide variety of applications, and the Barrett Hand, a three-fingered gripper that can be integrated with the WAM or used as a standalone device. Barrett’s medical robot, Burt, is an interactive robotic system that provides stroke survivors a means to exercise and rehabilitate their affected arm in engaging and meaningful ways using a system that physically supports the weight of their arm while allowing them freedom of movement and targeted assistance while playing games on-screen.

The applicant should be able to stay organized and on task, work well with little supervision, communicate effectively with engineers and customers, and be willing to take initiative and act upon new ideas.

Specific responsibilities

  • Prototype and develop customer-specific applications for Barrett advanced robotics products

  • Customer support for Barrett advanced robotics products

  • Develop, test, and release medical device software through FDA-mandated design-controls

  • Collaborate with mechanical, electrical, gaming and firmware engineers throughout design and release

  • Assist in the upkeep and implementation of Quality System tools and procedures including bug-tracking, revision-control, testing, and code-reviews

  • Support different aspects of a small company’s day-to-day requirements as needed

  • Potential for travel for customer installations and tradeshows

Required qualifications and proficiencies

  • Bachelor’s or Master’s degree in robotics, computer science, engineering, or related field

  • Proficient in C++ programming

  • Experience developing in a Linux environment

  • Comfortable using version control (Git preferred)

  • Comfortable working with electro-mechanical systems

  • Personable, self-motivated, highly organized, and self-directed

  • Desire to grow with company and expand skillset

  • Good verbal and written communication skills

Highly Valued Skills

  • Experience working with robotic systems and/or haptic systems

  • Experience with other languages and tools, such as C#, Python, ROS, Unity, Matlab

  • Experience with embedded programming and/or serial communication protocols (CAN)

  • Experience with medical-device software within a quality-controlled environment

This full time position includes health care and other benefits. Please send a cover letter and resume to with the subject heading “Robotics Software Engineer”.
Applications without cover letters will not be considered.