**Job Id** E1960693
**Job Title** Embedded Software Engineer – Bootloaders
**Post Date** 01/15/2018
**Company-Division** Qualcomm Technologies, Inc.
CDMA Technology at http://www.qualcomm.com/about/businesses/qct
**Job Area** Engineering – Software
**Location** California – San Diego
Qualcomm processors provide integrated solutions for millions of diverse mobile and new emerging platforms across IoT, Automotive and Compute markets. It all starts with the Boot Firmware the first mission critical code to execute on our SoC(System on chip) and prepare the system for operation. We design and develop the software we put in mask boot ROM, along with system boot-loaders. Features we work on include image authentication, multicore setup, the UEFI pre-boot environment, configuration of next-generation DDR memories, ARM CPU and custom Qualcomm DSP/microprocessors, MMU/Cache memory management and advanced driver development for multiple boot/storage devices including eMMC, UFS, NAND, SPI-NOR, QSPI and flashless boot transport interfaces such as PCIe, SDIO, USB. Embedded Bootloader design & development involves architecting solutions to address different use cases and feature requirements in the early bootloader environment before the handoff to the High Level Operating System kernel. Engineer is expected to work with different Qualcomm build infrastructure tools and ARM compiler tool chains to enable different drivers and services for Bootloaders, optimizing them both for boot time, internal memory size constraints and power metrics.
+ Design, development and integration of custom and/or open source Bootloaders for QCT mobile platforms.
+ System design, implementation and/or integration of new software Features.
+ Software sustaining, emulation platform and silicon target debug/triage, and problem resolution.
All Qualcomm employees are expected to actively support diversity on their teams, and in the Company.
**Minimum Qualifications** **6 months to 3 years of academic or industry experience in the following:**
+ Developing embedded software
+ C/C++ Programming and debugging skills
+ Real-time embedded software and device driver development knowledge
+ ARM v7/v8 microprocessor architecture
+ Chip/SoC on-target, emulation and simulation platform bringup and debug experience
+ ThreadX, Linux, Android, Windows Boot process knowhow
+ Software design skills backed with good analytic and problem solving abilities
+ Scripting languages such as Perl and Python
+ UEFI (Unified Extensible Firmware Interface) based bootloader and device driver model experience
+ coreboot, uboot based bootloader experiences
+ Strong communication and presentation skills
+ Ability to work in groups as well as independently
+ Strong programming and debugging skills
**Education Requirements** Required: Bachelor’s, Computer Engineering and/or Computer Science and/or Electrical Engineering
Preferred: Master’s, Computer Engineering and/or Computer Science and/or Electrical Engineering
**EEO employer: including race, gender, gender identity, sexual orientation, disability & veterans status.**
Who is Qualcomm, and what do we do? We are engineers, scientists and business strategists. We are from many different countries and speak many different languages. We come from diverse cultures and have unique perspectives. Together, we focus on a single goal—invent mobile technology breakthroughs.