A Controls Engineer is well rounded in control systems fundamentals and will join a team creating novel robotic devices for diverse applications in medical, military, and scientific research fields. The candidate will participate in all aspects of embedded software engineering including architecture definition, requirements analysis, design, implementation, test, and documentation. The software may range from low level device drivers and motor commutation to communications, power management and high level applications controlling robotic devices. The candidate should be comfortable with hands-on debugging that spans the mechanical, electrical, and control system domains typical of robotic systems. The successful candidate will have the ability to translate objectives to results and deliverables with little oversight and direction; to lead software development projects of moderate to high complexity and to work in a highly-collaborative, multi-disciplinary team environment.
ESSENTIAL DUTIES AND RESPONSIBILITIES:
- C/C++ software development
- Implementing control algorithms
- Development under Real-time Operating Systems (preferably QNX)
- Familiarity with instrumentation & tools required for debug, test and integration of embedded systems, including oscilloscopes, logic analyzers, etc.
- Knowledge of software configuration management tools
- Development of device drivers and board support packages
- Experience in the creating technical documentation in a regulated environment
- Ability and desire to learn new concepts and skills quickly
- Strong control systems fundamentals
- Strong robotics fundamentals (kinematics, dynamics, sensing, etc.)
- Strong electronics fundamentals as well as practical skills with circuit troubleshooting
- Experience with communications protocols and peripherals (CAN, TCP/IP, etc.)
- Experience with software safety
- Experience with motor control and sensor interfacing
- Experience with Matlab
- Experience with ROS (Robot Operating System)
- BS/MS in Mechanical/Electrical engineering, Physics or a related field
- 2-10 years of embedded software development experience
To perform this job successfully, an individual must be able to perform each essential duty and responsibility listed above satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
Equal Opportunity Employer of protected Veterans, disabled individuals or other individuals regardless of race, color, religion, national origin, gender, age or sexual orientation.
Apply on company website