Job Description
Genalyte is looking for an experienced Senior/Staff Embedded Software Engineer to help develop outstanding software for diagnostic instruments with a potential to revolutionize the blood testing/diagnostic industry. The Senior/Staff Embedded Software Engineer has the opportunity to work alongside dedicated team members and join a company with a huge potential at a ground level. To be successful in the role the individual should be passionate, experienced in writing clean code, collaborative to resolve issues, including edge cases and error handling. The individual must be self driven, comfortable with a fair amount of ambiguity and able to formalize processes and approaches where there are none.
ESSENTIAL FUNCTIONS & RESPONSIBILITIES
These may include but are not limited to:
- Architect, design, develop Embedded Software for an IVD instrument containing a distributed embedded system
- Develop technical documentation according to FDA guidance documents and other pertinent industry standards
- Hold/attend design reviews for key aspects of software design
- Work closely with SW QA to ensure appropriate test coverage and execution
- Participate in development of software requirements that are accurate and testable
EDUCATION, EXPERIENCE, KNOWLEDGE, SKILLS AND ABILITIES:
- A minimum of a Bachelor’s degree in Engineering with 5 years minimum of experience working on embedded systems using a combination of Linux and C/C++ (gnu toolchain),(an equivalent combination of experience and education may be considered).
- Strong C / C++ / Embedded C Experience
- Working with peripherals and busses (GPIO, I2C, SPI, UART etc)
- Experience designing and developing state machines with a tilt towards event driven architecture
- Strong understanding of real time Software Engineering principles and performance trade-offs
- Using Jira, Confluence, Bitbucket or other GIT-based source code control systems
- Experience working with raspberry PI or other Linux flavors and in general understanding of operating systems fundamentals (in particular unix flavors)
- Strong Communication and Presentation Skills
- Experience working with / programming robotic arms (specifically Universal Robotics UR3E or similar) using ROS as well as native interfaces
- Experience with network programming and using network-based IPC libraries/approaches)
- Command of multiple programming languages such as C++/Python is a plus
- Experience with distributed error handling behaviors and designs
Salary Range: $130,000 - $160,000
Offer decisions and base salary depend on a variety of factors including, but not limited to, an individual’s skills, qualifications, business need and experience.
Powered by JazzHR
0SvMxlfvnF