Software Development Engineer in Integration (Remote possible)
Advanced Navigation and Positioning Corporation (ANPC) is an exciting, small company in the beautiful Columbia River Gorge. We are experiencing growth and looking to hire some key players to our already engaged, talented team right in Hood River, Oregon.
We offer remote work!
We offer full benefits, 401K matching, 3 weeks PTO and 11 paid holidays, including the week of Christmas to New Years off. If you are interested in joining a fun, exciting, active, engaged team we want to hear from you.
ANPC builds Transponder Landing Systems (TLS) and other products to assist in the tracking and landing of aircraft. Our products are safety-critical (DO-278) systems that include complex hardware/software interfaces using multiple technologies. System integration - Quality Assurance and testing - is a core part of our safety-critical development and includes involvement in all aspects of system design.
Position Summary
Our software integration engineer position is an independent growth track. Software developers early in their career work as our primary integration engineers as a path toward placement as a developer on our software team. As well as helping the developer integrate in our team, the role provides valuable training for the developer in test-driven development, the software development lifecycle, and complex system testing. The integration engineer will develop and perform test plans and run full system tests as well as document issues. They will also develop new software and features in the Continuous Integration (CI) pipeline and help build the next generation Integration features such as Continuous reporting and continuous delivery. The integration engineer is supported and mentored by software developers who previously worked in the integration engineer's role.
Software Environment
Our software environment is split into two areas: Development (C/C++) and Integration (C++ and Python). Both environments include:
Desktop software running on the developer's laptop
Virtualized systems that run in sets of VMs
Physical systems running in the lab
Fielded systems running at The Dalles airport (KDLS)
Development Environment
Microsoft in Windows environment
Visual Studio IDE
Core code is written in C
User interfaces in C++ using MFC
Systems include Windows, QNX Real-time operating system, and digital signal processors (DSP)
Complex hardware/software systems and interfaces
DO-178 safety critical system
Git with Gitlab as organization tool
Quality Assurance Environment
Google Test (This C++ framework is used to test all C code)
Python
Gitlab CI/CD pipeline
Key Responsibilities
Managing software version control
Designing, developing and executing formal software testing
Software quality assurance and tools
Documentation, verbal communication and coordination
Review requirements, specifications, and technical design documents to provide timely and meaningful feedback
Liaise with internal teams (e.g. developers and product managers) to identify system requirements
Test application (GUI) software in conjunction with networked audio/media systems running embedded software
Test interaction scenarios with finished hardware devices
Develop and document strategies for efficient testing of our products
Create and execute detailed, comprehensive, and well-structured test plans and test cases
Develop and apply testing processes for new and existing products to meeting client needs
Maintain internal QA-specific information systems to track quality assurance metrics (bug tracking, test servers)
Verify defect fixes, including testing of appropriate related areas
Stay up-to-date with new testing tools and test strategies
Other duties as assigned by Supervisor
Required
BS in Software Engineering or equivalent experience
A minimum of 3 years of software engineering experience within a validated software quality environment
Ability to read, write and interpret technical documents such as training manuals, corporate documents, and contracts.
Ability to communicate effectively with management, customers and employees in a positive manner.
Provide proof of Covid-19 Vaccination on your first day of employment and agree to follow CDC, Oregon state and ANPC coronavirus guidelines.
Preferred
At least 2 years' experience in a safety-critical software development environment
Ability to read, write and interpret technical mechanical drawings
Advanced knowledge of Microsoft software
Ability to develop software and hardware architectures/partitioning, including definition of interfaces and use cases.
#J-18808-Ljbffr