Menu

Testing Golang Services at Wealthfront

August 09, 2018

As Wealthfront grows our company and products, scaling our engineering organization requires robust, well tested infrastructure and tooling provided by the DevOps team. In this blog post, I’ll go over how DevOps is defined at Wealthfront, why we use Go, and a brief overview of how we test Go. What is DevOps at Wealthfront? At… Read more

Reflective Metatesting. Protecting You from Yourself and Everybody Else.

November 16, 2016

Infrastructure projects often take user-defined configuration classes as input. I’ve worked on several during my tenure at Wealthfront. You cannot trust the validity of these configurations, even if you wrote them yourself. A pattern I’ve grown to love is writing JUnit tests that use reflection to gather all the input classes to run a suite… Read more

Enforce REST API Standard with Swagger

August 31, 2016

At Wealthfront, we have an API server which exposes a REST API that’s consumed by our iOS and Android apps. Recently we decided to migrate our web frontend to use the REST API because we believe it would be beneficial to have all of our frontends sharing a single data source. We identified a few… Read more

How to Make Your Persistent Queues Run Faster Safely

May 04, 2016

What is a Persistent Queue? A persistent queue is a list of objects that persist in the database waiting to be polled and processed in some way. Usually it is a table that has columns for data, timestamp of when the object persisted, and timestamp of when the object is polled. As opposed to an… Read more

Building Mobile A/B Testing Infrastructure

April 11, 2016

Twenty years ago, one would have hardly heard the phrase “A/B testing”. In 2000, Google served its first A/B test to determine the optimal number of search results to display. In 2011 alone, they ran 7000 A/B tests across their platforms. A/B testing has become the bread and butter of product decision-making for Silicon Valley… Read more

Build System Integration Testing with Chef

April 05, 2016

At Wealthfront, we’re constantly pushing to use cutting edge technologies to take advantage of new language features, improved compilers, new libraries, and the like. Downtime in our build system would be a big problem with how often we like pushing new code to production, so we want a process that would allow us to upgrade parts… Read more