Platform Engineer
Role details
Job location
Tech stack
Job description
York Space Systems is seeking a Junior / Early Career Flight Software Platform Engineer to support the Flight Software Engineering team.
This role is intended for an engineer early in their career who is interested in embedded Linux, spacecraft systems, mission-critical software, and hands-on platform development. The Platform Team owns the operating system foundation used to deliver embedded flight software for space applications.
The ideal candidate is curious, technically motivated, and excited to learn Linux platform development, embedded software practices, hardware/software integration, and flight software delivery in a fast-moving aerospace environment.
This is a hands-on engineering role with mentorship from senior engineers and technical leads. Over time, this engineer will grow ownership in embedded Linux platform components, integration workflows, test automation, and software release support.
Key Responsibilities Participate in an agile scrum team focused on supporting the embedded Linux platform used to deliver flight software for space applications.
Support development and maintenance of the embedded Linux platform, including:
- Linux kernel configuration and debugging
- Bootloader and BSP support
- Root filesystem updates
- Core system services and systemd configuration
- Device driver integration and troubleshooting
- Platform scripts, tools, and configuration files
- Embedded Linux interfaces and processes
Collaborate with team members, management, systems engineers, hardware teams, application teams, and mission operations to support project execution.
Assist with understanding and expanding requirements based on high-level specifications, system needs, and mission use cases.
Contribute to platform stability, security, and maintainability by:
- Investigating bugs and integration issues
- Supporting software updates and release activities
- Helping maintain reproducible builds
- Documenting changes, assumptions, and troubleshooting steps
- Identifying risks and raising issues early
- Communicating challenges, failures, and successes clearly
Participate in technical design reviews and code reviews to improve quality and maintainability of deliverables.
Support implementation of software architectures and designs that meet requirements.
Develop code following project coding guidelines, process requirements, and review expectations.
Assist with unit, integration, software-in-the-loop, and hardware-in-the-loop testing, including:
- Developing and executing unit tests
- Verifying requirements and interface behavior
- Supporting code coverage activities
- Helping analyze test results
- Supporting SITL and HITL integration and testing
- Capturing test results and release artifacts
Work with other subsystems to support proper integration of platform software into the broader flight software design.
Participate in implementation approach discussions by helping evaluate cost, complexity, schedule, and technical risk.
Support continuous improvement of team practices, including:
- Improving documentation and knowledge sharing
- Automating repetitive development or test tasks
- Contributing to CI/CD improvements
- Participating in retrospectives and post-release reviews
- Helping improve release confidence and integration quality
Grow technical ownership over time in areas such as:
- Yocto-based build systems
- Linux kernel customization
- Device trees and low-level hardware interfaces
- Embedded networking concepts
- Platform test automation
- Flight software deployment and update flows
- Software-in-the-loop and hardware-in-the-loop environments
Requirements
-
Bachelor's degree in Engineering, Computer Science, or a related technical field, or equivalent experience
-
0-3 years of experience in software development, embedded systems, Linux, or related areas
-
Basic programming experience in one or more of:
-
C
-
C++
-
Python
-
Bash / shell scripting
-
Familiarity with Linux development environments
-
Interest in embedded Linux, spacecraft systems, or mission-critical software
-
Familiarity with basic software development practices, including Git, code reviews, debugging, and documentation
-
Ability to troubleshoot technical issues with support from senior engineers
-
Willingness to learn complex systems and ask good questions
-
Ability to communicate technical challenges, risks, and progress clearly
-
Strong teamwork and collaboration skills
-
Ability to work in a cross-functional engineering environment
-
Love Space!
Preferred for the Role
- Internship, academic, hobbyist, or project experience with Linux or embedded systems
- Exposure to Linux internals, bootloaders, kernels, device trees, or root filesystems
- Exposure to Yocto, Buildroot, or other embedded Linux build systems
- Exposure to cross-compilation and low-level system interaction
- Familiarity with device drivers or hardware/software interfaces
- Familiarity with networking concepts and protocols
- Experience with GitLab, CI/CD, issue tracking tools, or automated test pipelines
- Experience with hardware bring-up, lab equipment, or debugging on target hardware
- Familiarity with unit testing, integration testing, SITL, or HITL testing
- Interest in aerospace, spacecraft operations, or operational software systems
- Hobbyist project experience using Linux, embedded boards, robotics, radios, or home lab environments
- Ability to obtain or maintain a US Secret Clearance
Benefits & conditions
In addition to compensation, York Space Systems is proud to offer a comprehensive benefits package including medical, dental, and vision insurance along with PTO and a 401K.