• Services
  • Home
    • Shop
    • Cart
    • Who
    • Blog
Menu

Craft & Graft

  • Services
  • Home
  • Buy
    • Shop
    • Cart
  • About
    • Who
    • Blog

Featured posts:

Featured
Feb 26, 2023
Are you tired of losing customer trust, missing deadlines, and incurring revenue loss?
Feb 26, 2023
Feb 26, 2023
Oct 21, 2022
Shuttle v2.0.3 released!
Oct 21, 2022
Oct 21, 2022
Jul 24, 2022
Shuttle v2.0.2 is out!
Jul 24, 2022
Jul 24, 2022
Dec 20, 2021
Using the Seismograph Design Pattern for External Dependency Faults
Dec 20, 2021
Dec 20, 2021
Jul 2, 2021
Shuttle Framework v1.0.0 Released
Jul 2, 2021
Jul 2, 2021
Oct 1, 2020
Is Self-Documenting Code Really the Only Documentation Needed?
Oct 1, 2020
Oct 1, 2020
Sep 17, 2019
Android Data Binding with Recycler Views and MVVM: a Clean Coding approach
Sep 17, 2019
Sep 17, 2019

Using the Seismograph Design Pattern for External Dependency Faults

December 20, 2021

Introduction

At Wayfair, architects play a huge role behind the scenes. One component of our job is to identify gaps in designs and solutions and then create solutions to cover these gaps. If we identify a repeatable gap, we utilize a repeatable design pattern. This allows us to create a solution that addresses all of the gaps.

This blog describes a problem I found with a commonly overlooked gap in integrating external dependencies into apps and then walks through the design pattern solution I created to cover the void. The post also delves into the tradeoffs of using the solution, a how-to guide for implementing the design pattern, and the lessons our Wayfair team learned from using it.

The Problem

As always, it is best to start with the outlining problem. Our team was recently testing a new external software dependency. The use of external dependencies is not anything new. In fact, teams often use them to serve as reusable building blocks when creating and testing new product solutions.

These reusable blocks help accelerate development, but some risks come with using them, specifically when it comes to the customer experience. For example, external software dependencies can cause app crashes or failures with services. At Wayfair, we experienced app crashes firsthand from integrating external dependencies.

In this instance, our team performed a unit test. What we found was an external dependency that was occasionally sparking unexpected and undeclared errors. To address the problem, we needed to create a repeatable strategy that would minimize the potential risk by catching and reporting unexpected faults.

The Solution

This is where the Seismograph Design Pattern came to the rescue. It enables software engineers to implement fault tolerance, catch errors caused by external dependencies, and report them to issue management services for notifications and analysis.

To learn more, continue reading the blog here: link.

← Shuttle v2.0.2 is out!Shuttle Framework v1.0.0 Released →
Back to Top

Contact

Contact Us

getintouch@craftandgraft.com

16767 Bernardo Center Drive #27311
San Diego, CA 92128
United States

 

Craft & Graft LLC. © 2023. All Rights Reserved.