Corey Scott's Blog, page 2

April 13, 2020

Post-Incident Questionnaire for Managers

This is my light-hearted attempt to help engineering managers get the most value out of a downtime incident. Introduction So you had an incident? Condolences.On the bright side, however, perhaps there is an opportunity to learn and make things better? Process I will offer you a series of questions that you should ask yourself about […]
 •  0 comments  •  flag
Share on Twitter
Published on April 13, 2020 18:00

January 9, 2020

The Spampede Filter

This post can also be found on the Grab Engineering blog In Southeast Asia, when it rains, it pours. It’s a major mood dampener especially if you are stuck outside when the rain starts, you are about to have an awful day. In the early days of Grab, if the rains came at the wrong […]
 •  0 comments  •  flag
Share on Twitter
Published on January 09, 2020 17:53

January 29, 2019

How-to fix tightly coupled Go code

Have you ever added a new feature only to have another one break?  After fixing the break, something else breaks, like some kind of bug whack-a-mole? Have you ever spent hours debugging a broken test only to find the issue lurking in another, supposedly unrelated package? These issues are caused by code being tightly coupled. […]
 •  0 comments  •  flag
Share on Twitter
Published on January 29, 2019 16:00

January 13, 2019

Designing resilient systems: Circuit Breakers or Retries? (Part 2)

This post can also be found on the Grab Engineering blog This post is the second part of the series on Designing Resilient Systems. In Part 1, we looked at use cases for implementing circuit breakers. In this second part, we will do a deep dive on retries and its use cases, followed by a […]
 •  0 comments  •  flag
Share on Twitter
Published on January 13, 2019 17:00

December 21, 2018

Designing resilient systems: Circuit Breakers or Retries? (Part 1)

This post can also be found on the Grab Engineering blog This post is the first of a two-part series on Circuit Breakers and Retries, where we will introduce and compare these two often used service reliability concepts. For Part 1, we will focus on the use cases for implementing circuit breakers including the different […]
 •  0 comments  •  flag
Share on Twitter
Published on December 21, 2018 15:41

December 2, 2018

Book Release

I am thrilled to announce the release of my book “Hands-On Dependency Injection in Go”. The book will take you on a journey, teaching you about refactoring existing code to adopt dependency injection (DI) using various methods available in Go. Of the 6 methods introduced, some are conventional, such as constructor or method injection, and […]
 •  0 comments  •  flag
Share on Twitter
Published on December 02, 2018 15:13

April 23, 2017

Testing External Services

There seems to have been a lot of talk around me lately in relation to “dev boxes” and “testing on staging”. After unsuccessfully trying to convince folks of why I think this is a bad idea from both an engineering and business perspective I decided it was time to talk code. In this repository I […]
 •  0 comments  •  flag
Share on Twitter
Published on April 23, 2017 17:01

July 25, 2016

Programmers Beware – UX is not just for designers

This post can also be found on the Grab Engineering blog Perhaps one of the biggest missed opportunities in Tech in recent history is UX. Somehow, UX became the domain of Product Designers and User Interface Designers. While they definitely are the right people to be thinking about web pages, mobile app screens and so […]
 •  0 comments  •  flag
Share on Twitter
Published on July 25, 2016 23:03

March 31, 2016

You don’t need transactions

When I tell people, “No transactions!” their first reaction is either “he’s mad” or “for my use-case its necessary”. I know this was my reaction when it was first said to me. I happened to be working on a money based system at the time; something you would think that is the very definition of a system that “must” use transactions. […]
 •  0 comments  •  flag
Share on Twitter
Published on March 31, 2016 16:48