Staff Software Engineer
33 Technology Irvine, CA 92618
The Staff Software Engineer is responsible for software architecture identification, design, project planning and management of new software for medical devices. The Staff Software Engineer will provide technical and project leadership on software development, verification and validation for project team consisting of both direct employees and offshore contractors.
- A minimum of 8 years of experience developing real-time software for embedded systems is required.
- Experience on x86 or ARM microprocessors or PIC microcontroller is required.
- Strong understanding of OS concepts and various hardware I/O subsystems (i.e., display, audio, power).
- Extensive experience in Java/Qt/C/C++ programming languages is required
- Experience in GUI and multi-threaded embedded software interface and synchronization mechanisms are required.
- Experience working with build tools including: Yocto and OpenEmbedded.
- Strong knowledge of systems concepts including: RTOS, multi-threaded programming, distributed system design, device drivers, hardware diagnostics, interrupt handling and boot loader development.
- Experience with initial board bring-up of embedded Linux systems.
- Experience with Wi-Fi and Bluetooth connectivity.
- Ability to read schematics and component data sheets.
- Broad technical breadth across hardware and systems.
- Strong project management skills, including the ability to simultaneously manage multiple tasks / projects is required.
- Skilled in guiding and leading the work of others, especially external development design partners, is required.
- Experience in enforcing source code and change control management process is required.
- Experience in software configuration management.
- Knowledge of IP/TCP/UDP network software development.
- Experience in database, scripting capabilities.
- Software requirements analysis and specifications
- Proven knowledge and experience in leading the best practice in software engineering
- Interdependent partnering and effective interpersonal skills to work collaboratively across the business and with development suppliers.
- Knowledge and experience in designing software automated test systems
- Technical leadership experience in software development in a regulated environment (e.g., FDA, ISO).