
This is more of a collection of observations that might help you decide whether Heroku is a good match for your company needs, current size, and future scale. In the world of software and infrastructure, there are no one-size-fits-all solutions. Heroku’s products form a complete and valuable offering that bootstrapped our company to where we are today, and the support was always helpful and responsive. This is not intended as a rant on Heroku. I hope it provides useful tips for anyone considering a major Heroku (or any other PaaS) migration. In this post, I want to share specific Heroku characteristics that turned out to be problematic for us.

Months later, we’ve begun to realise that PaaS in general would be a sub-optimal solution for us for the long-term. However, as we grew our codebase, production services count, and the number of developers on the team, we slowly started seeing certain limitations of Heroku. We’ve been able to sustain massive growth and achieve subsequent milestones and company goals with little operations effort required. From the early days, this enabled us to rapidly prototype, swiftly develop our products, deploy frequently and safely, with little concern about the underlying infrastructure. With above pragmatism in mind, we’ve decided to go with Heroku PaaS offering.

In the end, our customers don’t care what programming language we use or if we build our own servers or use a PaaS (Platform as a Service) provider like Heroku, as long as their experience is great. At Packhelp, we value great software delivering value to our customers above tools and technology itself.
