Skip to content
DiceOpen

Firmware Engineer(Embedded Systems and C++)

Saim Technologies · Milwaukee, WI, US · On-site · Senior

  • Milwaukee, WI, US · On-site
  • 6 Months

Indexed (3 days ago) · refreshed constantly

Start
flexible
Duration
6 Months
Work mode
On-site
Contract
Freelance / B2B
Seniority
Senior
Reference
9124050

Required skills

Job description

Project overview

Job Title: Firmware Engineer (Embedded Systems and C++)

Length Of Assignment: 6 Months Contract

Pay Range: $38/hr. - $42/hr. on W2

Work Mode: Milwaukee, WI (Onsite)

Position Summary

We are seeking a self-directed firmware engineer to contribute to embedded software development for MR platforms. The engineer will work across firmware, systems, hardware, and architecture teams to translate requirements into reliable software. Success in this role requires strong C++ fundamentals, practical embedded development experience, disciplined engineering practices, and the ability to quickly learn a complex technical environment and make progress with limited supervision.

Key Responsibilities

Required Qualifications

Preferred Qualifications

If you are interested in exploring this opportunity further, please feel free to reply to this email or contact me directly at +1 or . I would be delighted to provide more details and discuss how your skills align with this exciting role.

Job Facts: Contract W2 | 6 Months | On-site | $38 - $42/hr

Skills: C++, Embedded Systems, Firmware Development, Embedded Software Development, Object-Oriented Programming (OOP), Modern C++, Memory Management, Concurrency, Multithreading, Real-Time Systems, RTOS, Hardware-Software Integration, Device Drivers, FPGA Integration, Hardware Bring-Up, Board-Level Debugging, Communication Protocols, Linux, Debuggers, Emulators, Protocol Analyzers, Logic Analyzers, System Logs, Git, Source Control, Build Systems, Container-Based Workflows, Requirements Analysis, Software Design, Integration Testing, Verification and Validation, Defect Resolution, Unit Testing, Automated Testing, Regression Testing, Continuous Integration (CI), Code Reviews, Error Handling, Technical Documentation, Design Traceability, Software Quality Assurance, Systems Engineering, Software Architecture, Root Cause Analysis, Technical Troubleshooting

Reference: Dice Id: 91131463 | Position Id: 9124050

  • Own assigned firmware features or components from requirements analysis through design, implementation, integration, verification, and defect resolution.
  • Independently learn existing code, hardware interfaces, development tools, and system behavior; identify the right technical resources and ask focused questions when needed.
  • Develop maintainable embedded software in modern C++ using sound object-oriented design, clear interfaces, and appropriate error handling.
  • Collaborate with systems, hardware, FPGA, software, and architecture teams to clarify requirements, evaluate tradeoffs, and resolve cross-functional issues.
  • Use debuggers, emulators, analyzers, logs, and other diagnostic methods to isolate complex software and hardware interaction problems.
  • Create unit and integration tests, contribute to automated testing, and support continuous integration to improve software quality and regression coverage.
  • Participate in design and code reviews; provide constructive feedback and incorporate review input promptly.
  • Estimate, plan, and track work through user stories; communicate status, risks, dependencies, and technical blockers early and clearly.
  • Follow applicable quality processes and produce clear technical documentation that supports design traceability, testing, and long-term maintenance.
  • Work effectively with globally distributed teams and contribute to consistent design and architectural improvements across MR platforms.
  • Bachelor's degree, or equivalent practical experience, in Computer Engineering, Electrical Engineering, Computer Science, or a related field.
  • 5+ years of professional experience developing embedded or firmware software.
  • Strong C++ programming skills, including object-oriented design, memory management, concurrency fundamentals, debugging, and writing maintainable production code.
  • Hands-on experience developing software that interacts with hardware, real-time systems, device interfaces, or resource-constrained embedded platforms.
  • Proven ability to learn unfamiliar technologies and codebases independently, break down ambiguous problems, and deliver results with minimal guidance.
  • Experience with embedded development and diagnostic tools such as debuggers, emulators, protocol or logic analyzers, and system logs.
  • Experience with Linux-based development environments, source control such as Git, and build or container-based workflows.
  • Experience with continuous integration, automated testing, and disciplined software review practices.
  • Clear written and verbal communication skills, including the ability to explain technical decisions, raise risks, and collaborate across functions.
  • Experience with a real-time operating system and multi-threaded or concurrent software.
  • Experience with hardware bring-up, board-level debugging, device drivers, communication protocols, or FPGA and firmware integration.
  • Experience working in a regulated, safety-critical, or quality-controlled product-development environment.
  • Experience working in Agile teams and planning work through user stories and iterative delivery.

Project details

  • Start: flexible
  • Duration: 6 Months
  • Remote: onsite
  • Location: Milwaukee, WI, US, US

Indexed by 9am's meta-search. You are a job provider? Claim or manage this listing

Found on Dice

  1. freelancermap

    Embedded Software Developer

    FERCHAU GmbH· Bergisch Gladbach, Deutschland, Germany· Hybrid· Senior

    • Embedded C++
    • Embedded Systems
    • Embedded Linux
    • +9

Browse all jobs
Sign up free to apply