Embedded Software Engineer

Actalent
Greenville, SC, United States
7 days ago
Apply on www.careerbuilder.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Experienced
Experience required
4 years minimum
Working hours
Regular working hours

Tech stack

C (Programming Language) Artificial Intelligence Confluence JIRA Automation of Tests Unit Testing C Sharp (Programming Language) C++ (Programming Language) Configuration Management Code Review Computer Programming Computer Engineering
+36 more
Software Debugging Software Design Documents Linux Device Drivers Document Management Systems Embedded C Linux on Embedded Systems Embedded Software Network Interface Controllers Formal Verification Home Automation Python (Programming Language) Unix Shell MATLAB Open Systems Interconnection (OSI) Systems Development Life Cycle Real-Time Operating Systems Requirements Management Server Administration Shell Script Simulink Software Engineering Verification and Validation (Software) Systems Integration Software Technical Review Scripting PIC Microcontroller Test Scripts Git Integration Tests Bare Metal Bitbucket Software Coding Atlassian Bamboo Jenkins Programming Languages

Job description

This role focuses on full lifecycle development of embedded software for complex electronic systems, from requirements analysis and design through implementation, integration, verification, and formal sell-off testing. The Embedded Software Engineer collaborates closely with hardware engineers, contributes to robust technical documentation, and supports automated build and test pipelines. This position offers the opportunity to work on advanced real-time and embedded Linux or RTOS-based solutions within a growing engineering team., * Perform full lifecycle development for embedded systems, including implementation, unit testing, integration, and formal sell-off testing.

  • Review customer requirements, translate them into clear specifications, and produce technical documentation, designs, and operational concepts.
  • Estimate effort and schedule for software development tasks and support planning activities.
  • Collaborate closely with hardware engineers to ensure seamless integration of software with electronic components, circuit card assemblies, and boards.
  • Develop and execute detailed test plans and procedures for embedded software and associated electronic equipment.
  • Perform debugging and troubleshooting to identify and resolve software and integration issues, ensuring compliance with functional specifications.
  • Conduct design and code reviews, provide constructive feedback, and resolve identified defects in a timely manner.
  • Adhere to established development processes, configuration management practices, and release procedures throughout the software lifecycle.
  • Design and implement software for real-time operating systems (RTOS) with strict timing requirements, including low-level device drivers and component-level integration.
  • Develop and maintain embedded software for embedded Linux or RTOS environments using C and C++.
  • Support and enhance automated build and test pipelines for embedded software using modern tools and practices.
  • Integrate software with custom processor-based circuit card assemblies and perform verification testing at the hardware-software interface.
  • Create and maintain required engineering documentation, including design descriptions, interface control documents, and test reports.
  • Support formal verification procedures and ensure traceability to requirements throughout development and testing.
  • Work effectively under technical leadership while demonstrating initiative, self-direction, and ownership of assigned tasks.
  • Present and explain software designs, technical decisions, and solutions to internal teams and stakeholders.
  • Contribute to requirements development and management activities, including analysis, decomposition, and traceability.
  • Participate in or lead small working groups as needed to solve technical problems and drive project tasks to completion.
  • Collaborate within a team environment on projects with a large number of requirements, ensuring consistency and quality across the software baseline.

Requirements

  • Bachelor’s degree and a minimum of 5 years of relevant experience, or a graduate degree with at least 4 years of related experience.
  • Proficient programming skills in embedded C and C++ for embedded Linux or RTOS environments.
  • Strong proficiency with microcontrollers, including understanding of requirements, constraints, and capabilities.
  • Strong proficiency in bare-metal driver development and writing code at the hardware level.
  • Strong proficiency integrating software with custom processor-based circuit card assemblies.
  • Proficient programming skills in Python for scripting, automation, or test support.
  • Experience in requirements development and management, including analysis and traceability.
  • Experience with formal verification procedures for embedded systems.
  • Hands-on experience with integration and verification testing of electronic equipment via software.
  • Experience creating required engineering documentation such as design documents and test procedures.
  • Familiarity with writing test scripts to support verification and validation activities.
  • Working knowledge of higher-level programming languages, including C#.
  • Excellent written and verbal communication skills for technical and non-technical audiences.
  • Strong attention to detail and a systematic, methodical approach to problem solving.
  • Ability to work effectively in a collaborative team environment on projects with a large number of requirements.
  • Willingness to learn, adapt, and embrace challenging technical tasks.

Additional Skills & Qualifications

  • Experience with Linux device driver development.
  • Experience with Linux shell scripting for automation and tooling.
  • Experience with bare-metal register-level configuration and setup software.
  • Experience developing device drivers for UARTs, IΒ²C, and similar communication interfaces.
  • Familiarity with tool suites such as JIRA, Confluence, Bitbucket (Git), Bamboo, and Jenkins.
  • Experience supporting or building automated build and test pipelines for embedded software.
  • Experience with model-based development using MATLAB and Simulink.
  • Demonstrated leadership ability to lead small working groups or technical task teams.
  • Knowledge of messaging protocols within the OSI 7-layer stack.
  • Interest in working with advanced aerospace and defense-related systems.
  • Motivation to contribute to a rapidly growing engineering team and participate in continuous improvement of processes and tools., Aerospace and Defense, Analysis Skills, Artificial Intelligence (AI), Atlassian JIRA, C Programming Language, C++ Programming Language, Candidate Screening, Circuit Components, Code Reviews, Communication Skills, Computer Engineering, Computer Programming, Configuration Management, Continuous Improvement, Debugging Skills, Detail Oriented, Device Drivers, Document Management, Documentation, Electrical Components, Embedded Linux, Embedded Programming Languages, Embedded Software, Embedded Systems, Formal Verification, Genetics, Git, Hardware Quality Assurance, Home Automation, Hospital, Identify Issues, Integration Testing, Jenkins, Leadership, Linux Drivers, Linux Operating System, MATLAB, Machine Tool, Maintain Compliance, Microcontroller, Microsoft C# (C Sharp), Open Systems Interconnection (OSI), Presentation/Verbal Skills, Problem Solving Skills, Process Development, Process Improvement, Process Management, Product Lifecycle, Programming Languages, Python Programming/Scripting Language, Realtime Operating System, Requirements Management, Sales, Scripting (Scripting Languages), Software Administration, Software Design, Software Development, Software Development Lifecycle (SDLC), Software Engineering, System Lifecycle, Team Lead/Manager, Team Player, Technical Leadership, Technical Support, Technical Writing, Technical/Engineering Design, Test Automation, Test Plan/Schedule, Test Scripts, Testing, Time Management, Traceability, Unit Test, Unix Shell Programming, Validation Testing, Writing Skills

Benefits & conditions

The role is based in an on-site office environment with a team of approximately 20 people, fostering close collaboration and frequent interaction with hardware and software engineers. The work involves hands-on interaction with embedded systems, microcontrollers, and custom processor-based circuit card assemblies, as well as use of modern software development and lifecycle tools such as JIRA, Confluence, Bitbucket (Git), Bamboo, and Jenkins. The environment supports structured development processes, configuration management, and automated build and test pipelines. Team members work on advanced, real-time embedded solutions in a professional setting that encourages knowledge sharing, technical excellence, and growth within a rapidly expanding engineering group.

Job Type & Location

This is a Permanent 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 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

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.careerbuilder.com
Prepare application

Good distractions

Talks and stories from around this role β€” technically off-topic, practically not.

1:19 min

Advancing autonomous driving capabilities with specialized software talent

Katrin Lehmann Katrin Lehmann +1 Β· Coffee With Developers

6:21 min

Investigating push inefficiencies with upstream Git experts

Jonathan Creamer Β· Coffee With Developers

3:05 min

Integrating an assistant application with Jira software

Felix Augenstein Β· LIVE

52 sec

Running persistent Linux environments directly on Windows

Ben Breard Ben Breard Β· World Congress 2025

3:51 min

Technical skills and collaborative mindsets for mobility engineering roles

Georg KΓΌhberger +1 Β· LIVE

56 sec

Favorite git commands and the importance of patch commits

Eileen Uchitelle Eileen Uchitelle +1 Β· Coffee With Developers

Videos

See all

Related articles

See all