Senior System Software Engineer
About the role
NVIDIA is seeking a Sr. Systems Software Engineer for the Apache Spark Acceleration group. Over the past five years GPU accelerated data processing has moved from proof of concept to production deployments. Many enterprises recognize accelerated computing is vital to handle their large data processing needs. Multi-node GPU deployments will reduce cloud computing costs and lower latency in batch ETL workloads. Apache Spark is the most popular data processing engine in data centers. At NVIDIA, we are developing an open source plugin to accelerate Spark applications on GPUs without any code changes.
What You'll Be Doing
- Enable C++ native execution of Spark operations on CUDA
- Develop CUDA/C++ libraries to accelerate DataFrames and I/O operations on common file formats such as Parquet, ORC and JSON
- Collaborate with distributed systems teams to craft solutions to distributed processing problems challenges at large scale
- Work with open source communities to enhance libraries like RAPIDS, CCCL and UCX through technical discussion and code contributions
- Provide recommendations and feedback to teams regarding decisions surrounding topics such as infrastructure, continuous integration and testing strategy
- Build, test and optimize across different platforms
What We Need To See
- 9+ years of experience in software development
- 5+ years hands on experience with data platform development
- BS/MS/PhD in computer science or a related field (or equivalent experience)
- Proficiency in C++, Java, Scala
- Experience supporting enterprise customers
- Familiarity with the open source data platform ecosystem is a plus (Apache Spark, Velox, Presto, Apache Arrow, Apache DataFusion, etc.)
- Experience using AI tools in software development
Pay
Base salary range is 184,000 USD - 287,500 USD for Level 4, and 224,000 USD - 356,500 USD for Level 5. You will also be eligible for equity and benefits.