Embedded Software Engineer

Actalent
Madison, United States of America
11 days ago

Role details

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

Job location

Madison, United States of America

Tech stack

Clean Code Principles
Business Logic
Azure
C++
Code Review
Communications Protocols
Computer Programming
Computer Engineering
Concurrency Controls
Continuous Integration
Linux
Embedded Software
Graphical User Interface
Hardware Design
Software Architecture
Real-Time Operating Systems
Software Engineering
Software Requirements Analysis
System Programming
Multithreading
PIC Microcontroller
Delivery Pipeline
GIT
C++14
Software Version Control

Job description

  • Design, develop, and maintain embedded software in C++ , focusing on core algorithms and business logic.
  • Collaborate with a small team of embedded engineers to define, implement, and refine system requirements and software architecture.
  • Perform detailed hardware integration, including working closely with microcontrollers and embedded peripherals to ensure reliable system behavior.
  • Analyze, document, and refine requirements for embedded systems, ensuring traceability from requirements to implementation.
  • Implement and manage multithreaded software components, including the use of threading, mutexes, and semaphores to ensure safe and efficient concurrent execution.
  • Develop and optimize software that interfaces with CAN communication protocols and other communication interfaces as required.
  • Implement and maintain graphical user interface features using TouchGFX on STM 32-bit microcontrollers.
  • Use containers and vectors for object declaration and management in modern C++ (C++17 and C++23) to write clean, efficient, and maintainable code.
  • Participate in the design and implementation of drivers and communication protocols in coordination with other specialized teams.
  • Utilize automated build pipelines, Git, and Azure DevOps to support continuous integration, version control, and collaborative development.
  • Troubleshoot and resolve software defects and integration issues, working closely with cross-functional teams.
  • Contribute to code reviews, technical documentation, and best practices to maintain high-quality software standards.

Requirements

  • Bachelor's degree in Computer Engineering.
  • 5+ years of experience developing software in modern C++ (C++17 and C++23).
  • 5+ years of experience working with CAN communication protocols.
  • 5+ years of experience with hardware integration and embedded requirements analysis.
  • 5+ years of experience with multithreaded programming, including threading concepts.
  • 5+ years of experience declaring and managing objects using containers and vectors in C++.
  • 5+ years of experience working with mutexes and semaphores for concurrency control.
  • 5+ years of experience with automated build pipelines, Git, and Azure DevOps.
  • 5+ years of experience with TouchGFX and STM 32-bit microcontrollers.
  • Strong proficiency in embedded software development using C++ on Linux or RTOS-based systems.
  • Solid understanding of microcontroller-based systems and low-level software integration.

Additional Skills & Qualifications

  • Experience working within a small, collaborative engineering team.
  • Familiarity with RTOS concepts and real-time embedded systems.
  • Experience with graphical user interfaces on embedded devices, including sounds and visual features.
  • Strong problem-solving skills and the ability to troubleshoot complex embedded systems.
  • Ability to work effectively in a cross-functional environment with teams focused on GUI, peripherals, and communication protocols.

Benefits & conditions

This is a Contract to Hire position based out of Fitchburg, WI.

Pay and Benefits

The pay range for this position is $45.00 - $52.88/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