Menu

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

Consistent Test Setup Across Multiple Packages

August 23, 2016

At Wealthfront, we believe that all code should look like it was written by the same person. In practice, that means that across our frontend stack we enforce consistent patterns, follow code style guidelines, and use the same technologies. This enables engineers to easily contribute to projects they have never worked on before by reducing… Read more

Tips for Unit Testing D3

July 27, 2016

Note: D3 4.0 has been released, but we haven’t upgraded to it yet, so the syntax in the code examples below is written for D3 3.x. However, the same ideas should hold for the newer version. If you’ve ever attempted to write unit tests for D3.js code, you’ve undoubtedly noticed some pain points. Many are due… Read more

Integrating Apache Spark into your existing Hadoop system – Part I

June 22, 2016

As evidenced by our previous blog post, Statistics is Eating the World, data is at the very center of Wealthfront’s values. At Wealthfront, fields ranging from research, analytics to marketing, client services, human resources and even employee productivity all heavily rely on data in their decision makings. Such a variety of data sources and requirements need… Read more

Testing JavaScript Modules

October 13, 2015

In our previous post we outlined benefits of writing JavaScript in modules. One benefit we didn’t mention was how much more testable JavaScript modules are. In your test file you can require the module under test and let the require system import any dependencies. The goal of this post is to outline some of the… Read more

Why We Use Bayesian Inference

September 01, 2015

At Wealthfront, we’re constantly experimenting with our products to make them better. Like other internet companies, we use a metrics-driven approach to test product changes. Each change is validated with an A/B test (hypothesis test), where we evaluate the change on a subset of clients by measuring its impact on some business metric, like the… Read more