Embedded Software Engineer
Clarapath · Hawthorne, NY · 3 mo ago
Engineering$115k–$155k/yrFull-time
Role Summary
The Embedded Software Engineer will be working alongside our existing software engineers, electrical engineers on medical device development. This role is multi-disciplinary with technical responsibility for designing, developing, and testing device control software, both at the driver and at the application level. We are looking for a team player who views medical device development as a competitive advantage.
Responsibilities
- Design, develop and maintain embedded software applications for various platforms, including microcontrollers and microprocessors
- Develop drivers for interfacing with motor controllers, cameras, scanners, and PLC systems
- Collaborate with hardware engineers to define system requirements and develop software architecture designs
- Implement real-time operating systems (RTOS) and device drivers to support hardware functionality
- Write efficient and reliable code in C/C++ for embedded systems, ensuring optimal performance and resource utilization
- Conduct unit testing and debugging of software modules to identify and resolve defects
- Participate in code reviews and provide constructive feedback to ensure code quality and maintainability
- Work closely with cross-functional teams, including firmware engineers, hardware engineers, and QA testers, to integrate software components and validate system functionality
- Stay updated on emerging technologies and industry trends related to embedded software development, and incorporate best practices into our development processes
- Document software designs, specifications, and test procedures to support product development and regulatory compliance efforts
- Collaborate with external partners and suppliers as needed to integrate third-party software components or tools into our embedded systems
Qualifications
- Bachelor’s degree in Computer Science, Electrical Engineering, or related field. Master’s degree preferred
- 5+ years of experience in embedded software development, with a strong proficiency in C/C++ and Python programing languages
- Prior experience working in a LINUX environment
- Prior experience working with GIT or other code repository systems
- Solid understanding of the TCP/IP protocol stack
- Solid understanding of multithreading and real-time embedded systems, including RTOS, device drivers, and hardware-software interfaces
- Prior experience utilizing PID-based control for motion and temperature regulation
- Experience with embedded development tools and environments, such as IDEs, debuggers, and version control systems
- Familiarity with microcontroller architectures and peripheral interfaces (ex: Ethernet, Serial, UART, SPI, I2C, GPIO)
- Familiarity with industrial communication protocols such as MODBUS
- Strong analytical and problem-solving skills, with the ability to troubleshoot complex software issues
- Excellent communication and teamwork abilities, with a collaborative approach to problem-solving
- Demonstrated ability to work effectively in a fast-paced, deadline-driven environment
- Prior experience in Agile development methodologies and continuous integration practices, a plus
- Experience with robotics platforms like ROS or YARP, a plus
- Experience interfacing with Clinical Lab Information Systems, a plus
- Experience in addressing data security and compliance with HIPPA regulations, a plus
- Histology laboratory workflow experience, a plus
- Experience building visions systems for process and quality control, a plus
Company Offers
- Competitive salary, commensurate with experience and education
- Comprehensive benefits package available: (healthcare, vision, dental and life insurances; 401k; PTO and holidays)
- A collaborative and diverse work environment where our teams thrive on solving complex challenges
- Ability to file IP with the company
- Connections with world class researchers and their laboratories
- Collaboration with strategic leaders in healthcare and pharmaceutical world
- A mission driven organization where every team member will be responsible for changing the standards of delivering healthcare