Logo
Lynk Inc

Satellite Flight Software Engineer

Lynk Inc, Virginia Beach, Virginia, us, 23450


Job Summary:

The Satellite Flight Software Engineer at Lynk will be developing a variety of embedded flight software applications for commanding and controlling our satellites. This includes developing our satellite command and data handling system software, in addition to supporting software for both its primary (payload) and secondary radio communications functions. The software will initially be tested on the satellite prototype in a lab environment (“flatsat”) that simulates orbit operations. The software engineer will also be responsible for implementing methods of data acquisition to ensure successful testing, verification, and validation. We build spacecraft fast! So, the perfect candidate for this role will have significant previous experience designing, developing, and testing software on rapid timelines. We are looking for engineers that enjoy a challenge and have a track record of creative thinking to solve unconventional problems.

Core Responsibilities:

The Satellite Flight Software Engineer will be responsible for design, development, and testing of all spacecraft flight software including that for our spacecraft Command & Data Handling, Power, Communications, and Guidance, Navigation, & Control Systems. This includes:

Developing Linux applications that implement the major functions required by our satellite flight system

Working in a small, agile team to manage the software development lifecycle (requirements definition, design, implementation, test, and verification) for individual projects

Creating embedded software to interact with satellite devices/electronics using CAN, I2C, SPI, RS-422, RS-485, etc. protocols

Implementing inter-application coordination and communications using standard inter-process communication (IPC) mechanisms available in Linux

Developing test software to support unit, integration, and system testing of all flight software functions

Writing this software in C, C++, Rust, or other languages in a Linux environment

Required Qualifications:

A Bachelor’s degree (or higher) in Software, Electrical, Aerospace, or in a related engineering field.

3-5 years of software engineering experience

Demonstrated experience working with multiple programming languages (C, C++, Python, Rust), operating systems, and development environments

Demonstrated experience with all phases of the software development life cycle

Experience with developing software to interact with hardware devices

Experience with inter-process communication (IPC) mechanisms

Experience with the following: Linux, Git, CI/CD

Desired Qualifications:

Experience developing and testing software for SmallSats / CubeSats

Experience with hardware-in-the-loop integration and testing

Experience with the following: CMake, Protocol Buffers, ZeroMQ

ITAR Requirements

The U.S. Government space technology export regulations, includingthe International Traffic in Arms Regulations (ITAR) require the person in this position to be a U.S. citizen, lawful permanent resident of the U.S., protectedindividual as defined by 8 U.S.C. 1324b(a)(3), or eligible to obtain the required authorizations from the U.S. Department of State. To learn more about ITAR, please visit Understand ITAR.