senior engineer
Technology, Data & Digital · IT Infrastructure & Security · Systems Engineering
In short
As an AI Software Engineer at Qualcomm in Hyderabad, you will focus on developing embedded software and hardware drivers for next-generation low-power accelerator and multi-DSP platforms on Qualcomm Snapdragon products. Your responsibilities will include designing and optimizing low-level software across various system components to ensure efficient operation on mobile and edge platforms.
Responsibilities
- Design, implement, integrate, and test embedded software, firmware, and runtime components for low-power accelerator and DSP subsystems.
- Develop and maintain hardware drivers for machine-learning accelerators, including initialization, resource management, interrupt handling, power-state transitions, and error recovery.
- Design software for multi-DSP and heterogeneous compute architectures, covering workload partitioning, synchronization, and coordination.
- Implement and optimize inter-processor communication mechanisms like shared-memory transport, message queues, signaling, interrupts, and remote procedure calls.
- Develop robust memory management solutions, including allocation, memory pools, shared memory, virtual-to-physical address translation, cache coherency, and DMA handling.
- Analyze and optimize embedded software for latency, throughput, memory footprint, and power consumption.
- Debug complex system-level issues involving operating systems, drivers, firmware, concurrency, memory corruption, and processor interactions using debugging and profiling tools.
- Build unit, integration, and system-level test frameworks for embedded software and hardware-driver validation.
- Collaborate with hardware, systems, firmware, and platform software teams on architecture, bring-up, integration, validation, and commercialization.
Requirements
- Strong embedded C programming skills with hands-on experience in low-level software development.
- Strong understanding of operating-system concepts (processes, threads, scheduling, synchronization, interrupts, timers, virtual memory, device-driver models).
- Hands-on experience with RTOS and/or embedded Linux environments, including board bring-up, kernel-facing interfaces, and system debugging.
- Deep understanding of memory handling in embedded systems (stack, heap, memory pools, alignment, fragmentation, memory protection, cache behavior and coherency).
- Experience with multi-core, multi-DSP, or heterogeneous processor architectures and associated concurrency challenges.
- Experience implementing inter-processor communication using shared memory, mailboxes, message queues, interrupts, RPC, or equivalent mechanisms.
- Experience developing hardware drivers, preferably for accelerators, DSPs, NPUs, or other high-performance compute blocks.
- Good understanding of computer architecture (CPU/DSP pipelines, caches, MMU/IOMMU, DMA, bus interfaces, memory-mapped I/O).
- Experience with multi-threaded programming, POSIX/Pthreads, synchronization primitives, and race-condition analysis.
- Proficiency with embedded debugging and profiling tools (JTAG, trace tools, crash dumps, logic analyzers, performance profilers).
- Strong fundamentals in data structures, algorithms, software design, and fixed-point programming.
- Strong communication skills and the ability to work effectively with cross-functional, geographically distributed teams.
Desired Qualifications
- Strong system-level understanding of SoC architecture, including CPU, DSP, NPU/AI accelerators, memory hierarchy, cache coherency, DMA engines, buses, and interconnects, with the ability to analyze hardware-software interactions effectively.
- Proven experience interpreting hardware architecture specifications, programming guides, register descriptions, and functional specifications to design, develop, and optimize low-level software and hardware drivers.
- Hands-on experience developing and debugging hardware drivers based on hardware documentation, including device initialization, interrupt handling, power management, resource management, error recovery, and performance optimization.
- Strong understanding of system bring-up, boot flows, clock and reset frameworks, power domains, memory subsystems, and platform resource management.
- Familiarity with secure execution environments, memory protection mechanisms, fault-tolerant embedded software design, and system reliability considerations.
- Experience with performance analysis and optimization using hardware performance counters, processor-specific instruction sets, compiler optimizations, and low-level profiling techniques.
Skills
Embedded CC++RTOSEmbedded LinuxPOSIXPthreadsJTAG
#embedded software#hardware drivers#low-power#accelerator#multi-DSP#Qualcomm Snapdragon#operating system#memory subsystems#device drivers#inter-processor communication#mobile#edge platforms#machine-learning#heterogeneous compute#concurrency#debugging#profiling#SoC architecture#AI
Enabling a world where everyone and everything can be intelligently connected.\n\n
Company
QualcommJob Posted
4 days ago
Employment Type
Full Time
Work mode
On Site
Experience Level
Senior
Locations
Hyderabad, India
Qualification
Bachelor, Master, Doctoral
Applicants
Be an early applicant
Similar Jobs
Ericsson
Kolkata, IndiaDevOps Architect
Full Time Be an early applicant Posted 4 days ago
HCLTech
Noida, IndiaSenior Administrator - Microsoft Windows, Microsoft Servers RDS, Touch Services
Full Time Be an early applicant Posted 4 days ago
HCLTech
Nagpur, IndiaSenior Administrator - Microsoft 365 Administration
Full Time Be an early applicant Posted 4 days ago
HCLTech
Vijayawada, IndiaLead Administrator (Support & Operations)
Full Time Be an early applicant Posted 4 days ago
HCLTech
Nagpur, IndiaSME - Microsoft 365 Administration
Full Time Be an early applicant Posted 4 days ago
HCLTech
Bengaluru, IndiaSenior Administrator - F5, Infoblox IPAM
Full Time Be an early applicant Posted 4 days ago
