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...
Tightly coupled Go code

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...
designing resilient systems

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...
designing resilient systems

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...
testing external services

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...
programmers beware - us is not just for designers

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...
you dont need transaction

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...
intellij tricks for gophers

5 IntelliJ Tricks for Gophers

A small collection of IntelliJ tips and tricks for getting more out of your day or simply doing the same amount for work with less effort. 1. Install the IntelliJ Go plugin from here Enough said. 2....
you are not a software engineer yet

You are not a Software Engineer (yet) #2

Ever hear the expression, the punishment should fit the crime? How about, a proportionate response? How about, to a man with a hammer every problem looks like a nail? Now, I'm not trying to implying that your...
not a software engineer yet

You are not a Software Engineer (yet)

If you "write code" for a living, chances are you have a one time described yourself as a "Software Engineer".  And chances are, you are not.Personally, I graduated with an Engineering (Software Systems) degree...