yacine

systems engineer

The devil is in the details

Posted at — Jul 30, 2020

The details matter. Imagine fat fingering a terminal command and bringing down the entire internet.

Amazon has blamed a typo for a massive cloud-computing outage that caused problems for thousands of websites and apps. The web giant has apologised for the five-hour outage of some Amazon Web Services that took down websites including Slack, Trello and Medium

Source

Attention to detail is one of the most important traits of a software engineer. Doubly so if you work on a system that requires high availability. Working at Auth0, breaking something means breaking a whole lot of other applications, some of which are quite big.

The problem: there are a lot of details to miss. Do you actually review your coworkers code? Do you read it line by line, following the objects as they get passed around in often complex manners? Probably not if you have a whole lot of other stuff to do. The likelihood of something bad like an unindexed query, given enough time, is almost certain.

Personally, I’ve been learning how to become more detail oriented. Things can be done to reduce the impact missed details have. Things like boundary checks, doing percentage based rollouts, rubberducking, team discussions, and good system observability.

One thing to keep in mind; missing details damages how much people trust you. Guard your reputation becuase it helps things go smoothly. So before you toss something over the fence for someone else to look at, go take a shit and come back for a second look. Maybe you’ll notice an embarassing mistake.