Senior C++ Software Engineer - Apache Spark Solution

World leader in accelerated computing, pioneering AI and digital twins technology to transform industries.
Distributed Systems
Senior Software Engineer
In-Person
5,000+ Employees
8+ years of experience
AI · Enterprise SaaS

Description For Senior C++ Software Engineer - Apache Spark Solution

NVIDIA is seeking experienced C++ Software Engineers for their Spark Acceleration group to revolutionize data science workflows through GPU acceleration. This role focuses on accelerating Apache Spark, the most popular data processing engine for data science, without requiring application code changes. You'll work with open-source communities on projects like Spark-RAPIDS, RAPIDS, and Velox.

The position involves designing and implementing high-performance distributed systems, optimizing data exchange between various frameworks, and enhancing open-source libraries for improved performance. You'll be working alongside industry experts, including PMC and Committers of major Apache projects, while having the opportunity to present your technical solutions at industry conferences.

The ideal candidate should have strong C++ programming skills, extensive experience with data processing frameworks, and expertise in columnar data processing with SIMD and vectorization techniques. Knowledge of GPU-accelerated libraries and experience with distributed systems is highly valued. This role offers the opportunity to work at NVIDIA, one of technology's most desirable employers, known for its innovative work in AI and accelerated computing.

Working at NVIDIA means joining a team of brilliant minds in the technology sector, with the chance to tackle challenging problems that impact the future of computing. The company offers competitive compensation and comprehensive benefits, making it an attractive opportunity for experienced software engineers looking to make a significant impact in the field of data processing and acceleration.

Last updated 18 hours ago

Responsibilities For Senior C++ Software Engineer - Apache Spark Solution

  • Design and implement native Spark execution engine using RAPIDS, Velox, UCX and other related libraries
  • Design and implement solutions to optimize data exchange between Velox and RAPIDS libraries
  • Enhance Velox OSS library for improved performance and Spark compatibility
  • Contribute to RAPIDS library for large-scale adoptions in major enterprises
  • Conduct performance benchmarking and profiling
  • Work with exceptional engineers including PMC and Committers of Apache projects
  • Present technical solutions in industry conferences and meetups

Requirements For Senior C++ Software Engineer - Apache Spark Solution

  • BS, MS, or PhD in Computer Science, Computer Engineering, or related field
  • 8+ years of work or research experience in software development
  • 3+ years hands-on development experience with Velox, RAPIDS or similar frameworks
  • Exceptional C++ development experience
  • Expertise in columnar data processing with SIMD and vectorization techniques
  • Familiarity with operating systems and software development for ARM
  • Experience in designing and implementing high-quality distributed systems
  • Strong communication skills
  • Ability to work with cross-functional teams

Benefits For Senior C++ Software Engineer - Apache Spark Solution

  • Competitive salaries
  • Comprehensive benefits package

Interested in this job?

Jobs Related To NVIDIA Senior C++ Software Engineer - Apache Spark Solution

Senior Software Engineer-Distributed Inference

Senior Software Engineer position at NVIDIA focusing on distributed inference and AI performance optimization tools, offering competitive compensation and remote work options.

Senior System Software Engineer

Senior System Software Engineer role at NVIDIA working on CUDA driver development for GPU acceleration across AI, scientific computation, and autonomous vehicles.

Software Advanced Developer

Senior Software Developer role at NVIDIA focusing on networking and distributed computing research for data center environments.

Senior HPC Performance Engineer

Senior HPC Performance Engineer role at NVIDIA focusing on GPU Communications Libraries and Networking, optimizing performance for deep learning and HPC applications.

Senior Generalist Software Engineer -- Omniverse

Senior Generalist Software Engineer position at NVIDIA focusing on Omniverse, computer graphics, and compute systems development in Taiwan.