Location: Fully onsite Start Date: April 6th Duration: 18 months Interview Process: 1 round virtual (technical) with Francisco PR: 45-50/hr Work Schedule: Onsite; flexible shift times Top Must‑Have Skills: Embedded systems knowledge Firmware development experience (UEFI strongly preferred) Strong C programming skills Ability to debug issues across firmware, drivers, and hardware boundaries Must Haves: 3+ years of professional experience designing and developing software solutions Bachelor’s degree in Computer Science, Electrical / Electronic / Automation Engineering, or related field Strong C/C++ design and coding skills Minimum 3 years of experience in firmware, embedded systems, or device driver development Experience with UEFI or microcontroller firmware, including work in an RTOS environment Windows driver or kernel debugging experience Working experience debugging hardware / firmware / software interactions, especially during board bring‑up Domain knowledge of PC subsystems and industry specifications (graphics, audio, cameras, sensors, touch, input devices) Proven ability to debug across multiple layers of the firmware/software stack and resolve complex cross‑team issues Hands‑on experience using oscilloscopes, protocol analyzers, or other hardware debugging tools Nice‑to‑Have Skills: Experience with any of: Windows Kernel or Internals Windows Drivers (WDF, KMDF, UMDF) Linux Drivers UEFI Windows kernel/driver debugging, memory crash dumps, or ETL trace analysis Experience troubleshooting system stability or performance issues using debuggers Familiarity with hardware interfaces such as SPI, USB, I2C, UART Overview The development team is seeking a Junior Firmware Engineer to support increased workload across existing projects. This is a net‑new role focused on firmware, UEFI, and low‑level system debugging, with an emphasis on identifying and fixing bugs quickly in a highly collaborative, fast‑paced environment. This role requires full onsite presence due to confidential hardware, lab access, and secure source code requirements. The ideal candidate can ramp quickly and contribute from day one, particularly in debugging and stabilization efforts. Key Responsibilities Debug, triage, and fix issues across UEFI, embedded firmware, and OS driver layers Work across hardware / firmware / software interactions, especially during board bring‑up and subsequent updates Contribute to firmware and driver development for Surface devices, including feature enhancements and bug fixes Partner closely with silicon partners, system engineers, firmware engineers, and architects on BSP integration and optimizations Analyze system‑level issues and provide clear root‑cause analysis spanning multiple subsystems Improve stability, performance, and usability through targeted fixes and optimizations Work hands‑on with onsite lab hardware and internal Microsoft tooling What Success Looks Like Able to start fixing firmware bugs quickly after onboarding Comfortable working across UEFI, firmware, and drivers Strong collaborator with firmware, hardware, and system teams Curious, hands‑on engineer who learns fast and delivers consistently
Read Less