Software Systems Engineer

Software Systems Engineer

02 Jan 2024
California, Mojave, 93501 Mojave USA

Software Systems Engineer

Vacancy expired!

Software Engineer - Flight Platforms
Software engineers and programmers for flight software and mission operations software are needed. We are looking to hire individuals who have

not just maintained/made incremental improvements to an existing large codebase/product, but rather are comfortable writing a 10-20,000 line of code application in under a year, and hopping between multiple projects. Ideally, someone with substantial open-source work (personal projects, Linux Kernel contributions, etc.) Our Engineers would love to see your Github account! Candidates with experience in the High-frequency Trading (HFT), Finance/FinTech, Gaming/VR, Scientific Computing, & NewSpace industries are encouraged to apply!

Key responsibilities:
  • Architecting a robust, highly resilient and fault-tolerant distributed avionics system
  • Developing FDIR (Fault Detection, Isolation & Recovery) algorithms
  • Selecting third-party/open-source software frameworks (RTOS, middleware, bootloaders, C/C runtimes) based on system-level and schedule requirements
  • Selection of peripheral devices and interfaces for processing platforms
  • Development of drivers and board-support packages (BSP)
  • Participating in informal and formal system design reviews and fault tolerance analysis/FMECA
  • Supporting flight operations

Required skills:
  • Thorough understanding of C and C (C98 or greater)
  • Understanding of build tools and infrastructure (compilers, linkers, debuggers, C/C runtime libraries, CI tools)
  • Detailed knowledge of software design from first principles on x86, ARM & PowerPC architectures (bootloaders, startup code, C/C runtime implementation)
  • Development of hard-real time software in POSIX environments
  • Basic understanding of operating system kernel configuration fundamentals for real-time system behavior
  • Detailed understanding of common software design paradigms (message-passing, event-driven, RAII, et. al.)
  • Understanding of considerations when developing fault-tolerant software components such as error-tolerant file systems, communications agents, memory-scrubbing/EDAC

Additional useful skills:
  • Experience with Modern C (C11/14 or greater) or emerging systems languages like Rust
  • Understanding of basic EE hardware design concepts
  • Board design/bring-up experience
  • Knowledge of analog/mixed-signal systems design
  • Experience in controls/GNC (implementing state estimation, sensor fusion & similar algorithms)
  • Working knowledge of communications security (commsec) and information assurance concepts
  • Experience with Linux/UNIX, Linux kernel (scheduler, driver stack), microcontrollers (Cortex R/M)
  • Some experience with PCB design and/or board bring-up from an embedded standpoint
  • Bootloader development experience
  • Comms protocol understanding (CAN, SPI, I2C, UART, LIN, Ethernet, IEEE1588 PTP)
  • Understanding of performance/determinism trade-offs when writing hard-real-time software

Related jobs

Job Details

  • ID
    JC7697486
  • State
  • City
  • Job type
    Permanent
  • Salary
    $100,000 - $120,000
  • Hiring Company
    TEG Staffing, Inc.
  • Date
    2020-12-30
  • Deadline
    2021-02-28
  • Category

Jocancy Online Job Portal by jobSearchi.