Embedded Software Engineer

CareerCircle
Greenville, United States of America
2 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

Job location

Greenville, United States of America

Tech stack

Adobe InDesign
Artificial Intelligence
Confluence
JIRA
Unit Testing
C Sharp (Programming Language)
C++
Configuration Management
Code Review
Computer Programming
Continuous Integration
Software Debugging
Programming Tools
Device Drivers
Embedded C
Linux on Embedded Systems
Embedded Software
Network Interface Controllers
Formal Verification
OSI Models
Python
Shell
Matlab
Open Systems Interconnection (OSI)
Real-Time Operating Systems
Shell Script
Simulink
Software Engineering
System on a Chip
Systems Integration
Software Technical Review
Scripting (Bash/Python/Go/Ruby)
PIC Microcontroller
Test Scripts
GIT
Bare Metal
Bitbucket
Software Coding
Software Version Control
Bamboo
Jenkins
Programming Languages

Job description

The Embedded Software Engineer will perform full lifecycle development for embedded systems, from requirements analysis and design through implementation, integration, and formal sell-off testing. This role involves close collaboration with hardware engineers to integrate software with electronic components and boards, as well as the creation of technical documentation, test plans, and engineering artifacts. The engineer will work under technical leadership while demonstrating initiative, supporting automated build and test pipelines, and contributing to a rapidly growing team in the aerospace and defense domain., * Perform full lifecycle development for embedded systems, including implementation, unit testing, integration, and formal sell-off testing.

  • Review customer requirements, translate them into detailed specifications, and produce technical documentation, designs, and operational concepts.
  • Estimate development effort and contribute to project planning and scheduling activities.
  • Collaborate closely with hardware engineers to ensure seamless integration of software with electronic components, boards, and custom processor-based circuit card assemblies.
  • Design and implement software for real-time operating systems (RTOS) with strict timing constraints, including development of low-level device drivers and support for component-level integration.
  • Develop and execute test plans and procedures, perform debugging and troubleshooting, and ensure compliance with functional and performance specifications.
  • Conduct design and code reviews, identify and resolve defects, and adhere to established development processes, configuration management, and release practices.
  • Support and help improve automated build and test pipelines for embedded software.
  • Integrate software with microcontrollers and bare-metal environments, including register-level configuration and setup.
  • Create required engineering documentation, including design descriptions, interface control documents, and verification reports.
  • Perform hands-on integration and verification testing of electronic equipment via software interfaces.
  • Apply formal verification procedures to validate that the software meets requirements and quality standards.
  • Develop and maintain test scripts to support automated and manual testing activities.
  • Participate effectively in a team environment on projects with a large number of requirements, contributing to planning, status updates, and technical discussions.
  • Present and explain software designs, implementation approaches, and solutions to internal teams and stakeholders.
  • Follow and promote best practices in software engineering, including systematic problem solving, attention to detail, and consistent documentation.
  • Use tools such as JIRA, Confluence, Bitbucket (Git), Bamboo, and Jenkins to manage work items, documentation, version control, and continuous integration.
  • Contribute to model-based development activities using MATLAB/Simulink where applicable.
  • Demonstrate initiative and leadership potential, including the ability to lead small working groups when needed., This role is based in an on-site office environment, working closely with a team of approximately 20 embedded software and hardware professionals. You will collaborate daily with engineers across disciplines in a setting that supports rapid learning, knowledge sharing, and hands-on integration and test activities. The position offers the opportunity to contribute to a rapidly growing team engaged in aerospace and defense projects, using modern development tools such as JIRA, Confluence, Bitbucket (Git), Bamboo, Jenkins, and MATLAB/Simulink. The work involves direct interaction with electronic hardware, lab equipment, and test setups, as well as participation in design reviews and technical discussions. The environment is professional, engineering-focused, and encourages initiative, continuous improvement, and close teamwork.

Requirements

Jenkins Planning Simulink Debugging Scripting Bitbucket Visionary Pipelines Scheduling Leadership Management Automation Innovation OSI Models Unix Shell Embedded C Bare Metal Code Review Unit Testing Communication Test Planning Device Drivers Manual Testing Rapid Learning Detail Oriented Version Control Problem Solving Project Planning Embedded Systems Microcontrollers Atlassian Bamboo Programming Tools Embedded Software Electronic Hardware Formal Verification Software Engineering Technical Leadership Laboratory Equipment Atlassian Confluence Programming Languages Electronic Components Requirements Analysis Artificial Intelligence Technical Documentation Configuration Management Linux On Embedded Systems Engineering Documentation Engineering Design Process C++ (Programming Language) Verbal Communication Skills Real-Time Operating Systems Git (Version Control System) Python (Programming Language) Continuous Improvement Process Troubleshooting (Problem Solving), * Bachelor's degree and a minimum of 5 years of relevant experience, or a graduate degree with at least 4 years of related experience.

  • Strong proficiency in embedded C and C++ programming for embedded Linux or RTOS environments.
  • Proficient programming skills in Python for embedded or supporting tooling.
  • Strong proficiency with microcontrollers, including understanding of requirements, constraints, and capabilities.
  • Proven experience writing code at the hardware level, including bare-metal driver development.
  • Experience integrating software with custom processor-based circuit card assemblies.
  • Experience in requirements development and management for complex systems.
  • Experience with formal verification procedures to validate software against requirements.
  • Hands-on experience with integration and verification testing of electronic equipment via software.
  • Experience creating required engineering documentation and technical artifacts.
  • Working knowledge of higher-level programming languages, including C#.
  • Ability to work effectively in a team environment on projects with a large number of requirements.
  • Excellent written and verbal communication skills.
  • Strong attention to detail, systematic approach to work, and solid problem-solving ability.
  • Willingness to learn and embrace challenging tasks.

Additional Skills & Qualifications

  • Experience with embedded Linux environments and Linux device driver development.
  • Experience with Linux shell scripting to support development and test activities.
  • Bare-metal register-level configuration and setup software experience.
  • Device driver development for UARTs, I²C, and similar communication interfaces.
  • Familiarity with writing test scripts to support automated and manual testing.
  • Experience with tool suites such as JIRA, Confluence, Bitbucket (Git), Bamboo, and Jenkins.
  • Experience with model-based development using MATLAB/Simulink.
  • Knowledge of messaging protocols within the OSI 7-layer stack.
  • Demonstrated leadership ability to lead small working groups.
  • Familiarity with Xilinx and Zynq-based platforms or similar programmable logic and processor systems., Greenville, SC*On-Site JIRA MATLAB Jenkins Planning Simulink Debugging Scripting Bitbucket Visionary Pipelines Scheduling Leadership Management Automation Innovation OSI Models Unix Shell Embedded C Bare Metal Code Review Unit Testing Communication Test Planning Device Drivers Manual Testing Rapid Learning Detail Oriented Version Control Problem Solving Project Planning Embedded Systems Microcontrollers Atlassian Bamboo Programming Tools Embedded Software Electronic Hardware Formal Verification Software Engineering Technical Leadership Laboratory Equipment Atlassian Confluence Programming Languages Electronic Components Requirements Analysis Artificial Intelligence Technical Documentation Configuration Management Linux On Embedded Systems Engineering Documentation Engineering Design Process C++ (Programming Language) Verbal Communication Skills Real-Time Operating Systems Git (Version Control System) Python (Programming Language) Continuous Improvement Process Troubleshooting (Problem Solving) +0

Google IT Automation with Python Embedded Software Engineer Actalent Greenville, SC*On-Site JIRA MATLAB Jenkins Planning Simulink Debugging Scripting Bitbucket Visionary Pipelines Scheduling Leadership Management Automation Innovation OSI Models Unix Shell Embedded C Bare Metal Code Review Unit Testing Communication Test Planning Device Drivers Manual Testing Rapid Learning Detail Oriented Version Control Problem Solving Project Planning Embedded Systems Microcontrollers Atlassian Bamboo Programming Tools Embedded Software Electronic Hardware Formal Verification Software Engineering Technical Leadership Laboratory Equipment Atlassian Confluence Programming Languages Electronic Components Requirements Analysis Artificial Intelligence Technical Documentation Configuration Management Linux On Embedded Systems Engineering Documentation Engineering Design Process C++ (Programming Language) Verbal Communication Skills Real-Time Operating Systems Git (Version Control System) Python (Programming Language) Continuous Improvement Process Troubleshooting (Problem Solving) +0

Google IT Automation with Python

Benefits & conditions

This is a Contract to Hire position based out of Greenville, SC. Pay and Benefits

The pay range for this position is $90000.00 - $130000.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 20,000 consultants and 5,000 clients across the U.S., Canada, Asia and Europe, Actalent serves many of the Fortune 500. We are proud to be an Engineering News-Record (ENR) Top 500 Design Firm for our engineering design services and a ClearlyRated Best of Staffing® winner for both client and talent service.

Apply for this position