A client once asked me to add full multi-tenancy and audit logging to a live SaaS — without touching a single one of its 132 existing tables.
No downtime. No migrations on the old schema. Real users on it the whole time.
The solution wasn't clever code. It was restraint: new tables only, tenant scoping layered on top, audit trail bolted to the side, existing logic untouched.
Good architecture is usually less about what you build and more about what you refuse to break.
What's the gnarliest "don't break the existing system" constraint you've ever had to work under?
A client shouldn’t have to learn Webflow just to publish their next case study.
On a recent build, I spent a lot of time on the CMS: setting up reusable blocks and the logic that lets the team update content without rebuilding pages.
The tricky part is deciding how much control to give them. Too little, and every update becomes a request. Too much, and they’re suddenly responsible for the layout.
I want them to open the CMS, know what to do, and get on with their day. There’s a fair amount of work behind making that feel simple.
Explored two different visual directions for the same SaaS landing page.
The structure stays consistent, while the imagery, mood and art direction shift the overall brand feel.
Interested to know which direction feels stronger.