Using the latest cutting edge embedded software engineering practices and procedures, design and develop embedded software with the goal of creating first class, highly scalable embedded software.
Essential Duties and Responsibilities (other duties may be assigned)
- Analyzes software requirements to determine feasibility of design within time and cost constraints.
- Designing and implementing embedded software for devices and systems.
- Reviews software system testing procedures, programming, and documentation.
- Develops documentation pertaining to the operation of an embedded device.
- Develops embedded software routines and procedures to aid with the manufacturing and testing of the final product.
- Applies knowledge of real time embedded environment to software development
- Present and participate in software design reviews and code reviews
- Consults with hardware engineers and other engineering staff to evaluate interface between hardware and software, operational and performance requirements of overall system to identify tradeoffs between hardware vs. software complexity.
- Participate and assist hardware developers with reliability and certification testing to include development of scripts and tools.
- Develop unit level white box and system level black box tests for all software components