Principal Systems Software Engineer
NVIDIA · Champaign, IL · 6 days ago
EngineeringFull-time
About the role
NVIDIA is seeking a Senior Principal Systems Software Engineer for the Apache Spark Acceleration group. The position leverages GPU acceleration to support production-level data processing, aiming to reduce cloud costs and improve latency for batch ETL workloads.
Responsibilities
- Develop Java, Scala, and CUDA/C++ libraries to accelerate DataFrames and I/O operations on common file formats such as Parquet, ORC, and JSON.
- Enable interoperability between Spark and table formats like Apache Iceberg and Delta Lake, as well as metastores like Unity Catalog.
- Collaborate with open source communities to enhance libraries like NVIDIA cuDF, CCCL, and UCX through technical discussions and code contributions.
- Work with distributed systems teams to solve complex distributed processing challenges at scale.
- Provide recommendations and feedback to teams on infrastructure, CI/CD strategies, and other relevant topics.
- Build, test, and optimize CUDA/C++ libraries across various platforms.
Requirements
- Bachelor's, Master's, or PhD in Computer Science, Computer Engineering, or a closely related field (or equivalent experience).
- 15+ years of work experience in software development.
- Outstanding technical skills in designing and implementing high-quality distributed systems.
- Strong programming skills in C++, Java, and/or Scala.
- Experience working with teams across organizational boundaries and geographies.
- Familiarity with the open source data platform ecosystem (Apache Spark, Velox, Presto, Apache Arrow, Apache DataFusion, etc.) and meaningful contributions to the OSS community.
- Highly motivated with strong interpersonal skills.
- Experience with database query optimization is a plus.
Qualifications
- BS, MS, or PhD in Computer Science, Computer Engineering, or closely related field (or equivalent experience).
- 15+ years of work experience in software development.
Skills
- Strong programming skills in C++, Java, and/or Scala.
- Experience with distributed systems and open source data platforms.
- Experience with database query optimization.
Benefits
- Base salary range: $272,000 - $431,250 USD.
- Eligibility for equity and benefits.
Pay
Your base salary will be determined based on your location, experience, and the pay of employees in similar positions.
Schedule
The posting is for an existing vacancy. Applications will be accepted until July 19, 2026.