12

Embedded Software Developer

VA, United States (USA), Sapienza Consulting [NSSR0002]

Field(s) of expertise
Software Engineering
Job type
Permanent
Education
Bachelor
Deadline
Closed

About this job

We have been retained by a nano-sat start-up venture who are seeking a software engineer who can support the company’s efforts to build out and test the key technologies related to the company’s space and ground payloads.

We require an Embedded Software Developer to support a critical RF/communications project. The team will be developing a variety of embedded applications for commanding and controlling ground and space payloads. The immediate role of this software developer will be to support programming of our spacecraft payload command, and data handling system, in addition to both it’s primary (payload) and secondary (TT&C) radio functions using a proprietary protocol. The software will initially be tested on the payload prototype in a lab environment that simulates orbit operations and the software developer will also be responsible for implementing methods of data acquisition to ensure successful testing, verification, and validation. We are looking for engineers that enjoy a challenge and have a track record of creative thinking to solve unconventional problems.

Responsibilities

  • Developing embedded software systems in assembly, C, C++, or other languages
  • Write software to interact with devices/electronics using I2C, SPI, RS-422, RS-485, Ethernet, etc. communications
  • Write Linux device drivers and system applications for our payload flight code
  • Integrating hardware and software systems, particularly SDRs and Linux servers/computers
  • Reverse engineering and analysis of software
  • Low-level programming of device drivers in a Unix, Linux, or Windows environment
  • Bit-level data analysis
  • Knowledge of various Operating Systems (OS) including Linux
  • Must be able to work independently and in a team environment

Profile

  • A Bachelor’s in EE, CE, or CS preferred
  • Experience developing embedded software systems in assembly, C, C++ required
  • Experience performing reverse engineering, analysis of software or low level programming strongly preferred
  • Hands-on experience with integrating hardware and software systems required
  • Hands-on experience with programming microcontrollers and single-board computers required
  • Hands-experience with programming SDRs and signal processing techniques is a big plus.
  • Strong knowledge of telecommunications protocols, RF communications, and multiple access methods.
  • Developing embedded software systems in one or more of the following operating system environments is required: Unix, Linux
  • Working knowledge of one or more of the following common protocols/standards: TCP/IP, SNMP, SDH/SONET, ATM, MPLS/GMPLS, Ethernet, Carrier Grade Ethernet, DSL, SS7, ISDN, Q2931, B-ISDN, X.25, 802.11, 802.16, SIP, MEGACO, or MGCP
  • Experience with Agile Methodologies desired.
  • Must be a US citizen.

For information on how the personal data in your application is processed, please see the Sapienza Consulting Privacy Policy.