What are the responsibilities and job description for the Embedded Software Engineer position at Green Hills Software?
Job description
The Software Engineer's role is to develop, create, upgrade, and maintain software applications that fully exercise features of the INTEGRITY-178 operating system to verify the functionality and correctness of the software. As a Software Engineer, you will be responsible for ensuring Green Hills Software safety-critical products are safe for our customers to build vehicles, medical devices, and industrial control systems that people's lives depend on every day.
The Software Engineer will develop a detailed knowledge of operating system internals, while using the latest in compiler and debugger technology from Green Hills. As a Software Engineer, you will have the opportunity to work with real-time operating system (RTOS) components ranging from board support packages and device drivers (Serial, Ethernet, Flash), architecture support packages (PowerPC, ARM, x86), networking stacks, le systems, language libraries (C, C , Ada), and the core kernel itself.
After demonstrating prociency and domain expertise in the above products, Software Engineers may have the opportunity for the design and implementation of safety and security-critical RTOS components.
Duties
- Assessing and ensuring the high safety standards for our products
- Creating validation tests for requirements functionality, robustness, boundary values, and equivalence classes
- Analyzing, improving, and reporting on system code coverage
- Participating in requirement, design, and code reviews for changes to safety-critical products
- Attaining prociency with operating system internals:
- Kernel/Virtual Address Spaces
- Memory management
- Task management / Scheduling
- Connections / Semaphores
- Clocks / Timers
- Analyzing multi-core processor issues:
- Inter-processor interference
- Shared resource contention
- Timing and throughput
Requirements
The ideal candidate will have the following skills and experiences:
- U.S. Citizen (U.S. government contract requirements)
- Bachelors or Masters of Science degree (Computer Science, Electrical/Computer Engineering, Math)
- GPA of 3.5 or greater
- Strong C / C programming skills
- Understanding of the concepts of real-time operating systems
- Ability to learn and understand how complex software systems work
- Excellent communication (both written and verbal) and organization skills
- Willingness and ability to work independently and with little supervision
Benefits
- Competitive pay
- Excellent medical and dental insurance
- Casual work environment
- Fully stocked kitchen
To apply
Qualied candidates are encouraged to send a resume and unocial college transcript to: (reference: Software Development Engineer).
Green Hills Software is an Affirmative Action/Equal Opportunity Employer, including disability and status as a protected veteran.