Tagged In wealthfront engineering :
Continuous Deployment with Spark Streaming (Part II)
In Part 1 of this series, we gave a brief look into the data platform at Wealthfront, focusing on how we minimize data processing downtime while redeploying our Spark Streaming jobs. In this final part of this series, we will describe how we coordinate the data in our serving layer and wrap the blog post… Read more
Continuous Deployment with Spark Streaming (Part I)
Here at Wealthfront, our mission is to democratize access to sophisticated financial advice. One of the ways we accomplish that is by applying data processing technologies to financial services. In this two-part blog post we will describe how our near-real time data platform is built to support continuous deployment in order to allow us to… Read more
(Binary) Searching for your affordable home
It’s an exciting time to be on the Path team. Two months ago, we released some new features for Path, and just two weeks ago, we added home planning. At a high level, our home planning feature aims to answer three questions: What can I afford? How does a home affect my overall finances? Where… Read more
Graceful Degradation in Spark Streaming Applications
Here on the Data Engineering Team at Wealthfront, we have recently been building out our Near Real-Time computation platform to provide the ability to ingest, process, and serve data to our backend and frontend services with very low round trip latency. This platform will be the backbone for a multitude of applications for us including… Read more
Testing D3 Transitions
Transitions are an important tool in our D3 arsenal that we can leverage to relate understanding of visualizations to others. They can be used to draw attention to some representation of the data, emphasize change, or highlight the effects of user interaction, among other things. Given these benefits, it’s critical in a test-driven culture like… Read more
D3: You’re amazing just the way you are
Abstraction is a technique for arranging computer systems in such a way as to reduce the complexity of interacting with them. The system makes a certain complexity level available for other systems to interact with, while suppressing some of the inner workings. Programming languages, for example, are abstractions over assembly languages, which are abstractions over… Read more