Embedded Software Engineer

Actalent
Merritt Island, United States of America
19 days ago

Role details

Contract type
Temporary to permanent
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Intermediate
Compensation
$ 114K

Job location

Merritt Island, United States of America

Tech stack

Board Bringup
C
Microsoft Word
Microsoft Excel
Microsoft Windows
API
JIRA
UClibc (C Standard Library)
Microsoft Outlook
C++
Software Quality
Code Review
Collaborative Software
Communications Protocols
Computer Engineering
Software Debugging
Linux
Programming Tools
Device Drivers
Embedded C
Linux on Embedded Systems
Embedded Software
Ethernet
Firmware
Field-Programmable Gate Array (FPGA)
FreeRTOS
Hardware Description Language
Hardware Design
Joint Test Action (IEEE Standards)
Linux kernel
PCI Express
Real-Time Operating Systems
Signal Integrity
Software Engineering
Software Requirements Analysis
Software Systems
System on a Chip
System Programming
Toolchain
Universal Asynchronous Receiver/Transmitter
USB
Verilog
VHDL
Serial Peripheral Interface
PIC Microcontroller
Office365
Fpga Hardware
Peripherals
GIT
Yocto
Information Technology
Bare Metal
Build Tools
Software Version Control
Devsecops
Programming Languages

Job description

This role focuses on designing, developing, debugging, testing, and implementing embedded software and systems for aerospace products, as part of a multi-disciplinary, high-performing engineering team. The Embedded Software Engineer develops highly reliable software and firmware in C and C++ for microcontroller-based and embedded Linux platforms, collaborates closely with hardware engineers, and supports testing, deployment, and updates of mission-critical systems. This is a 100% onsite position based in Cape Canaveral, working within an engineering environment that emphasizes quality, collaboration, and continuous improvement., * Design, develop, and maintain embedded software and firmware using C, C++, Embedded C, and other relevant programming languages.

  • Develop and integrate software that interfaces with common embedded communication protocols such as SPI, I2C, USB, UART, CAN, GPIO, and other serial interfaces.
  • Utilize version control systems, simulation tools, debugging utilities, and other development tools to support robust and maintainable software delivery.
  • Collaborate closely with hardware engineers to define system requirements, support board bring-up, and ensure seamless integration between hardware and software.
  • Provide engineering support for testing, deployment, and software updates, including troubleshooting and resolving issues at the system and register level.
  • Develop highly reliable software solutions that meet the needs of the Engineering Team and support mission objectives.
  • Participate in architecture and design discussions, and contribute to code reviews to ensure code quality, maintainability, and adherence to best practices.
  • Adhere to all Quality Management Systems standards, processes, and procedures throughout the software development lifecycle.
  • Interpret and apply information from datasheets, reference manuals, and schematics to implement and debug device drivers and low-level software.
  • Support board bring-up by validating power, clocks, peripherals, and boot stages on new hardware platforms.
  • Collaborate with cross-functional teams using tools such as Git and JIRA to manage tasks, track issues, and maintain project documentation.
  • Contribute to the development and maintenance of Linux-based embedded systems, including firmware images, kernel configuration, and user-space drivers.
  • Use test harnesses and participate in bring-up and qualification workflows for new hardware platforms.
  • Maintain a collaborative and respectful team culture by treating all team members with dignity and supporting open communication.
  • Perform other engineering-related duties as assigned to support team and organizational goals., This role is based 100% onsite in Cape Canaveral and operates within a hands-on engineering lab and office environment. You will work closely with a multi-disciplinary team of software and hardware engineers using modern embedded development toolchains, version control systems, and collaboration platforms such as Git, JIRA, and Microsoft 365 (Excel, Word, Outlook, and Teams). The work involves frequent interaction with embedded Linux platforms, microcontroller development boards, and FPGA-based systems, as well as regular use of lab equipment including oscilloscopes, logic analyzers, and bus sniffers for board bring-up and debugging. The environment emphasizes adherence to Quality Management Systems, structured development processes, and a collaborative culture where team members treat each other with respect and maintain open communication. Work hours follow a standard onsite engineering schedule, with the expectation of being physically present to support hardware integration, testing, and cross-functional collaboration.

Requirements

  • 3 or more years of experience in embedded software development.
  • Strong proficiency in C and C++ for embedded systems, including modern embedded development practices such as cross-compilation, toolchains, JTAG/SWD debugging, version control, and code review.
  • Hands-on experience developing firmware for microcontrollers such as STM32, NXP, TI, or Microchip families.
  • Demonstrated experience writing bare-metal device drivers for interfaces including I2C, SPI, UART, CAN, and GPIO.
  • Experience working with Linux at the systems level, including userspace driver development against /dev, /proc, character devices, and standard kernel APIs.
  • Ability to read and interpret datasheets, reference manuals, and schematics, and to debug issues at the register level.
  • Experience using lab equipment such as oscilloscopes, logic analyzers, and bus sniffers for debugging embedded systems.
  • Board bring-up experience, including validating power, clocks, peripherals, and boot stages on new hardware.
  • Experience with DevSecOps practices and tools, including Git and JIRA, with a demonstrated understanding of their use in software development workflows.
  • Knowledge of embedded Linux software development, including firmware image creation, Linux kernel configuration, modules, and user-space driver development.
  • Familiarity with CI/CD pipelines for building, testing, and deploying embedded software.
  • Proficiency with Microsoft 365 tools, including Excel, Word, Outlook, and Teams.
  • Bachelor's degree in Computer Engineering, Electrical Engineering, Computer Science, or a related field.

Additional Skills & Qualifications

  • Experience with Linux kernel driver development, including platform drivers, multi-function devices (MFD), interrupt (IRQ) handling, and DMA.
  • Real-time operating system (RTOS) experience with platforms such as FreeRTOS, Zephyr, ThreadX, or similar, including task scheduling, IPC primitives, and ISR design.
  • FPGA development experience using Verilog or VHDL, including HDL simulation and timing closure, or experience writing software that interfaces with FPGAs over PCIe, AXI, or memory-mapped registers.
  • Experience with system-on-chips (SoCs) that combine FPGA fabric and a hard processor subsystem, such as Xilinx Zynq / Zynq UltraScale+, Microchip PolarFire SoC, or Intel Agilex SoC, including AXI interconnect partitioning, shared-memory schemes, and host-fabric DMA.
  • Familiarity with build systems for embedded Linux such as Yocto or Buildroot.
  • Exposure to higher-speed serial interfaces such as LVDS, MIPI, and Ethernet, including understanding of timing and signal integrity considerations.
  • Experience writing test harnesses and contributing to bring-up and qualification workflows for new hardware platforms.
  • Experience with RTOS, FPGA, and embedded Linux environments, including working with firmware images and real-time constraints.

Benefits & conditions

This is a Contract to Hire position based out of Merritt Island, FL.

Pay and Benefits

The pay range for this position is $48.00 - $55.00/hr.

Eligibility requirements apply to some benefits and may depend on your job classification and length of employment. Benefits are subject to change and may be subject to specific elections, plan, or program terms. If eligible, the benefits available for this temporary role may include the following: - Medical, dental & vision - Critical Illness, Accident, and Hospital - 401(k) Retirement Plan - Pre-tax and Roth post-tax contributions available - Life Insurance (Voluntary Life & AD&D for the employee and dependents) - Short and long-term disability - Health Spending Account (HSA) - Transportation benefits - Employee Assistance Program - Time Off/Leave (PTO, Vacation or Sick Leave)

Workplace Type

About the company

Actalent is a global leader in engineering and sciences services and talent solutions. We help visionary companies advance their engineering and science initiatives through access to specialized experts who drive scale, innovation and speed to market. With a network of almost 30,000 consultants and more than 4,500 clients across the U.S., Canada, Asia and Europe, Actalent serves many of the Fortune 500.

Apply for this position