Embedded Software Engineer 2
JOB DESIGNATION:
The Embedded Software Engineer 2 designs, develops, and debugs software, working in small teams to solve problems and explore technologies for new and existing core products.
JOB CORE RESPONSIBILITIES:
• Captures, decomposes, and derives functional requirements to develop technical specifications.
• Applies software standards and utilizes specifications to design, develop, integrate, and test safety-critical software applications using standard and model-based development methodologies and tools.
• Authors design documentation and develop drivers for embedded devices, including microcontrollers and associated peripherals.
• Perform, track, and control internal project activities and manage external subcontractors (including offshore verification partners). Support other team members with expertise in best practices and safety-critical development. Creates periodical status reports for key functions.
• Identify continuous improvement opportunities, including standardization of tools and processes.
• Works as part of a software engineering team using source control concepts
• Consistent exercise of independent judgment and discretion in matters of significance
QUALIFICATIONS: • 3+ years minimum experience
• Experience using C at a low level (microcontrollers, drivers, interacting with hardware, etc.)
• Experience with Software verification of embedded systems
• Experience with Version Control and Configuration Management systems
• Experience with System verification using lab equipment - oscilloscopes, multimeters, etc...
• Ideally, Aerospace Software Engineering Compliance with DO-178B/C, SOI Audit experience
• Ability to solve problems using a systematic and analytical approach
• Fundamental knowledge of engineering domain principles, concepts, and techniques
• Good oral and written communication skills
• Proficient in Microsoft Office
Nice-to-Have Qualifications: - Experience with low-level ( "bare-metal") C programming, including direct hardware interaction such as microcontrollers, device drivers, and peripheral interfaces.
- Experience verifying embedded software developed in C, Assembly, and SCADE.
- Familiarity with version control and configuration management tools, including AccuRev and IBM DOORS.
- Exposure to aerospace or safety-critical software development processes is a plus.
EDUCATION & EXPERIENCE:
• A Bachelor's Degree in Engineering or a technical discipline in Science is required - Computer Engineering, Electrical Engineering, Computer Science, etc...
• 3+ years minimum experience