To give some context - John Lees-Miller (the author of the post) is my cofounder at Overleaf[1], which now serves over 350,000 users after growing from a side project of ours that started just over three years ago.
This post is written from the experience of building and scaling the service to cope with continually rising demand, and ever-changing requirements. Hopefully it provides some tips on how to avoid common pitfalls!
Thoughts appreciated.