Embedded Software Engineer

Safran DSICamarillo, CA
9d$80,000 - $130,000

About The Position

The Embedded Software Engineer will develop robust, production-quality software for integrated imaging and sensing systems. This role spans low-level microcontroller firmware, embedded Linux/Android application development, and system-level integration. The ideal candidate thrives in a multidisciplinary environment and enjoys working close to hardware to bring complex electro-optical systems to life.

Requirements

  • Bachelor’s degree in Computer Engineering, Computer Science, Electrical & Computer Engineering, or related technical field
  • Minimum of 5 years of professional embedded software development experience
  • Strong proficiency in C and C++ for embedded systems
  • Experience developing in Linux environments (kernel or user-space)
  • Experience developing Android-based embedded applications
  • Hands-on experience interfacing peripherals with microcontrollers
  • Working knowledge of communication protocols: I2C, SPI, UART, CAN, Ethernet
  • Experience with Git-based version control systems
  • Familiarity with modern IDEs and debugging tools
  • Strong analytical, troubleshooting, and problem-solving skills
  • Requires U.S. Citizenship or Permanent Resident Status required.

Nice To Haves

  • Experience in imaging systems, sensors, or optoelectronic devices
  • Experience with bootloaders, BSP development, or device driver development
  • Experience with real-time operating systems (RTOS)
  • Experience with power management optimization in embedded systems
  • Familiarity with secure boot or secure embedded architectures
  • Experience working in regulated or defense environments
  • Experience developing automated test scripts using Python
  • Understanding of software lifecycle processes and configuration management
  • Experience working in an ITAR environment

Responsibilities

  • Derive and develop detailed software requirements from system-level specifications
  • Design, implement, test, and validate embedded firmware for microcontroller-based systems
  • Develop and maintain low-level drivers and hardware abstraction layers
  • Interface with imaging sensors, camera modules, displays, and other peripherals
  • Implement and optimize communication interfaces including I2C, SPI, UART, CAN, and Ethernet
  • Develop user-space applications in Linux and Android environments
  • Design and validate power management and boot sequencing software
  • Support system integration, debugging, and performance optimization
  • Contribute to architecture decisions, design trade studies, and technical reviews
  • Prepare and maintain documentation including specifications, test plans, and validation procedures
  • Collaborate closely with electrical, optical, mechanical, and systems engineers
  • Perform other duties as assigned
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service