Job DescriptionThe Software and Ground Solutions group at BAE Systems Inc Space and Mission Systems (SMS) is looking to expand our team with a talented and energetic software engineer focused on delivering high-quality, embedded satellite software and associated test infrastructure. This position supports a portfolio of software programs. Technology areas include software development, CI/CD, Containerization, C/C++, Rust, Python, Ruby and Embedded Linux.
What You'll Do:- Write and test embedded software for satellite, airborne, or ground systems.
- Perform full software life cycle functions including requirements, architecture, design, code, test, integration, documentation, and support.
- Maintain a regular and predictable work schedule.
- Establish and maintain effective working relationships within the department, the Strategic Business Units, Strategic Capabilities Units and the Company. Interact appropriately with others in order to maintain a positive and productive work environment.
- Perform other duties as necessary.
On-Site Work Environment: This position requires regular in-person engagement by working
on-site five days each normally scheduled week in the primary work location. Travel and local commute between company campuses and other possible non-company locations may be required.
Working Conditions: - Work is performed in an office, laboratory, production floor, or cleanroom, outdoors or remote research environment.
- May occasionally work in production work centers where use of protective equipment and gear is required.
- May access other facilities in various weather conditions.
Required Skills and Education- BS degree or higher in Engineering or a related technical field is required plus 4 or more years related experience
- Each higher-level degree, i.e., master's degree and/or Ph.D., may substitute for two years of experience. Degree must be from a university, college, or school which is accredited by an agency recognized by the US Secretary of Education, US Department of Education.
- A current, active Top Secret/SCI security clearance is required.
- Experience in one or more of the following technology areas:
- Rust.
- C/C++.
- Python.
- Embedded Linux.
- Interaction with FPGAs and understanding system level interfaces.
- Messaging (MQTT, ZeroMQ).
- Embedded Linux distribution configuration (PetaLinux, Yocto).
- Device tree development.
- Experience in designing, developing, and testing software for systems using the languages above.
- Understanding of and experience with deployment and operation of applications on Linux systems.
- Experience with object-oriented design.
- Experience generating UML Class, Sequence, and Activity diagrams.
- Experience with formal software development practices including the use of software configuration management, coding standards, and style guides.
#LI-AP1
Preferred Skills and Education- Experience with high-fidelity vehicle or payload simulation.
- Experience with requirements derivation.
- A working knowledge of Agile lifecycles and activities in each phase.
- Data Serialization (Protobuf, FlatBuffers).
- Experience in developing test, simulation, or data processing applications in high-level languages such as Python, Ruby, or MATLAB.
- Experience using Cameo or PlantUML for Design.
- DevSecOps.
- Proficiency in Linux system internals and embedded Linux development.
- Hands-on experience with the Yocto Project and OpenEmbedded.
- Testing frameworks (gtest, ctest, test-driven development, hardware-in-the-loop).
This position will be posted for at least 5 calendar days. The posting will remain active until the position is filled, or a qualified pool of candidates is identified.
Multiple positions may be available on this opening.