Embedded Software Engineer - Space
Skills
About the role
About us:
One team. Global challenges. Infinite opportunities. At Viasat, we’re on a mission to deliver connections with the capacity to change the world. For more than 35 years, Viasat has helped shape how consumers, businesses, governments and militaries around the globe communicate. We’re looking for people who think big, act fearlessly, and create an inclusive environment that drives positive impact to join our team.
What you'll do:
This is a role for an Embedded Software Engineer within Space Infrastructure - Viasat, experienced in C/C++/Python and interested in learning the Rust programming language. You will design, develop, and integrate software for satellite payload flight control, embedded cryptographic functions, and automated test solutions. You will interface and collaborate with system, test, and hardware engineers as new capabilities are developed and transitioned into service.
This position requires an experienced software engineer able to work with autonomy and able to lead trade-off studies. The candidate must show expertise in most core software development proficiencies.
The day-to-day:
Design and implementation with embedded software in C/C++ and Rust
Design and implementation with embedded and system test software in C/C++ and Python
Design and implementation of Linux OS applications in Python, C/C++, and Rust
Design and implementation of FreeRTOS applications in C/C++ and Rust
Design and develop applications for microprocessors, embedded processors, and FPGAs
Design and implementation of bare metal embedded device drivers
Debug and resolve complex integration issues
Design CI/CD infrastructure and automation services
Find opportunities to improve product reliability and security
Lead design reviews and documentation tasks
Agile SCRUM Framework development
Works autonomously with little instruction to solve well-defined problems
This is an onsite role
What you'll need:
Bachelor's Degree or higher in Computer Science, Computer Engineering or related field
2 - 5 years of design and implementation experience with embedded software in C/C++
1 - 3 years of design and implementation experience with system test software in Python
At least 1 year of Linux OS use, ideally for an embedded environment
Experience with Linux, RTOS, and bare metal applications
Object-Oriented software design and development experience
Strong Design Patterns knowledge and practical experience
Basic understanding of OSI model layers
Ability to plan, track and report on team progress
Good oral and written communications skills
US citizenship
Ability to travel up to 10%
What will help you on the job:
Experience with Python software development
Experience with Emulation Environments
Experience with CI/CD practices
Experience with AI Toolkits and Platforms (e.g. Copilot, Claude, Cursor, etc.)
Familiarity with tools and services like Git, GitHub, Jira, Jama, Artifactory, etc.
Familiarity with Rust software development
Familiarity with FPGA-based architectures
Familiarity with Linux kernel driver development/modifications
Familiarity with RTOS and standalone embedded applications
Familiarity with Ethernet standard and protocols
Familiarity with network security protocols (e.g. IPSec, MACsec, TLS, etc.)
SCRUM Product Owner and/or SCRUM Master certification
Familiarity with debuggers (GDB over JTAG)
Compensation
This Software Engineer role pays $117k-$218k/yr. Within typical range for software engineer roles in United States.
Questions about this role
Want AI Applyd to auto-apply to roles like this?
We tailor your resume per posting, fill the forms, and track replies for you.