Overview
Senior Software Engineer on NVIDIA's Infrastructure team, building scalable distributed services that schedule and run jobs across thousands of systems for NVIDIA's engineering teams.
What you'll do
- Develop, create, and manage scalable, highly available cloud services that schedule and run jobs across thousands of systems.
- Develop services, APIs, and automation tools for engineering workflows.
- Lead the process to develop reviews and promote incremental, low-risk rollouts of major infrastructure features.
- Build and improve CI/CD pipelines for builds, testing, and deployment.
- Deploy and handle containerized services on Docker and Kubernetes, and automate routine operational tasks.
- Improve monitoring, logging, dashboards, and alerting to detect service health issues early, cut alert noise, and speed up troubleshooting.
- Detect and fix issues by examining logs and metrics to improve system reliability.
- Mentor junior engineers and collaborate with teams across time zones.
What you'll need
- BS/MS in Computer Science, Engineering, or equivalent experience, with 5+ years building large-scale backend or distributed systems.
- Strong Java expertise, including concurrency, performance tuning, and debugging.
- Proven experience crafting and operating large-scale full-stack applications in production.
- Solid grounding in data structures, algorithms, distributed system development, and testing practices.
- Hands-on experience with relational databases (e.g., MySQL) and at least one NoSQL store (e.g., Elasticsearch, MongoDB, Cassandra).
- Experience working with Docker and Kubernetes, as well as infrastructure automation tools like Ansible or Chef.
- Experience with one or more monitoring and observability tools (e.g., Prometheus, Grafana, Kibana, Splunk), with a focus on actionable alerts.
- Strong communication skills and the ability to collaborate across teams and time zones.
Nice to have
- Experience managing major infrastructure features from development through phased production deployment.
- Ability to break complex problems into simple parts and reuse existing solutions.
- SRE approach: examining logs and metrics to investigate failures, set SLOs, and boost reliability.
- Experience building systems that perform reliably with limited operational intervention.
Details
Read the full description and apply on the company’s own careers page.