Lead Embedded Linux Platform Engineer – Linux BSP & Android
Lead Embedded Linux Platform Engineer – Linux BSP & Android
Medallion designs and engineers advanced display-based instrumentation systems powered by highly customized, proprietary operating systems. We are adding a Lead Embedded Platform Engineer to our team. You will drive the development and integration of Linux and Android system software for our next-generation products.
This is a hands-on technical role focused on solving complex hardware and software challenges. You will work with cross-functional engineering teams to bring up new hardware, support products from initial power-on through production, and provide technical leadership across the embedded software stack.
The ideal candidate has strong experience with board bring-up, bootloader development, Linux kernel porting, device driver development, and embedded system integration. You will help deliver reliable, production-ready software for advanced embedded products.
Key Responsibilities
Bring-Up & Hardware Enablement
Lead embedded platform bring-up from initial power-on through production.
Develop and maintain boot software, including U-Boot, ARM Trusted Firmware, and custom bootloaders.
Configure and validate low-level hardware initialization, including memory, clocks, power, and peripheral interfaces.
Lead DDR/DRAM bring-up, tuning, and stability validation across operating conditions.
Debug complex boot and hardware/software integration issues across the complete boot chain.
Collaborate with hardware teams on prototype validation, board reviews, manufacturing readiness, and production support.
Use hardware debugging tools such as JTAG, oscilloscopes, and logic analyzers to diagnose system issues.
Linux Platform Development
Port, customize, and maintain Linux on ARM and ARM64-based embedded platforms.
Integrate vendor BSPs while maintaining long-term platform quality and maintainability.
Userspace creation via Yocto/Buildroot or full port of Debian/Ubuntu/Alpine Linux.
Optimize system boot speed, reliability, and overall performance.
Kernel, Drivers & Middleware Development
Develop, customize, integrate, and maintain company-specific Linux kernel variants and device drivers.
Support hardware interfaces including:
Graphics and display systems
Camera and imaging pipelines
Audio subsystems
Wireless connectivity
Storage and high-speed interfaces
Embedded peripherals and communication buses
Integrate and optimize multimedia, graphics, networking, and hardware acceleration frameworks.
Debug issues spanning firmware, kernel drivers, middleware, and userspace applications.
Embedded Firmware & Heterogeneous Systems
Develop and integrate embedded firmware for MCU-based subsystems, including ARM Cortex-M platforms.
Support Linux + MCU architectures for real-time control, power management, sensing, and peripheral management.
Work with heterogeneous processor architectures, including ARM Cortex-A/Cortex-M and AMP systems.
Develop and debug RTOS-based firmware using FreeRTOS or equivalent platforms.
Apply real-time design principles including scheduling, interrupts, synchronization, and concurrency management.
Develop low-level firmware, hardware abstraction layers, and peripheral drivers.
Firmware Updates, Recovery & System Reliability
Design robust firmware deployment, recovery, and update mechanisms.
Support secure firmware updates, OTA updates, A/B partitioning, rollback, and recovery workflows.
Maintain firmware versioning, system resiliency, and platform security.
Android Platform Integration
Support Android platform bring-up and customization.
Integrate bootloaders, kernels, BSPs, HALs, and vendor Android components.
Debug and optimize Android embedded platforms.
Technical Leadership
Provide technical leadership for embedded software architecture and platform design.
Mentor engineers and promote software engineering best practices.
Collaborate with hardware, systems, manufacturing, and product teams to deliver reliable embedded products.
Required Experience & Qualifications
Bachelor's or Master's degree in Computer Engineering, Electrical Engineering, Computer Science, or a related discipline.
8+ years of experience developing embedded Linux systems and Board Support Packages.
Strong expertise with ARM and ARM64 architectures; experience with other processor architectures is an asset.
Expert-level C programming skills and working knowledge of assembly.
Demonstrated success taking embedded products from development through production launch, with the ability to work independently and contribute effectively within small to medium-sized engineering teams.
Experience with Git, CI/CD pipelines, and automated embedded software build and test environments.
Additional Expectations
Results-oriented mindset with a strong sense of ownership, accountability, and commitment to delivering high-quality engineering solutions.
Ability to manage multiple priorities and consistently deliver high-quality work in a fast-paced, deadline-driven environment.
Pay: $117,350.89 - $125,454.14 per year
Benefits:
401(k) 4% Match
Dental insurance
Employee assistance program
Health insurance
Health savings account
Life insurance
Paid time off
Referral program
Tuition reimbursement
Vision insurance
Application Question(s):
What is your expected rate of pay for this position?
Education:
Bachelor's (Preferred)
Experience:
embedded Linux: 5 years (Required)
Ability to Commute:
Spring Lake, MI 49456 (Required)
Work Location: In person