Software Engineer

Employer

Job Description

  • Qualcomm’s Adreno GPU has been the industry-leading mobile graphics solution in today’s Android smartphone market worldwide. Our power-efficient GPU solution is fundamental to enabling the new exciting markets like VR/AR, IoT, AI, drones, autonomous driving, etc. GPU compiler is a key component of graphics solutions. We are looking for talented engineers to create world-class GPU compiler products to enable high-performance graphics and computing with low power consumption.
  • This position will be responsible for research, analysis, and improvement of Qualcomm's Adreno GPU compiler and system performance for our worldwide customers. Based on the analyses and experiments on real-world GPU applications, and investigation/prototyping of compiler optimizations, there will be opportunities to influence the performance of games, applications, and hardware design, through interactions with graphics drivers, architecture, and game development.
  • Responsibilities for GPU compiler performance engineer:
  • • Profile and characterize trending GPU benchmarks and applications (games, HPC, AR/VR, and AI)
  • • Use/develop tools to identify performance bottlenecks and study optimization heuristics
  • • Propose/prototype improvements in compilers and GPU architecture to tackle identified bottlenecks
  • • Provide a programming guide to help developers get better performance on Qualcomm GPUs
  • Ideal candidate will have:
  • • Compiler knowledge, development, and optimization experience
  • • Understanding of computer architecture (GPU, memory, data layout, etc.) and performance tradeoffs
  • • Experience with C / C++ or scripting languages (e.g. Python)
  • • Understanding of parallel computing on multi-core CPU, GPU, or heterogeneous systems
  • • Good communication skills and teamwork spirit, reliable and self-motivated
  • Preferred Requirements:
  • • Graphics shader programming (OpenGL, Vulcan, DirectX, or others) or OpenCL/CUDA/SYCL kernel development
  • • Experience with benchmarking and performance tuning for parallel applications
  • • Experience with benchmarking and performance tuning for parallel applications
  • •Experience with performance profiling and modeling for games, HPC, AR/VR, or AI applications
  • • Experience with machine learning / deep learning tools (sci-kit learn, Tensor Flow, or others)
  • Additional Job Description
  • Additional Job Description
  • Qualcomm is committed to hiring and supporting individuals with disabilities. Although this role has some expected physical activity, an inability to perform one or more of the listed physical requirements should not deter otherwise qualified applicants from applying. We will work with you throughout the application and onboarding process to provide reasonable accommodations. Examples of expected physical activity include: frequently transporting between offices, buildings, and campuses up to ½ mile; frequently transporting and installing equipment up to 5 lbs.; performing tasks at various heights (e.g., standing or sitting); monitoring and utilizing computers and test equipment for more than 6 hours a day; and continuous communication which includes the comprehension of information with colleagues, customers, and vendors both in person and remotely.