Software Engineer - 5G Devices
Role details
Job location
Tech stack
Job description
-
Design and implement modular software architectures with reusable building blocks, for devices that operate on NTN with Viasat's satellites
-
Develop software abstraction layers (HAL) and middleware that decouple application logic from modem hardware implementations
-
Create flexible, configurable software frameworks that support multiple device variants (many devices could have capabilities in addition to 5G, based on the target market), form factors, and deployment scenarios
-
Define clear interfaces and APIs between software modules to enable independent development, testing, and evolution of components
-
Balance architectural flexibility with performance requirements in resource-constrained embedded environments
5G Chipset Integration & Device Driver Development
-
Integrate 5G modem solutions from industry-leading vendors (Qualcomm, MediaTek, Intel) into device platforms and develop reference designs
-
Develop and maintain device drivers within the Linux kernel that support modem interfaces used in 5G technology (PCIe, USB, SDIO, UART)
-
Implement low-level software to control modem initialization, configuration, power management, and runtime behavior
-
Work with vendor Board Support Packages (BSP) and customize them for Viasat's specific hardware and use case requirements
-
Resolve challenging hardware-software integration faults
-
Optimize performance for latency, throughput, power consumption, and system stability
Reference Design Development
-
Design and maintain reference software architectures that serve as templates for partner-developed devices
-
Create comprehensive SDK packages including libraries, sample code, documentation, and build tools for OEM/ODM partners
-
Develop "golden reference" implementations demonstrating guidelines for building 5G NTN enabled devices compatible with Viasat's network
-
Provide technical guidance and support to external device manufacturers using reference designs
-
Ensure reference architectures are well-documented, maintainable, and follow industry standards (3GPP, GSMA)
-
Balance reference design completeness with flexibility to accommodate diverse partner and market requirements
System Integration & Validation
-
Collaborate with hardware engineering teams to define device architecture and hardware-software interfaces
-
Develop test frameworks and validation suites for 5G device software components
-
Conduct performance analysis, profiling, and optimization of end-to-end device software stack
-
Support field trials and customer deployments, slving issues and implementing fixes
Multi-Functional Leadership
-
Partner with chipset vendor Field Application Engineers (FAEs) to leverage vendor expertise and resolve technical issues
-
Collaborate with product management to translate business requirements into technical architectures
-
Work with application teams to ensure software building blocks meet upper-layer software needs
-
Mentor software engineers on 5G device technologies, driver development, and embedded systems best practices
-
Contribute to technical roadmaps and technology evaluation for future 5G device platforms
Requirements
-
Bachelor's degree or equivalent work experience in Computer Science, Electrical Engineering, Computer Engineering, or related technical field
-
8+ years of experience in embedded software development for wireless communication devices
-
5+ years of hands-on experience with 5G/LTE modem integration or device-side cellular protocol implementations
-
Proven track record of architecting and delivering commercial 5G UE or CPE products
-
Deep understanding of 5G NR device architecture, including RF, baseband, and application processor subsystems
-
Hands-on experience integrating 5G modem chipsets from vendors like Qualcomm, MediaTek, Intel, or Samsung
-
Knowledge of 3GPP UE protocol stacks (NAS, SDAP, RRC, PDCP, RLC, MAC, PHY layers from device perspective)
-
Familiarity with 5G NR physical layer procedures, MIMO techniques, carrier aggregation.
-
Understanding of regulatory requirements (FCC, CE, carrier certifications) for 5G devices
-
Expert-level proficiency in C/C++ for embedded systems and system-level programming
-
Strong experience with Linux kernel development, including device driver implementation and kernel module debugging
-
Solid understanding of hardware interfaces: PCIe, USB, SDIO, SPI, I2C, GPIO
-
Experience with Android BSP development or embedded Linux distributions (Yocto, Buildroot)
-
Proven expertise in writing Linux kernel device drivers (character devices, network drivers, platform drivers)
-
Experience with kernel synchronization primitives, memory management, DMA, and interrupt handling
-
Ability to debug kernel-level issues using tools like ftrace, perf, crash dumps, and JTAG debuggers
-
Knowledge of device tree, ACPI, and platform-specific hardware initialization
-
Demonstrated ability to design modular, maintainable software architectures for complex embedded systems
-
Experience creating SDKs, reference designs, or platform software used by external partners
-
Strong documentation skills for technical specifications, architecture documents, and API references
-
Understanding of software design patterns, abstraction techniques, and interface design principles
-
Strong analytical and problem-solving skills with ability to debug complex hardware-software interactions
-
Excellent communication skills to collaborate with chipset vendors, partners, and internal stakeholders
-
Experience with Agile/Scrum development methodologies
-
Ability to work effectively in a fast-paced, cross-functional team environment
-
ship or permanent residence required
What will help you on the job
-
Experience with satellite-terrestrial convergence or hybrid connectivity systems
-
Expertise in optimizing software for resource-constrained hardware
-
Experience with 5G IoT devices (NB-IoT, LTE-M) or industrial 5G applications
-
Background in wireless protocol testing and certification processes
-
Contributions to open-source projects related to wireless communications or embedded Linux
-
Knowledge of secure boot, trusted execution environments (TEE), and embedded security practices
Benefits & conditions
$161,000.00 - $255,000.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 $200,500.00- $300,500.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 EEO Statement