Skip to Main Content

The Digital Life Index: Data-driven, people-first insights to anchor your digital strategies.Read the Report

Insight

Scaling Grocery e-Commerce to Meet COVID-19 Challenges

As grocers look ahead, the decisions made now could have long-lasting impacts when improving e-commerce processes as a whole.

Grocers are experiencing an e-commerce wake-up call.

As COVID-19 continues to disrupt the world, shoppers are increasingly relying on online channels for groceries and essential supplies – challenging grocers to prepare their e-commerce capabilities to respond adequately.

For grocers, the online demand boom is staggering. According to a 2019 report from Gallup, online grocery was relatively rare in the United States prior to the coronavirus outbreak, with 81 percent of consumers citing they’ve never used online grocery services before. COVID-19 has changed that reality as online grocery and shopping habits faced an immediate paradigm shift.

Sudden influxes in e-commerce site traffic threatens risk of overwhelming backend processes, causing prolonged wait times for delivery slots or site/app crashes in times when customers need service most. With the goal to serve as many customers as they can without disruption, grocers worldwide are looking to innovative ways to solve these problems by optimizing their e-commerce processes and safeguarding against the unexpected, while also providing better products and services to their customers.

Given the risk resulting from surges in online site traffic, effectively scaling e-commerce capabilities will rely on a combination of non-invasive and disruptive tactics to mitigate short-term, medium-term and long-term impact. Though overall strategies will differ, the fundamental e-commerce questions grocers must answer are:

  • Platform scalability: Will the existing e-commerce platform support increases in traffic as more customers shift to online ordering? When considering dark stores, which are not open to the public, what kind of scalability is achievable?
  • Supply chain and operations viability: With so much unknown about the duration of the pandemic, will grocers be able to keep supply chain, DC and store operations moving un-interrupted.
  • New/updated offerings: With clear possibility that customer load might increase beyond platform capabilities, how can grocers modify or introduce new offerings to maximize customer value, while keeping e-commerce systems running?

From an engineering and product perspective, cross-disciplinary squads must be created to identify and implement scalability levers, with appropriate representation from both product and engineering teams in order to identify opportunities and achieve these goals. Essentially, these initiatives should be divided into two categories, with respective teams assigned to each project:

Given the risk resulting from surges in online site traffic, effectively scaling e-commerce capabilities will rely on a combination of non-invasive and disruptive tactics to mitigate short-term, medium-term and long-term impact.

Engineering/SRE-Led Initiatives

When considering engineering/SRE-led initiatives, there is no silver bullet. E-commerce scalability considerations depend on where a grocer is in their cloud and microservices journey and the sophistication of their initial system. Both these concepts provide significant advantages when it comes to on-demand and horizontal platform scalability.

We have found that any platform level change will fall somewhere along a continuum based on quantum of development, architectual complexity and operational overhead.

Changes closer to the origin will result in quick-wins, characterized by low disruption and quick time-to-market. Other changes will take more time and will have greater architectural and operational complexities. While quick-wins will potentially be the first to hit production, longer-term invasive changes must be done in parallel to quick-wins’ planning.

Potential opportunity comes down to considering a few key scenarios. While these are not necessarily linear steps, each optimization unravels new hotspots for prioritization and planning.

Identifying the narrowest pipe in the platform

The narrowest pipe in the platform is often the first place that needs to be looked at for scalability. In a transactional system, for example, potential typically lies in the database (DB). Though stateless layers can horizontally scale relatively easily regardless of cloud or traditional DC setup, these layers are often at risk to face bottlenecks in processes first, posing both a need and an ability to scale.

To mitigate bottlenecks, grocers should review their database capabilities:

  • Is the platform using a current version of the DB stack? Major version upgrades typically incorporate enhancements to concurrency and locking efficiencies.
  • Is there a possibility to direct the read-only traffic to separate instances? This will reduce load on instances serving transactional traffic. For example, if you are using MySQL, ProxySQL provides this functionality.
  • Does the DB provide a partitioning solution, so it can be scaled horizontally? Though a strategy, partitioning might come with operational overhead, and partitions need to be completely decoupled in order to reduce potential misstep.
  • What can we do in the code to reduce the DB load? Possible strategies include caching, locking mechanisms and batching transactions.
Scaling Applications, Services and Microservices

Once grocers have unlocked the database, other layers, like applications, services and microservices must be considered. Services, whether implemented as microservices or not, are typically powered with auto-scaling technologies. But each new instance or batch of instances needs to be warm before they get traffic. Two aspects to be mindful when thinking of services are:

  • Startup must be fast and optimized to remove additional or optional steps.
  • Cold starts need to be prevented. For servers-based services, they must be primed with necessary cache

Caching

Caching is a double-edged sword. If not done properly it can lead to an operational nightmare and inconsistent system behavior. Some key aspects of caching are:

  • Avoid creating a mix of TTL-based and Event-based layered caches.
  • All generic content must be cached on the CDN. Even if it is not hitting a bottleneck right now, it is always advised to minimize origin traffic.
  • Using client-side caching. For example, if you are using Redux, you can pretty much use Redux Cache with appropriate TTL based on frequency on content changes.

Building blocks to signify growth

Keeping Things Moving

To mitigate bottlenecks, grocers should review their database capabilities:

  • Is the platform using a current version of the DB stack? Major version upgrades typically incorporate enhancements to concurrency and locking efficiencies.

  • Is there a possibility to direct the read-only traffic to separate instances? This will reduce load on instances serving transactional traffic. For example, if you are using MySQL, ProxySQL provides this functionality.

  • Does the DB provide a partitioning solution, so it can be scaled horizontally? Though a strategy, partitioning might come with operational overhead, and partitions need to be completely decoupled in order to reduce potential misstep.

  • What can we do in the code to reduce the DB load? Possible strategies include caching, locking mechanisms and batching transactions

Scaling downstream systems

Businesses scaling their e-commerce platform also need to scale order management systems, warehouse management systems and store operations.

Product-Led Initiatives

Given the unexpected traffic and load on e-commerce platforms, grocers are also preparing product/offering changes and optimizations to scale e-commerce initiatives in response to COVID-19. Product optimizations allow grocers to keep the customer experience in mind, creating more accessible services for shoppers, while also optimizing backend processes like inventory management and supply chain.

  • Curation: Carrefour, for example, has built with a microsite for curated essential products containing weekly supplies for customers. Curated lists makes checkout faster, while also making easier for the customer to find what they need in quantities that do not risk putting pressure on inventory.
  • Suspended Promotion: Some grocers have temporarily discontinued promotions, opting for markdowns instead. Others have limited real-time personalization and moved loyalty functions offline to reduce load on the customer-facing platform.
  • Managing Wait Times: In order to mitigate lags and lapses in customer service, some companies have worked to throttle traffic, setting controlled wait times for shoppers. This way, customers have clear expectations on when they will be served with more transparency. CDNs like Akamai provide this feature with minimal configuration.

Scaling E-commerce

These are times of emergency, where providing essentials to consumers remains an upmost priority. But as grocers look ahead, the decisions made now could have long-lasting impacts when improving e-commerce processes as a whole. Understanding areas for optimization and creating a plan to scale capabilities for both short-term “quick-wins” and long-term transformation is the first step towards a more e-commerce enabled future.

Ravi Shankar
Ravi Shankar
VP of Engineering