Our Journey to a Generic Linking Platform
At the end of 2016, external account linking played a relatively small role in the Wealthfront ecosystem. Our integration with linking vendors was for the purpose of Instant Account Verification (IAV), which enabled faster funding during the account creation process. However, when we began designing and implementing Path we realized that aggregating more data from… Read more
Rolling Back an Airflow Upgrade
At Wealthfront, we have many important processes coordinated with Airflow. This includes hourly and daily ETL jobs for ingestion, Spark pipelines for computing derived information, and other batch processes like moving money to our partner banks. With an open-source project that’s actively evolving like Airflow, we’d like to be able to upgrade versions to take… Read more
Halving iOS Test Time with Partitioning in Jenkins Pipelines
At Wealthfront, testing is core to the culture of our engineering organization and business. In fact, on the iOS team, testing is woven into our development process. We host and manage our own continuous integration (CI) pipeline on Jenkins which runs our unit and UI test suites. As most iOS developers know, UI tests take… Read more
Upgrading to React 17: How to Fix the Issues and Breaking Changes
React 17 mostly focused on under the hood changes that will make it easier for consumers to gradually upgrade in the future. There were no new features and the breaking changes, in theory, affected few consumer components. While upgrading at Wealthfront was certainly more straightforward than past versions, we still had a few issues to… Read more
Espresso-friendly Bottom Sheet interactions
Like many other integration testing frameworks, Android’s Espresso provides a management layer for asynchronous operations. Correct usage of this layer allows the test author to treat long-running activities as if they were synchronous, resulting in reliable UI tests. In this post, we’ll describe how we used Espresso to build reliable tests for one such behavior… Read more
Streamline development with Custom DevTools
Today, DevTools are ubiquitous when developing web apps because of their ability to inspect, debug, modify, automate, and more. While it can sometimes seem that having many distinct DevTools is unnecessary, each tool falls at a different point on the spectrum of developer needs. As needs become more specialized and focused, so do the tools…. Read more