Robinhood Backend System Design — How to Receive Realtime Stock Updates
5 min readJan 31, 2022
Robinhood Stock Broker app backend is one of the complex distributed systems that are currently available. The backend design not only require that the service is highly available and scalable but based on the financial nature of the app it also require strong consistency and high reliability. If you are asked to design such a system in a system design interview then very first and important step is to come up with the right set of functional and non-functional requirements. If you consider the functional requirements:
- The authorization process has to be easy while promoting safety and account security. This requires multiple check-in options, such as pin code, biometrics recognition, multi-factor authentication, etc.
- Enable users to build an investment portfolio made of stocks, bonds, mutual funds, ETFs, cash, and other financial assets like cryptos.
- A user account include profile data, stocks/ETFs buying/selling functionality, and setting up the notifications, and setting up frequency in which the account should be debited, etc.
- All investing apps have an account overview for the users to track their portfolios. Robinhood’s dashboard should display in one place all information an investor should know: order status, balance, charts, holdings…