TRIIBE was growing but their codebase wasn't. Raw HTML built by interns, no component structure, no reuse. Every new feature was a patch on something fragile. Deployments caused downtime. The platform was breaking under the weight of its own ambition - and they knew it.
The existing site was raw HTML and CSS with no consistent structure or component reuse. As the product expanded — job board, courses, social feed, blog, admin dashboard, recruiter dashboard — the codebase became impossible to extend cleanly. Every addition risked breaking something unrelated.
The infrastructure matched the code: shared cPanel hosting with no support for Redis, background workers, or environment separation. Deployments were manual, untested, and regularly caused downtime. The platform had outgrown everything it was built on.
I moved deployment from cPanel to a VPS server. cPanel was cheaper and required less operational overhead, but it could not support Redis, proper process management, or isolated environments. The VPS cost more and put full server responsibility on us — but it gave us a dedicated development environment, a clean production setup, and the observability tooling the platform needed to grow reliably.
Infrastructure control and reliability over convenience and lower cost.
I would set up a continuous integration and deployment pipeline from day one rather than managing deploys manually. Manual deployment worked at our team size but would become a bottleneck quickly. I would also containerise the application with Docker earlier — we had several incidents where behaviour differed between the development and production environments, and proper containerisation would have closed that gap from the start.