Nvidia
Principal Platform Software Engineer - Platform Architect
Nvidia, Santa Clara, CA
NVIDIA’s invention of the GPU in 1999 fueled the growth of the PC gaming market, redefined modern computer graphics, and revolutionized parallel computing. More recently, GPU deep learning ignited modern AI — the next era of computing — with the GPU acting as the brain of computers, robots, and self-driving cars that can perceive and understand the world. Today, we are increasingly known as “the AI computing company.” We're looking to grow our company, and form teams with the most inquisitive people in the world. Join us at the forefront of technological advancement.Are you ready to change the next generation of computing? Join us at the forefront of technological advancement. We are looking for a principal platform software architect who can lead next generation data center server product platform architecture, bring up and drive a solution to production.What you’ll be doing:Platform architecture and hardware bring up of NVIDIA HGX GPU baseboards. Software architecture and design for various firmware, understanding embedded system limitations, Linux kernel internals to ensure performance, scalability and resiliency requirements for firmware running on embedded devices.Working closely with hardware teams to influence hardware design and review HW architecture & schematics.Work with internal and external team members to narrow down on performance and resiliency requirements for firmware running on Nvidia data center products. Hands on coding, code review, and BMC firmware development including various manageability features for NVIDIA’s Server platformsActively engaged in designing and developing CI/CD framework to ensure best quality for firmware. Writing and reviewing design documents, reviewing QA test plan and working closely with all collaborators to achieve consensus for design and testability as per product requirements.Designs solutions for errors, stats & configuration appropriate to CPU, GPU, DIMM, SSDs, NICs, IB, PSU, BMC, FPGA, CPLD etc. for enterprise readiness of NVIDIA Server platforms.Actively work with whole org to Instruments code to ensure maximum code coverage, writing and automating unit tests for each implemented module and maintaining detailed unit test case reports.Mentor team for best practices on writing efficient and bug free code. Works with internal and external partners to drive design architecture to real products.Works with the security team to ensure developed code is in line with product security goals, and with hardware teams to influence hardware design and review HW architecture & schematics.What we need to see:Bachelor of Science Degree (or higher) or equivalent experience in Electrical or Computer Engineering or Computer Science.15+ overall years of active development using C / C++ as primary programming language using Linux as OS.8+ experience in technically leading a good size of team in terms of delivering large firmware or software projects. 5+ experience in working across internal and external stakeholders to narrow down on requirements and converting those requirements in architecture and drive with a team to deliver it with qualityProven track record of delivering solutions to customers. Deep understanding of deployments at scaleDomain expertise in Data Center Firmware/software development on X86 or ARM Platforms including BMC-BIOS communication, thermal management, power management, firmware update, device monitoring, firmware security, etc.Board Bring-up expertise with hands-on experience in Device drivers like I2C/I3C, SPI, PCIe, SMBus, Mail-box etc. as well as the device trees for uboot and Linux kernel.Understanding on REST architecture style especially JSON over HTTPs with OAuth.Strong programming in C/C++ in Linux operating environment, strong understanding of Linux kernel internals, strong code review skills.You should possess excellent written and oral communication skills, good work ethics, high sense of team-work, love to produce quality work and commitment to finish your tasks every single day. You are a self-starter who loves to find creative solutions to complicated problems.Ways to stand out from the crowd:Consistent track record in delivering 100,000+ lines of code for a single project.Proven record in technically leading org of 30+ engineers.Expertise in system software and platform security for x86/ARM based Rack/Blade server systems.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 on the planet working for us. If you're creative and autonomous, we want to hear from youThe base salary range is 272,000 USD - 419,750 USD. Your base salary will be determined based on your location, experience, and the pay of employees in similar positions.You will also be eligible for equity and benefits. NVIDIA accepts applications on an ongoing basis. 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.SummaryLocation: US, CA, Santa Clara; US, RemoteType: Full time