Senior Software Engineer, Development Verification & Validation/Testing
Summary
Develops and validates software for embedded systems, focusing on test planning, unit testing, and code review using Python, C/C++, and LabVIEW on Linux/Windows.
Responsibilities
- Measures and analyzes software designs for equipment/products to ensure current and future needs of the business are met.
- Builds and implements procedures that are used to support hardware and software product development and functions.
- Operates equipment and computer systems for testing and software design purposes to facilitate operations and ensure that established objectives are achieved.
- Designs, develops, documents, tests and debugs control and diagnostic systems that contain logical and mathematical solutions.
- Conducts multidisciplinary research and collaborates with equipment designers in the planning, design, development, and utilization of electronic data processing systems for product and commercial software.
- Determines end user needs by analyzing system capabilities to resolve problems on program intent, output requirements and input data acquisition.
- Develops test procedures and code for various UNIX operating systems (Linux & others) and Windows.
Requirements
- Typically requires a degree in Science, Technology, Engineering or Mathematics (STEM) unless prohibited by local laws/regulations and minimum 5 years prior relevant experience or an Advanced Degree in a related field and minimum 3 years of experience
- Demonstrated professional experience communicating in English (verbal and written).
- U.S. citizenship is required, as only U.S. citizens are authorized to access information under this program/contract.
- Experience in software development and verification based on DO-178
- Experience with Software Lifecycle & Agile software development
- Experience with HLR/LLR and Requirements decomposition
- Experience conducting test planning & unit-tests
- Experience in code review or performance monitoring
- Knowledge of Python; ADA
- Experience using C/C++
- Experience in National Instruments LABVIEW
- Experience with communication buses (ARINC-429, ARINC-664, CAN, TTP)
- Experience with Linux and/or Windows System Administration
- Experience in Hardware/Software integration and troubleshooting
Hard Skills
- software development
- verification
- test planning
- unit tests
- code review
- performance monitoring
- Python
- C/C++
- National Instruments LABVIEW
- hardware/software integration
Soft Skills
- communication
- collaboration
- problem solving
