We invest in visionary teams with transformative ideas.

Join Canaan's extended family.
214
companies
757
Jobs

Lead Software Engineer

Kepler Communications

Kepler Communications

Software Engineering
Sterling, VA, USA
Posted on Dec 8, 2024
Kepler is on an audacious mission: to bring the internet to space. Founded in 2015, our ambition is to provide internet connectivity in space, whether in LEO, MEO, GEO, or beyond. With an expanding base of early customers and our first 23 satellites in orbit, Kepler is continuing to grow and expand its most important asset – the Team!
Kepler is looking for a dynamic top-tier Software Engineer to design and develop reliable, high-quality software. You will have the opportunity to work on a variety of tasks, including software development for both space- and ground-based assets supporting the development and testing of our satellites, mission control software, and product offerings. You'll be relied upon for input and decisions that will directly impact constellation design and operation.
To comply with federal government contracting regulations, this position requires U.S. citizenship due to the nature of the work involving access to classified or national security information.

Responsibilities:

  • Next-generation satellite onboard software
  • Work on Linux-based platforms including satellites
  • Firmware and drivers
  • Kepler satellite network infrastructure
  • Application infrastructure
  • Mission control software and automation
  • Hardware and software test infrastructure and automation, including writing thorough tests and documentation
  • Work in a CI/CD environmentand develop unit tests and integration tests suitable for automation in a CI/CD infrastructure
  • Lead software design review and code review processes
  • Work with electrical, digital design, and operations teams to identify required features and solidify the system architecture
  • Provide technical leadership, working with customers to ensure on-time delivery that meets requirements

Requirements:

  • 4+ years of embedded software development experience
  • 4+ years of Python experience
  • Bachelor's degree in Computer Science or equivalent
  • Strong software design and development skills, including algorithms, testing and debugging
  • Proficiency in C/C++, especially in embedded topics such as interrupt handlers, concurrency, memory mapped peripherals, and hardware interfaces (Ethernet, RS-422/485, SPI, I2C)
  • Experience with embedded operating systems and build systems, including OpenEmbedded/Yocto and FreeRTOS
  • Ability to operate in a Linux-based environment, with embedded Linux experience including writing kernel modules, device trees, and drivers
  • Experience working with relational databases
  • Excellent communication skills
  • Ability to effectively use git

Bonus Points:

  • Post-graduate degree in a relevant field
  • Current and/or active US security clearance
  • Experience developing software for aerospace applications
  • Experience working with commercial and US Government customers
  • Experience developing multi-stage bootloaders
  • Strong knowledge of computer networking and modern networking protocols
  • Experience with RTL (Verilog and/or VHDL), embedded SoCs, and ARM assembly
  • Hardware debugging experience (oscilloscopes, logic analyzers, etc.)
  • Familiarity with Python development tools such as pytest/unittest, setuptools, SWIG, and C-extensions
  • Experience with build and deployment tools like Make, Docker, and Ansible
  • Strong knowledge of computer networking and modern networking protocols
Kepler Communications Inc. is committed to fostering an inclusive, accessible environment, where all employees and customers feel valued, respected and supported. We welcome applications from: women, Aboriginal persons, persons with disabilities, ethnic minorities, visible minorities, people who identify as LGBT and others who may contribute to diversification in our workplace.
As part of our commitment to accessibility for all persons with disabilities, Kepler will, upon the request of the applicant, provide accommodation during the recruitment process to ensure equal access to applicants with disabilities. Please contact our People & Culture team, through our Career Page to make your accommodation needs known and we will consult with you to ensure suitable accommodation is provided.