Principal Engineer, Performance Analysis - AI Applications and Services
We are seeking a highly motivated performance engineer to join our AI Applications organization to work on distributed cloud native accelerated video analytics applications. Our team is building distributed cloud native accelerated real-time video streaming AI inference and video analytics platforms running on the Edge and cloud in a Kubernetes environment as part of the Metropolis ecosystem. As a performance engineer, you will work with the Application teams to understand the architecture, profile, identify bottlenecks and optimize. You will build a good understanding of application resource utilization characteristics across CPU, GPU and network accelerators. A good understanding of distributed systems performance is must to scale these applications across multiple CPU and GPU nodes. Your duties include collecting data and information on the applications you wish to optimize, identifying areas for improvement and developing strategies to bring about those positive changes.
What you'll be doing:
You will plan, enable and drive performance initiatives across our Cloud Native application teams
Review, Develop, deploy and manage tools and strategies to systematically run performance experiments
Collect and organize performance data and share with key partners.
Work closely with application teams to understand application resource utilization characteristics. Identify performance issues through profiling of the various components
You will learn and have a good understanding of various accelerators in the system for an application workload and recommend E2E performance optimizations relative to capabilities of the system
You will assist developers and product teams on best accelerators and systems for E2E system performance
Improve and Standardize Performance measurement processes across our applications and GPU systems
Work closely with GPU cloud native teams at Nvidia to deploy the latest and most optimal GPU resource sharing strategies for our applications in a kubernetes environment
What we need to see:
Masters's degree or PhD in Computer Science or a related field, or equivalent experience
15+ years of experience in optimizing system design, complexity analysis, software design in Unix/Linux systems, performance, and application issues
Experience in real-time streaming AI inference systems
A history of working on distributed accelerated systems and solving sophisticated performance problems
Deep hands-on experience with Distributed systems based on Kubernetes
Experience with on-prem and cloud systems
Ability to work with partners across multiple teams
Experience using and handling and optimizing modern Cloud and container-based Enterprise computing architectures.
Strong verbal and written communication and teamwork skills.
Ability to multitask effectively in a multifaceted environment.
Action driven with strong analytical skills.
Ways To Stand out from the Crowd:
Background with real-time computer vision AI inference and/or Analytics platforms
Experience in application issues, algorithms, and data structures
Understanding of the functioning of AI services, deep learning and AI
Exposure to scheduling and resource management systems.
Knowledge of GPU programming such as OpenCL or CUDA and knowledge of Multi-node GPU setups, GPU clusters, or Cloud computing
NVIDIA is leading the way in groundbreaking developments in Artificial Intelligence, High-Performance Computing and Visualization. The GPU, our invention, serves as the visual cortex of modern computers and is at the heart of our products and services. Our work opens new universes to explore, enables outstanding creativity and discovery, and powers what were once science fiction inventions from artificial intelligence to autonomous cars. NVIDIA is looking for phenomenal people like you to help us accelerate the next wave of artificial intelligence. 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. If you're creative and passionate about new technologies we want you on our team!The base salary range is 268,000 USD - 414,000 USD. Your base salary will be determined based on your location, experience, and the pay of employees in similar positions.