Robinhood May 17, 2022

How Server-Driven UI Is Helping Frontend Engineers Scale Impact

Article Summary

Robinhood was taking weeks and multiple engineers just to make simple UI changes. Their solution? Server-Driven UI that lets them ship to all platforms without app releases.

Staff Engineer Max Rabiciuc breaks down how Robinhood built an SDUI platform that's now used across 60+ screens by 80+ engineers. The crypto detail page serves as a real-world example of the architecture in action.

Key Takeaways

Critical Insight

What previously required three engineers and mobile app releases now ships in hours with one engineer writing code once.

The team hints at their next evolution: delivering executable Kotlin/JS code to clients to make SDUI even more dynamic and responsive.

About This Article

Problem

Robinhood's frontend required each platform to fetch and transform domain models on its own. iOS, Android, and web teams ended up writing duplicate logic, and even small UI changes meant waiting for full app releases.

Solution

Max Rabiciuc's team built an SDUI platform in Python using pydantic and mypy. It generates type-safe client code for all platforms automatically, with JSON schema validation to keep components backwards compatible.

Impact

Engineers can now change UI and ship in hours instead of weeks. Over 80 engineers have contributed reusable components to 60+ screens without needing app releases or client-side code changes.