Back to Search Results
Get alerts for jobs like this Get jobs like this tweeted to you
Company: SAIC
Location: Huntsville, AL
Career Level: Mid-Senior Level
Industries: Technology, Software, IT, Electronics

Description

Description

SAIC is looking for an Embedded Software Engineer to design, develop, and optimize software that runs directly on hardware devices. This role involves working close to the hardware - interfacing with microcontrollers, processors, and real-time operating systems to build reliable, deterministic, and high-performance embedded solutions. You'll collaborate with hardware engineers, firmware developers, and system architects to deliver products from concept through production. This role is onsite in Huntsville, AL.

Key Responsibilities

  • Design, develop, test, and maintain embedded software for microcontroller- and processor-based systems
  • Develop real-time applications using VxWorks RTOS, ensuring deterministic behavior and system reliability
  • Write efficient, maintainable, and well-documented code in C/C++
  • Interface with hardware components such as sensors, actuators, and communication modules (UART, SPI, I2C, CAN, etc.)
  • Develop and debug low-level drivers, BSPs (Board Support Packages), and middleware in VxWorks environments
  • Configure and optimize VxWorks kernel components, tasks, scheduling, and memory management
  • Perform system bring-up, debugging, and performance tuning on embedded targets
  • Participate in system architecture and real-time system design decisions
  • Conduct code reviews, unit testing, and integration testing
  • Troubleshoot hardware/software integration issues, including timing and concurrency problems

Qualifications

Education Requirements

  • Bachelor's degree in Computer Engineering, Electrical Engineering, Computer Science, or related field and two (2) years of experience in embedded software or firmware development

 

Clearance Requirements

  • Must possess an active Secret security clearance; US Citizenship required.

 

Required Skills

  • Strong proficiency in C/C++
  • Hands-on experience with VxWorks RTOS in a production or lab environment
  • Understanding of real-time scheduling, inter-process communication (IPC), and synchronization mechanisms (semaphores, message queues, etc.)
  • Experience with microcontrollers or embedded processors (e.g., ARM Cortex, PowerPC, x86)
  • Familiarity with communication protocols (SPI, I2C, UART, CAN, Ethernet)
  • Experience with debugging tools (oscilloscopes, logic analyzers, JTAG debuggers)

 

Preferred Qualifications

  • Experience developing or modifying VxWorks BSPs
  • Familiarity with the VxWorks development ecosystem (Workbench, command-line tools, build systems)
  • Experience with embedded networking (TCP/IP stack in VxWorks)
  • Knowledge of safety-critical systems (e.g., DO-178C, ISO 26262)
  • Experience with embedded Linux for comparison or hybrid systems
  • Familiarity with multi-core or distributed embedded systems
  • Scripting experience (Python, Bash) for automation and testing


 Apply on company website