hireneXus
Senior Embedded Software Engineer
Skills
2 months ago
Share this opportunity
Share this opportunity to other talents of your network:
✓ Offer them a visibility boost with clients.
✓ Help your contacts find their next job.
Important information
Contract type:
Permanent
Location:
Eden Prairie, MN, USA
Work mode:
Onsite
Published on:
3 September 2026
What they need
Senior Embedded Software Engineer
The Senior Software Engineer performs research, designs, tests, and implements application software on a variety of embedded and desktop platforms.
Reports to: Senior Manager of Engineering
Location: Eden Prairie, MN office
This role has no direct supervisory responsibilities but does serve as a coach and mentor for other positions in the department
The candidate must meet the definition of “US Person” under ITAR/EAR regulations
Key Responsibilities
Lead, mentor, and review the work of software design engineers, providing technical direction and ensuring engineering best practices are followed.
Translate product and customer requirements into scalable, maintainable, and efficient software architectures.
Design, develop, and maintain embedded software for 8-bit, 16-bit, 32-bit, and 64-bit processor-based platforms.
Develop software solutions using Assembly, C, C++, and Python. Knowledge of additional programming languages such as C#, Java, Go, or R is considered an advantage.
Design and implement software for bare-metal, RTOS, Linux, and Android environments. Experience with Yocto, Linux open-source ecosystems, and Android Open Source Project (AOSP) is highly desirable.
Develop and maintain device drivers and Board Support Packages (BSPs) for peripherals and interfaces including USB, Ethernet, CAN, SPI, I²C, PCI Express, HDMI, Audio, Video, NAND/NOR Flash, DDR3/DDR4, SDRAM, ATA, and related hardware components.
Design and integrate software solutions supporting wireless communication technologies such as Wi-Fi (802.11), Bluetooth, GPS, and cellular connectivity.
Perform software architecture and design reviews to ensure solutions are reliable, maintainable, scalable, and aligned with customer requirements.
Prepare and maintain engineering documentation, including Software Requirements Specifications (SRS), Software Design Specifications (SDS), Software Development Plans (SDP), verification test plans, and validation reports.
Deliver assigned engineering tasks within established project schedules and budget objectives.
Collaborate closely with cross-functional engineering teams, project managers, and customers to ensure successful project execution and delivery.
Lead customer projects when required, coordinating technical activities across multiple engineering disciplines.
Required Qualifications
Bachelor's degree in Computer Science, Computer Engineering, Software Engineering, or a related technical discipline.
Minimum of 4 years of experience developing embedded software for microprocessor-based systems, with strong experience in Yocto Linux or other embedded Linux distributions.
At least 2 years of hands-on experience developing Android system software, Hardware Abstraction Layer (HAL), or Android Open Source Project (AOSP)-based solutions.
Strong background in embedded systems design and software development for microprocessor-based platforms.
Experience across the complete product development lifecycle, including requirements analysis, system architecture, software design, Design for Manufacturing (DFM), Design for Test (DFT), and software verification.
Ability to evaluate customer requirements for technical feasibility, development effort, project cost, and delivery timelines.
Excellent written and verbal communication skills with experience preparing technical specifications, engineering documentation, project proposals, and technical presentations.
Solid understanding of object-oriented analysis and design (OOA/OOD), software architecture principles, and design patterns.
Strong understanding of processor architecture, including cache hierarchies (L1/L2), MMU, DMA, interrupt handling, power management, memory subsystems, and bus architectures.
Experience developing software for embedded peripherals and communication interfaces including Ethernet, USB, SPI, I²C, CAN, and Flash memory.
Practical experience using embedded debugging and validation tools such as JTAG debuggers, oscilloscopes, and spectrum analyzers.
Familiarity with ARM, PowerPC, and x86 processor architectures.
Experience developing applications, device drivers, BSPs, or middleware for embedded Linux, Android, RTOS, Windows CE, iOS, or similar embedded operating systems.
Knowledge of networking concepts, including TCP/IP, routing protocols, and Internet communication standards, is desirable.
Proficiency with Microsoft Office applications, including Microsoft Project.
Ability to thrive in a dynamic, fast-paced environment while managing multiple priorities and maintaining a strong customer focus.
Experience working within Agile and Scrum software development methodologies.
Preferred Qualifications
Experience contributing to Linux kernel development or other open-source software projects.
Familiarity with modern software development tools including Git, CI/CD pipelines, automated testing, and code review processes.
Experience with secure embedded software development, functional safety standards, or regulated industries such as medical devices, aerospace, or automotive is a plus.
Exposure to cloud-connected embedded systems, edge computing, or IoT device development is advantageous.
Other offers great for you!
These companies are also looking for great profiles
Rheso.tech
Senior Embedded Software Engineer
80-100k€ (Annuel)
Permanent contract
Munich, Germany
Hybrid
1 year ago
Quick apply
Rheso.tech
Senior Embedded Software Engineer - 2019
80-100k€ (Annuel)
Permanent contract
Munich, Germany
Hybrid
10 months ago
Quick apply
Groupe c8g
Senior Embedded Software Engineer – LoRaWAN / Industrial IoT
630
Freelance
98000 Monaco
Hybrid
Skills
4 months ago
Quick apply
No company information available.