Request Affinity with Istio

Behind the scenes, much of Cash App consists of a set of distributed services running on a Kubernetes cluster in AWS. Our engineering team started moving services to Kubernetes over...

A Multithreading Saga, Part 3

With our new JavaScript rendering system in place, things were looking better. We weren’t done though. While reports of the app freezing seemed to have gone away, we were still...

A Multithreading Saga, Part 2

Solving our problems with thread proliferation bought us some headroom to unblock the current release, so things began to return to normal. We hadn’t gotten to the root of our...

A Multithreading Saga, Part 1

As a product scales, new problems become evident. Some of these problems can be addressed early on, but it’s often necessary to make trade-offs between avoiding future problems and moving...

A Great Way to do Presenters

The Cash App Android app uses presenters because they’re easy to write, easy to review, and result in boring code that just works. In this post I’ll show how we...