Job Description
Overview
The Microsoft Surface 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
We are a company committed to creating diverse and inclusive environments where people can bring their full, authentic selves to work every day. We are an equal opportunity/affirmative action employer that believes everyone matters. Qualified candidates will receive consideration for employment regardless of their race, color, ethnicity, religion, sex (including pregnancy), sexual orientation, gender identity and expression, marital status, national origin, ancestry, genetic factors, age, disability, protected veteran status, military or uniformed service member status, or any other status or characteristic protected by applicable laws, regulations, and ordinances. If you need assistance and/or a reasonable accommodation due to a disability during the application or recruiting process, please send a request to HR@insightglobal.com.To learn more about how we collect, keep, and process your private information, please review Insight Global's Workforce Privacy Policy: https://insightglobal.com/workforce-privacy-policy/.
Skills and Requirements
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:
o Windows Kernel or Internals
o Windows Drivers (WDF, KMDF, UMDF)
o Linux Drivers
o 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