Danaher Corporation Senior Embedded Software Engineer in South San Francisco, California
We are seeking a Staff Embedded Software Engineer with hands-on C/C++ programming skills and exceptional systems/robotics engineering experience. This person will act as a lead engineer in developing our next-generation system platform including algorithm development.
ESSENTIAL JOB RESPONSIBILITIES:
Be a key contributor on the firmware engineering team that leads the development of firmware/embedded software for commercial products and in-house research.
Lead on projects comprising robotics/hardware interfaces, feedback/feed-forward control system design, algorithm development, mathematical modeling, global optimization, simulation, and signal processing and data analysis.
Lead multi-discipline teams on new product introduction projects while adhering to software development and source control processes.
Provide technical guidance to the team; and solve complex problems; and often mentor the junior members of the staff to solve unique problems.
Prototype, design, implement and maintain software applications.
Develop embedded software driver modules for hardware components.
Participate in cross-functional project teams with scientists, technical support and other engineers to resolve software issues.
Design, Develop, and implement embedded software for robots and other automation equipment.
Document software; write technical specifications for interfaces and testing.
Drive root cause analyses in a product development, production and post-production context.
Education and Experience (in years):
BS or MS in Computer Science or Electrical Engineering with a specialization in real-time embedded systems
5-8+ years of work experience in engineering.
Knowledge and skills:
Experienced C, C++ programmer with experience in real-time / embedded system design, debug, and testing in an Embedded Linux / RTOS environment.
Experience in developing embedded applications for ARM, X86 architectures is required.
Experience in embedded interfaces like USB, SPI, I2C, UART is required.
Strong debugging skills and familiarity in using debuggers, scopes/logic analyzers are required.
Knowledge in communications such as CAN, TCP/IP, UDP, serial.
Knowledge of concurrency, threading and data structures.
Experience in Gap Analysis of existing software to current and future designs.
Ability to communicate complex technical issues and design to the peers.
Ability to work independently and lead functional teams or projects.
If you have these, it’s a plus!
Medical device or regulated industry experience very desirable
Familiarity with tools such as Matlab and Python
Basic knowledge of other engineering disciplines helpful (mechanical, electrical, physics)
Experience in delivering products and providing technical leadership
Danaher Corporation and all Danaher Companies are equal opportunity employers that evaluate qualified applicants without regard to race, color, national origin, religion, sex, age, marital status, disability, veteran status, sexual orientation, gender identity, or other characteristics protected by law. The “EEO is the Law” poster is available here (http://www.dol.gov/ofccp/regs/compliance/posters/pdf/eeopost.pdf) .