Tema

Språk

Global EN
Sverige ENSV
Indien EN

senior engineer

Teknik, data och digitalt · IT-infrastruktur och säkerhet · Systemteknik

I korthet

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.

Ansvarsområden

  • 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.

Krav

  • 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.

Önskade kvalifikationer

  • 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.

Färdigheter

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
Qualcomm Logo

Om Qualcomm

Enabling a world where everyone and everything can be intelligently connected.

Enabling a world where everyone and everything can be intelligently connected.\n\n

Qualcomm Logo

Företag

Qualcomm

Publicerade jobb

för 4 dagar sedan

Anställningstyp

Heltid

Arbetsform

På plats

Erfarenhetsnivå

Senior

Platser

Hyderabad, India

Kvalifikation

Kandidatexamen, Masterexamen, Doktorand

Sökande

Ansök tidigt