Overview
Join Qualcomm's embedded software team as a Lead Engineer working on low-level driver development, embedded system architecture, hardware-software interaction, debugging, and optimization for next-generation embedded platforms.
What you'll do
- Work on device bring-up, platform initialization, and hardware enablement activities.
- Debug complex system-level issues involving hardware and software interactions.
- Collaborate with hardware, firmware, validation, and system teams to ensure feature delivery and product stability.
- Analyze system crashes, performance bottlenecks, and power-related issues.
- Optimize software for performance, power efficiency, and memory utilization.
- Support integration and validation of new peripherals and subsystems.
- Participate in architecture reviews, code reviews, and technical discussions.
- Develop diagnostic tools, scripts, and automation to improve engineering productivity.
- Contribute to technical documentation and knowledge-sharing initiatives.
What you'll need
- Bachelor's or Master's degree in Computer Science, Electronics, Electrical Engineering.
- 5+ years of experience in embedded software development.
- Strong programming skills in C/C++.
- Experience developing and debugging low-level software drivers.
- Solid understanding of embedded system architecture.
- Solid understanding of device drivers and hardware interfaces.
- Solid understanding of memory management concepts.
- Solid understanding of cache architecture and optimization.
- Solid understanding of MMU (Memory Management Unit) concepts and address translation.
- Solid understanding of clock architecture and clock management.
- Solid understanding of PMIC (Power Management IC) fundamentals.
- Solid understanding of interrupt handling and DMA concepts.
- Experience with common embedded peripherals such as UART, SPI, I2C/I3C, GPIO, USB, PCIe, and UFS/eMMC/SD.
- Experience using debugging tools such as JTAG, Lauterbach, or equivalent.
- Strong problem-solving and analytical skills.
- Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience, or Master's degree in Engineering, Information Systems, Computer Science, or related field and 1+ year of Software Engineering or related work experience, or PhD in Engineering, Information Systems, Computer Science, or related field.
- 2+ years of academic or work experience with Programming Language such as C, C++, Java, Python, etc.
- Ability to work independently on complex technical problems.
- Excellent communication and collaboration skills.
- Ability to lead technical discussions and mentor junior engineers.
- Strong ownership and accountability for product quality and delivery.
Nice to have
- Experience with ARM-based SoC platforms.
- Understanding of boot flows, firmware, and system initialization.
- Experience with Linux Kernel driver development or RTOS environments.
- Knowledge of power management, clock frameworks, and subsystem interactions.
- Experience with system performance analysis and optimization.
- Familiarity with crash dump analysis and root cause investigation.
- Exposure to security, virtualization, and memory protection concepts.
- Experience with source control systems such as Git or Perforce.
Details
- Location: Hyderabad, Telangāna, India.
Read the full description and apply on the company’s own careers page.