Before you apply
Listed location: US, CA, Santa Clara | US, IL, Champaign
Work arrangement: onsite. A remote label does not confirm worldwide eligibility or visa sponsorship.
Read the employer’s description for qualifications, compensation and work eligibility. Confirm the position is still open on the application page.
Job description supplied by NVIDIA; category and skill labels may be inferred. How our listings work · Report a problem
Job Description
NVIDIA is seeking a Sr. Principal Systems Software Engineer for the Apache Spark Acceleration group. GPU accelerated data processing has moved from proof of concept to production deployments. Enterprises now recognize the need for accelerated computing to handle large data processing needs. Multi-node GPU deployments will reduce cloud computing costs and lower latency batch ETL workloads.
At NVIDIA, we have been invested in accelerating Apache Spark, providing an open source plugin for Apache Spark. Apache Spark is the most popular data processing engine in data centers. We strive to accelerate Spark applications on GPUs without any code changes. Our OSS RAPIDS Spark library is integrated with on-premise and cloud services such as AWS EMR, Databricks, Google Dataproc, Oracle Cloud Data Flow, Bytedance Volcengine, Tencent Cloud and Cloudera. We are passionate about working on hard problems that have an impact. You will need to have strong programming skills, a deep understanding of software development related. You will work with a team that is using open source libraries like cuDF to accelerate reading, writing and batch data operations in Spark.
What you'll be doing:
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 with table formats such as Apache Iceberg and Delta Lake, and metastores such as Unity Catalog
Work with open source communities to enhance libraries like NVIDIA cuDF, CCCL and UCX through technical discussion and code contributions
Collaborate with distributed systems teams to craft solutions to distributed processing problems challenges at large scale
Provide recommendations and feedback to teams regarding decisions surrounding topics such as infrastructure, continuous integration and testing strategy
Build, test and optimize CUDA/C++ libraries across different platforms
What we need to see:
BS, MS, or PhD in Computer Science, Computer Engineering, or 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
Excellent programming skills in C++, Java, and/or Scala
Ability to work with teams across organizational boundaries and geographies
Familiarity with the open source data platform ecosystem (Apache Spark, Velox, Presto, Apache Arrow, Apache DataFusion, etc.). Meaningful contributions to the OSS community a plus.
Highly motivated with strong interpersonal skills
Database query optimization is a strong plus
You will also be eligible for equity and benefits.
This posting is for an existing vacancy.
NVIDIA uses AI tools in its recruiting processes.
NVIDIA is committed to fostering an inclusive work environment and proud to be an equal opportunity employer. As we highly value diversity in our current and future employees, we do not discriminate (including in our hiring and promotion practices) on the basis of race, religion, color, national origin, gender, gender expression, sexual orientation, age, marital status, veteran status, disability status or any other characteristic protected by law.#deeplearningSkills mentioned
Frequently asked questions
Is the Principal Systems Software Engineer position at NVIDIA remote?
The Principal Systems Software Engineer role at NVIDIA does not have a confirmed remote arrangement in our data. Check the employer description for its work location.
What type of employment is the Principal Systems Software Engineer role?
NVIDIA is hiring for a full-time Principal Systems Software Engineer position.
Which skills are mentioned for the Principal Systems Software Engineer job at NVIDIA?
Detected skill labels include CUDA, AWS, Spark, Scala, Java, Distributed Systems, GPU, Databricks. Check the employer description to distinguish required skills from preferred experience.
How do I apply for the Principal Systems Software Engineer position at NVIDIA?
You can apply for the Principal Systems Software Engineer role directly through NVIDIA's official application link provided on this page.
Similar AI jobs
Director, Real Estate Development
NVIDIA · fulltime
Software Engineer, New Grad (2027)
Harvey · fulltime
Software Engineer, New Grad (2027)
Harvey · fulltime
Vice President, Product Management, Managed AI
Crusoe · fulltime
Senior Software Engineer — Backend (Files Team)
Databricks · fulltime
Senior Detection and Response Engineer
Anyscale · fulltime