Submit your resume
EMBEDDED SOFTWARE ENGINEER
- Develop real-time, embedded software.
- Motion control experience a plus.
- DO178 and DO130 a plus.
- Aerospace/Military experience a plus.
- Interact with customers throughout the software lifecycle including major design and/or architecture reviews.
- Experience with programming embedded systems utilizing elements such as: Microprocessors/Northbridges/SOCs, Board Support Packages, bootloaders, device drivers for peripheral communication interfaces (Ethernet, PCIe, USB, SPI, I2C, etc.)
- Work within a structured development environment utilizing tools/processes for requirements management, configuration management, change control, workflow management etc. (i.e. DOORS, Subversion, Jira etc.)
- Excellent oral and written English skills.
- U.S. person
- Supports and/or leads various design activities for new/existing products, predominantly involving moderate throughput/memory utilization requirements and design functionality coupled to an embedded OS.
- Supports and/or leads design modifications for existing products, frequently driven by hardware obsolescence situations or bug fixes in response to field returns. The design modification is usually of moderate complexity and may require major redesign of a software module in the embedded system.
- Applies moderately complex software engineering principles and techniques to support/lead design, development, documentation, and test/verification activities. Possesses product domain knowledge of programs that he/she is currently working.
- Directly interfaces with Systems Engineering to interpret requirements into software architecture/design, identify traceability, and generate test/code coverage plans.
- Directly interfaces with Electrical Engineering to assess resource utilization of hardware required to meet performance requirements.
- Assists/supports Production and Service Station teams with troubleshooting methods of pre-delivery and field return products (primarily involving special test equipment user interface definition). Leads the generation of root cause corrective actions when failure analysis requires software engineering support.
- Understands/utilizes internal processes and tools for software design/documentation/test. Shares process/tool knowledge with others.
- Works under general direction. Independently determines and develops approach to solutions.
- Work is reviewed upon completion for adequacy in meeting objectives.
- Provides technical solutions to a wide range of difficult problems.
- Contributes to completion of milestones associated with specific projects which have significant effect on the success of a sub-process/small project task.
- Frequent inter-organizational and outside customer contacts.