When you think of the world’s most innovative technology companies, is Walmart on your list? If it isn’t, it should be. To ensure consistent and reliable application delivery (for both their customers and internal business operations) at the scale of the world’s largest retailer, Walmart has built a robust tech stack and invested in their development teams.
In a session for our INS1GHTS2020 conference, Joel Guerra, Software Engineer at Walmart Labs, shared a behind the scenes look at how they manage their tech stack so that application delivery scales across their global, complex, distributed environment. Keep reading for key takeaways from the presentation that can help your team deliver applications at scale.
The complexity of today’s enterprise environment
Given their size and global footprint, Walmart has built significant expertise in application delivery across a complex, distributed environment.
They have over 10,000 brick-and-mortar locations worldwide, and serve a growing number of customers through e-commerce, such as the recently launched Walmart Plus. Connecting their 2.3 million global employees requires a different approach to back-end business operations than your typical company. Their developers regularly build software solutions to tackle problems in HR, logistics, finance, and big data.
Additionally, Walmart has acquired a number of e-commerce companies in recent years, such as Jet.com, Bonobos, and Parcel. Each of these companies came with their own infrastructure, applications, and development teams.
Yet Walmart faces the same pressures as other companies to move fast, a trend that has only increased over the past year. For example, when the pandemic hit last spring, Walmart - like most retailers - had to lean on e-commerce capabilities to serve customers during lockdowns. Some stores already had infrastructure in place to take orders and schedule deliveries or pickups, making it relatively easy to meet increased demand for curbside pickup and home delivery.
Error Free and Scalable Application Delivery to Empower How the World Shops
For a more in-depth look at how Walmart Labs scales application delivery at the world’s largest company, watch Joel Guerra’s session for INS1GHTS 2020.
In other regions, however, they had to build out e-commerce capabilities overnight. When restrictive lockdown orders went into effect In Honduras and Costa Rica, Walmart quickly deployed new applications and infrastructure to support home grocery delivery. Moving nimbly is not only crucial to their own business success, but in many cases, a key lifeline for their customers.
So how do they balance the need to move quickly with the need to connect into a much larger infrastructure? Put simply, Walmart Labs has made it a priority to ensure their tech stack allows for standardization, with some flexibility.
Standardizing application delivery, at scale
With different teams, applications, and distributed infrastructure, standardization is crucial to keep things running smoothly. Customizations are obviously necessary from time-to-time, but the ideal end state is uniformity - any developer can log in and understand what’s happening pretty quickly.
Simultaneously, Walmart optimizes for redundancy and reliability of their applications and infrastructure. With e-commerce responsible for a growing portion of their business, they need to provide a consistent, reliable end-user experience no matter how or where they’re accessing an application.
Embracing infrastructure as code has been a key way to ensure their dev teams have the flexibility to deploy quickly, while ensuring reliability of their applications at scale. Their tech stack consists of a mix of open-source tools like Terraform, hybrid architectures, and software-based infrastructure.
For example, to manage load balancing across their environment, Walmart Labs has built out flexible Terraform templates that are reusable on any application. This way, team members can build out the functionality they need for individual applications, while adhering to the right format. Of course, managing how applications are deployed across environments requires their DNS and load balancers to integrate seamlessly with tools like Terraform. With API-first, software-based infrastructure, Walmart is able to standardize deployment procedures, while leaving flexibility to make changes for edge cases.
From their investments in self-driving vehicles to their innovations in supply chain management with blockchain technology, Walmart regularly breaks barriers of traditional brick and mortar retail. Their approach to application development and delivery is no different.