Blog

Making Addepar Google-Fast

| Deepak Chandra Engineering

I joined Addepar to build solutions for an important industry that’s been underserved by modern technology.

I’m passionate about developing large-scale systems that can hold terabytes of data and answer questions in a fraction of a second. Before coming to Addepar, I spent 9 years at Google, where I was part of the original team that developed the backend systems for mobile ads. I’m excited to bring that standard of stability, security, and system scalability to finance.

As the Director of Addepar’s Computational Platform team, I’m working to architect the next generation of systems that can scale to hold and process tens of trillions of dollars in AUM, and I’m building tools to integrate that data into all parts of the financial industry.

Stability at Scale

Over the last few decades, Silicon Valley companies have proven that they can ship new versions of an application frequently without sacrificing stability or performance. It’s rare to hear that Google and Netflix are down despite the fact that they serve hundreds of millions of users and release code to production multiple times a week.

I’m dedicated to bringing that level of stability to Addepar. Shipping code every two weeks lets us deliver new features and benefits. But to maintain stability with a relatively short release cycle, we need thorough testing, careful monitoring of production environments, and systematic release processes. We’re improving the methods we use to catch bugs in every phase of our pipeline before they affect our clients.

We’re also working to make sure that Addepar’s systems will be running for years to come. To deliver that reliability, we need to plan for eventual system failures. Google has found that for a cluster of 1,800 servers, 1,000 failures will typically occur in the first year, or an average of 3 failures every day. By building in tolerance for these failures, we can run thousands of small, less robust systems more reliably than a small number of very large, robust machines.

Running hundreds of systems also allows Addepar to split computations across servers. Distributing complicated financial calculations is difficult, but can really increase performance. And we can design these systems to handle distributed calculations despite potential server failures: if a server fails to return part of a calculation, the system will reissue the calculation.

Many scalable systems sacrifice the freshness of their data or the precision of their calculations, but those tradeoffs are unacceptable in finance. Addepar’s platform is held to the highest standard of up-to-date data and exact calculations.

Connectivity

If scalability is the near-term focus, then connectivity is our long-term vision. To that end, I’m helping to build the Addepar platform, which will connect normalized Addepar financial data to other applications and enable us to provide new insights about that data.

We’re developing a simple, powerful, and secure API to allow external applications to integrate with Addepar’s platform. The Addepar API will provide programmatic access to full portfolio data, including both aggregated data and performance metrics computed in real-time. Our clients will be able to use the API to import and export their data out of Addepar easily and quickly to create a suite of applications that uses Addepar at its central source of truth for investment and portfolio data.

My team is also extending the engine that processes performance metrics and other analysis. Our current calculations include flexible performance and risk metrics that our users can run on their data. We’re building new features to allow users to easily define their own complex calculations. Our platform will create a marketplace where people can build tools that run on Addepar data, extending the possibilities of our current application.

Conclusion

Addepar isn’t a consumer application, and that’s what makes working here rewarding. We’re leveraging the latest innovations developed by companies like Amazon and Facebook to rapidly surface the information that’s most important to their users. But our more interesting work focuses on building new solutions that extend those cutting edge technologies to handle the unique complexities of the financial world. The stakes are high for Addepar engineering. We understand how crucial stability and accuracy are in finance, and we believe in the importance of the solutions we’re developing.