Senior Software Engineer - Velox Operators for GPU

IBM

Quick summary

Work type
On-site
Location
San Jose, CA
Posted
22 days ago

Market check

Salary context

How this pay compares to similar roles

Similar $206k
$156k most similar roles pay here $259k

This listing doesn't post a salary. Most similar roles pay $177,250–$235,750.

Based on 240 similar postings.

Employer

About IBM

IBM is a US-based global technology company providing hybrid cloud, AI, consulting, enterprise software, and IT infrastructure products and services.

IBM currently has 743 open roles on FindRole.

Listed pay typically runs $1,000,000–$1,000,000 across 8 roles with salary data.

Most-posted roles

View all roles at IBM

At a glance

TL;DR · Senior Software Engineer - Velox Operators for GPU

As a Senior Software Engineer on the Velox team in San Jose, you will play a pivotal role in advancing the Prestissimo/Velox engine by designing and implementing vectorized operators for GPU acceleration. Your daily tasks include optimizing memory usage and data transfer protocols to ensure seamless integration between CPU and GPU processing, while maintaining strict compatibility with existing libraries and function signatures. You will collaborate closely with architectural teams to establish standards for heterogeneous execution within query plans and contribute to the open-source community by upstreaming improvements. Ideal candidates have extensive experience in systems programming with modern C++, a deep understanding of database operators and vectorized execution models, and proficiency in GPU programming (CUDA, RAPIDS) along with columnar data formats like Arrow and Parquet. Experience with Velox, Presto, Trino, and distributed systems is highly valued.

What you'll do

  • Design and implement vectorized operators in Velox C++ for GPU offloading.
  • Optimize memory bandwidth usage and data transfer protocols between CPU and GPU.
  • Ensure GPU-accelerated functions maintain compatibility with upstream Velox library.
  • Define standards for heterogeneous execution of queries across CPU and GPU.
  • Debug complex performance bottlenecks in distributed query engine environments.

What we're looking for

  • 5+ years of experience in systems programming with modern C++.
  • Expertise in vectorized execution models and database operators.
  • Proficiency in GPU programming using CUDA or RAPIDS.
  • Deep understanding of columnar data formats like Arrow and Parquet.
  • Experience optimizing performance in low-latency, high-throughput systems.
  • Ability to debug complex issues in multi-threaded C++ environments.
  • Contribution to open-source projects related to database engines.

More like this

Similar roles

Senior Software Engineer - GPU and SOC

Nvidia

Santa Clara, CA 19 days ago $152,000$241,500
C C++ Python ARM ACPI Device_Tree Linux Windows_Kernel Hypervisor GDB WinDBG GCC MSVC LLVM SOC_Architecture GPU_Software_Stack CI/CD Embedded_Systems System_Level_Security

System Software Engineer, GPU Development Tools

Nvidia

Santa Clara, CA 51 days ago $152,000$241,500
C++ Python CUDA DX OpenGL Vulkan Object-Oriented_Design_Patterns Chip_Simulation System_Simulation Virtual_Machines Containers Distributed_Programming
Hybrid

GPU Software Engineer

Qualcomm

San Diego, CA 19 days ago $98,900$148,300
C C++ Python Perl GPU APIs pre-silicon tests post-silicon tests design documentation team collaboration graphics programming

GPU Software Engineer

Qualcomm

Boxborough, MA 17 days ago $98,900$148,300
C C++ Python Perl GPU Graphics Drivers APIs Testing Design Documentation