Software Engineer
Northwood is on a mission to transform connectivity between Earth and space, bringing the benefits of space to the masses through innovations in space communications technologies. If you're passionate about building quickly and seeing your work deployed globally with real impact, we want you at Northwood.
As a Software Engineer at Northwood, you will be pivotal in designing, implementing, and optimizing the global service that delivers connectivity to our customers. You will have ownership over key areas - ranging from control of our antenna systems to the customer APIs that enable booking time on our network. An ideal candidate is someone who likes to work across areas of responsibility and can dive deep into high priority challenges.
Northwood is a full-stack company, with software development spanning everything from embedded systems and high speed networking to distributed web services. We seek versatile candidates who want to contribute across multiple areas while having a solid foundation in a few core areas of focus. Key areas of focus includeโbut are not limited toโthe following (new team members will have the opportunity to work across these areas):
Cloud orchestration & distributed systems design
Lead the end-to-end architecture of a global, distributed control plane that schedules hundreds of satellite passes per hour across mixed AWS/on-prem nodes
Mentor teams on fault-tolerant patterns and land design RFCs that become Northwood standards
API, database & front end development
Build and own customer-facing and internal control-plane APIs โ craft, version, and operate the endpoints that let users search, reserve, update, and cancel satellite passes at multi-thousand-request scale
Design and implement the underlying workflow-orchestrator that coordinates satellite communications across sites, reconciles conflicts, and enables autonomous coordination across the worldโs largest ground network
Architect the real-time TT&C / data-transfer interfaces โ deliver a secure, bidirectional streaming channel that carries command uplink, telemetry downlink, and supports near-real-time data delivery across Northwood's global ground network.
Edge systems (ground station)
High bandwidth data movement
Architect and optimize data pipelines for efficient movement of data between ground stations and various end environments
Architect a Tbps-class SD-WAN overlay (WireGuard + QUIC) that transparently shifts traffic between sites, S3-compatible buckets and customer VPCs, with per-flow QoS and FEC.
Monitoring & alerting systems
Global telemetry capabilities
Infrastructure, security & pipelines
A global network requires global deployments, and Northwood is committed to building a secure, reliable, and stable pipeline. This infrastructure empowers our developers to deploy changes continuouslyโwithout the risk of disrupting the system or relying on 'testing in prod.'
Production line software & testing
Develop software for production line bring-up and testing
Automate testing procedures to ensure hardware and software reliability
Working alongside mechanical/RF/EE/FPGA and SW engineers to ensure system correctness, performance, and reliability before leaving our manufacturing line
Simulation & orchestration software
Create simulations that model satellite and network design
Create simulation tools for testing and validating system performance
Design and implement software that orchestrates our global antenna network and data plane
Basic Qualifications:
5-7+ years of professional software development experience (this doesn't have to be from a full-time roleโthere are many ways to gain valuable experience, and we'd love to hear about yours - tell us about internships, projects out of the classroom, or any personal projects)
Completed bachelor's degree in Computer Science, Computer Engineering, Math or other related major (soft-requirement, tell us why you didn't pursue a degree, and what you've done in its place)
Preferred Qualifications:
While we don't expect you to have every skill listed below, we do expect you to take ownership of one or more areas and drive decisions and implementations where your strengths lie.
Programming Languages (General):
Strong problem-solving abilities
Excellent communication and collaboration skills
Ability to work in a fast-paced, dynamic environment
Domain specific skills:
Distributed Systems & Cloud Computing:
Experience designing and implementing distributed systems
Knowledge of cloud services (AWS, Azure, Google Cloud) and orchestration tools
Familiarity with microservices architecture and serverless computing
Hardware Interaction & FPGA:
Experience with hardware control systems
Familiarity with FPGA programming and orchestration
Understanding of embedded systems development (FreeRTOS, Zephyr)
Data Movement & Networking:
Proficiency in architecting data pipelines for high-throughput environments
Understanding of network programming and IP protocols
Experience with high-speed communications (10GigE+)
API & Front-End Development: