Embedded Software Engineer
Astro Digital designs, builds, and operates a diverse range of small satellite systems supporting space-based turnkey missions for several business applications, including earth observation, communications, in-orbit demonstrations, risk reduction opportunities, in addition to various science and exploration applications. Astro Digital is headquartered in Santa Clara, California with infrastructure around the globe.

Position Summary

Design, write, test, document, debug, bring up, and deploy embedded software to microcontrollers and microprocessors for spacecraft subsystems.

Note: Proof of COVID-19 vaccination status (vaccination card) will be required for employment otherwise a request for or medical or religious accommodation is necessary.
Primary Duties and Responsibilities
  • Work with Electrical, RF, and Software engineers to implement new subsystems or design revisions that communicate with core flight software.
  • Maintain and enhance existing embedded software.
  • Write C and Python drivers for integrated circuits I2C, SPI, UART or other interfaces based on manufacture datasheets.
  • Write interface control documents (ICD) or Application Programming interfaces (API) or core flight software drivers for the embedded systems.
  • Gain a systems level understanding of the Astro Digital spacecraft.
  • Occasionally fill in for higher level software tasks.
Minimum Qualifications

  • BS in Software Engineering, Computer Science, or related field.
  • Proficient in C or C++ programming. Comfort with Python.
  • Experience with Embedded-C or RTOS: threads, interrupts, concurrency, HAL.
  • Experience developing hardware drivers.
  • Comfortable with command-line environments (Linux) and scripting.
  • Ability to work independently.
  • Good written and verbal communications skills

Preferred Qualifications

  • Experience with building systems like CMake, using device trees, linking libraries, etc.
  • Experience with Micro Python.
  • Experience with Zephyr RTOS or TI RTOS
  • Experience using version control and CI/CD system.
  • Experience with Linux kernel module driver.
  • Experience with Nvidia Jetson devices.
  • RF Engineering or low-level protocols familiarity
  • Familiarity with GNU Radio or Software Defined Radios (SDR).
  • Xilinx Zynq/FPGA knowledge
  • General hardware stills (reading schematics, probing with instrumentation, etc)

Competencies

  • Proficient in C or C++ programming. Comfort with Python.
  • Experience with Embedded-C or RTOS:

This position requires access to export-controlled commodities, technical data, technology, software, and services. U.S. citizenship, U.S. legal permanent resident status, or protected person status under 22 CFR §120.15 and 8 U.S.C. § 1324b(a)(3) is required.

During the course of the application and interview process for certain engineering positions, you may be asked to perform functional activities to demonstrate your skills with parts and equipment we work with. By agreeing to engage in such skills testing, you also agree not to disclose the specific activities you are asked to engage in or any other aspect of the skills demonstration.

Astro Digital is proud to be an equal opportunity employer. Astro Digital does not discriminate on the basis of race, regional color, national origin, gender (including pregnancy, childbirth, or related medical conditions), sexual orientation, gender identity, gender expression, age, status as a protected veteran, status as an individual with disability, or other applicable legally protected characteristics.


Job Type: Full Time
Location: Santa Clara, CA