NVIDIA: Senior Systems Software Engineer – Apache Spark

We are seeking experienced System Software Engineers to join our Spark ETL team.

Data scientists spend a considerable amount of time exploring data and iterating over machine learning (ML) experiments. Every hour of compute required to sort through datasets, extract features and fit ML algorithms impedes an efficient business workflow. Nvidia believes that data science workflows can benefit tremendously from being accelerated, to enable data scientists to explore many more and larger datasets to drive towards their business goals, faster and more efficiently.

At NVIDIA, 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 building and packaging, especially related to C++. You will work with a team that is using open source libraries RAPIDS and UCX to accelerate operations in Spark ETL. You will engage with members of the Apache Spark open source community.

What you’ll be doing:

  • Develop CUDA/C++ libraries that will be used by distributed data processing engines, accelerating operations in Apache Spark

  • Collaborate with distributed systems teams to craft solutions to distributed processing problems challenges at large scale

  • Work with open source communities to enhance RAPIDS 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 CUDA/C++ libraries across different platforms

  • Build automation and tools that will increase the productivity of teams developing distributed systems

What we need to see:

  • BS, MS, or PhD in Computer Science, Computer Engineering, or closely related field

  • 8+ 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 successfully with multi-functional teams across organizational boundaries and geographies

  • Highly motivated with strong interpersonal skills

  • OS kernel dev experience is a strong plus

NVIDIA is widely considered to be one of the technology world’s most desirable employers. We have some of the most forward-thinking and hardworking people in the world working for us. Are you creative and autonomous? Do you love a challenge? If so, contact us!

NVIDIA is committed to fostering a diverse 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.