(usa) Principal, Software Engineer

Walmart Walmart · Retail · Sunnyvale, CA

This role focuses on building and maintaining foundational technologies for Walmart's infrastructure and platforms, specifically involving data platforms, enterprise architecture, DevOps, cloud computing, and infrastructure. The core responsibilities include defining, designing, and developing data access layers for SQL and NoSQL datastores, leading engineering teams, performing root-cause analysis for complex scaling and performance issues, and collaborating with open-source communities and cloud database providers. The role requires extensive experience in backend systems, Java, and database technologies, with a strong emphasis on distributed environments and large-scale data platforms.

What you'd actually do

  1. Define, design, and develop data access layer for SQL and NoSQL datastores
  2. Lead a team of engineers to deliver cross-team initiatives
  3. Root-cause analysis of complex problems involving multiple teams, applications, networks, hardware, and software that relate to scaling and performance.
  4. Collaborate with open source community and make contributions to open source software.
  5. Collaborate with public cloud database service providers and deliver efficient and effective database solutions to business critical applications.

Skills

Required

  • 12+ years of software development experience in backend systems and services involving database accesses (SQL and NoSQL) in distributed environment.
  • Extensive hand on experience and deep expertise in Java based technologies is a must. Thorough understanding of concurrency and threads models in Java.
  • Proficiency in database technologies and deep understanding their designs and limitations (SQL and NoSQL)
  • Designs, scopes, and builds large projects across multiple teams with end-to-end delivery.
  • Git or a similar version control tool
  • Strong understanding of agile methodologies (Scrum and Kanban)
  • Strong understanding of continuous integration and delivery (Jenkins, GitOps, etc)
  • Strong understanding of testing frameworks and concepts (Integration, Unit, etc )
  • 12+ years experience in software development.
  • 5+ years as a technical architect.
  • Experience interacting with your business and product partners to gather the right requirements.
  • Demonstrated experience in delivering software using Agile methodologies.
  • Effective communication skills, both written and verbal

Nice to have

  • Experience in running large-scale data platforms.
  • Able to write clear design documentations.
  • Able to diagnose and do deep analysis on production issues.
  • Able to lead a group of engineers to solve a challenging problem/project
  • Able to mentor junior engineers
  • Extensive knowledge in deployment automation tools (Docker, Kubernetes)
  • Extensive knowledge in Database technologies, Distributed Systems and the challenges that come with them.
  • Experience in writing DB Client SDK or Networking drivers.
  • Experience in Netty framework or Java NIO.
  • Master's degree or Ph.D. in Computer Science or related field.
  • Expertise with cloud technologies such Microsoft Azure or Google Cloud Platform.
  • Experience working with teams across multiple locations. Distributed office working experience with a US headquarters.
  • Excellent technical abilities with strong business, organizational and analytical skills.
  • Master’s degree in computer science, computer engineering, computer information systems, software engineering, or related area and 3 years' experience in software engineering or related area.

What the JD emphasized

  • extensive hand on experience and deep expertise in Java based technologies is a must
  • Proficiency in database technologies and deep understanding their designs and limitations (SQL and NoSQL)