iStoria — a social learning platform at 5M+ users
Tech lead on a platform serving millions, where the API answered in six seconds and had to answer in tens of milliseconds.
- Laravel
- Vue.js
- Redis
- AWS
- WebSockets
The problem
A platform that had grown to millions of users was answering some API calls in around six seconds. At that size the cost is not only the wait: slow endpoints hold connections, the database spends its time on the same repeated work, and every new feature lands on top of a system already at its limit.
What I did
Led the technical team through the architecture and the hot paths: what the database is asked for, what is cached, what is computed ahead of time, and what does not belong in a request at all — alongside the day-to-day of running the team and the full-stack architecture.
Technical detail
Response time as the target
The work was measured against one number that users feel — how long the API takes to answer — rather than against a list of refactors.
Built for real-time
The platform's social features run on WebSockets with Redis behind them, on Laravel and Vue, hosted on AWS — the stack recorded in the project's own entry.
Leading the team, not only the code
Tech lead of the developers as well as the architecture: the decisions that stick are the ones the team can keep maintaining after the optimisation is done.
Where it stands
The owner's figures for this work: the platform passed 5M+ users, and API response time went from around 6 seconds to 35ms. They are recorded in the project's own entry on this site; the underlying measurement has not been published, so treat them as the owner's account rather than an audited benchmark.
All projects