Embedded Software Engineer - Space
Role details
Job location
Tech stack
Job description
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
Requirements
- Bachelor's Degree or higher in Computer Science, Computer Engineering or related field
- 5 to 6 years of design and implementation experience with embedded software in C/C++
- 2 to 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)
Benefits & conditions
$140,500.00 - $221,500.00, $140,500.00 - $221,500.00 / annually. For specific work locations within San Jose, the San Francisco Bay area and New York City metropolitan area, the base pay range for this role is $174,000.00- $261,000.00/ annually
At Viasat, we consider many factors when it comes to compensation, including the scope of the position as well as your background and experience. Base pay may vary depending on job-related knowledge, skills, and experience. Additional cash or stock incentives may be provided as part of the compensation package, in addition to a range of medical, financial, and/or other benefits, dependent on the position offered. Learn more about Viasat's comprehensive benefit offerings that are focused on your holistic health and wellness at https://careers.viasat.com/benefits. EEO Statement