Staff Software Engineer - Payload
EOI Space · Lafayette, CO · 1 wk ago
On-siteInformation Technology$170k–$220k/yrFull-time
Responsibilities
- Coordinate, code, and lead implementation of cluster management and workload coordination systems and tools to manage the HPC
- Implement and test highly optimized GPU-aware containerized image processing workloads on the cluster
- Work hand in hand with Security, Export Compliance, and DevOps/Platform engineering to ensure we can deploy and maintain test, qualification, and flight-level updates
- Operate in a lean startup environment, maintaining a laser focus on the balance between what we need today and the things we are excited to add and enhance tomorrow
Requirements
- Champion our development team principles: Clear and explicit communication, within the team and between teams across the company
- Develop iteratively, integrate early and often, and coordinate functional cross-team demos of the iterative releases
- End-to-end observable and traceable systems
- Plan, define, prioritize, and track design and development activities to meet milestones and support inter-team dependencies
- Develop and deploy both image processing workload and cluster orchestration software to bench, rack, and flight versions of the payload processing system
- Support integration of the payload subsystem itself (multiple compute elements therein), as well as integration with bus flight software, wideband RF communications systems, and ground and space-based image processing pipelines
- Support testing and qualification campaigns as well as on-orbit updates
- Optimize for space flight by selecting and applying lightweight but modern OSS frameworks and tools, applied in a bandwidth-conscious way to support on-orbit updates to any level of the system (BSP, OS, and applications)
Qualifications
- Bachelor’s degree in computer science, software engineering, aerospace engineering, or a related technical field
- High competency with both scripted and compiled/type-checked languages (e.g. Python, C++, Go)
- 10+ years total experience in professional software engineering
- Experience with deploying software to intermittently connected, resource constrained edge compute environments
- Containerized workload management (Kubernetes)
- Relevant experience will include OS level programming, containerized cluster management, embedded systems development, hardware acceleration, and a solid understanding of tradeoffs between features and footprint
Desired Qualifications
- NVIDIA Jetson and CUDA programming experience
- Container building and optimization experience
- Experience building and optimizing scalable distributed image processing workflows
Pay & Benefits
The salary range for this role is $170,000-$220,000 per year, depending on previous experience. Pay ranges are determined by role, level, location, and alignment with market data. Individual pay will be determined on a case-by-case basis and may vary based on the following considerations: interviews and an assessment of several factors that are unique to each candidate, job-related skills, relevant education and experience, certifications, abilities of the candidate and internal equity.
The Company reserves the right to modify or change these benefits at any time.