Subscription Management Powered by Rails with Recurly
Reading time: ~ 2 minutes
Ruby on Rails is a framework that’s used just as often by fast-growing startups as it is by established companies. As an agency that specializes in Ruby on Rails development, we’re always eager to hear success stories of the framework in action at companies of all sizes, in various industries.
I came across Recurly when reading about subscription eCommerce companies – which is an industry where Ruby on Rails is prominent.
I talked with Jeremy Frazao, the VP of Engineering at Recurly, to learn more about their company and development team. Jeremy supports a team of 50 engineers in various roles, divided across six product engineering teams. He has worked in the tech engineering world for over 20 years, spending time at small companies, large companies, non-profits, and startup accelerators. Jeremy has led Recurly’s Engineering team since 2015.
Here are some thoughts from Jeremy about how his team works with Ruby on Rails, along with their challenges and successes working with the framework. And if their work piques your interest, Recurly is hiring for Engineering and Support roles in both San Francisco and Boulder, Colorado.
What is Recurly?
Recurly specializes in subscription management. We have a platform with functionality in multiple categories – billing, payments, analytics, tools for in-house or third-party developers to use to customize their configurations, integrations with other back-office software – accounting software and CRM systems.
What was the evaluation process like for choosing Ruby on Rails as your framework of choice for this app?
We use many frameworks. Rails is one of them. Originally, Rails was chosen because it makes development fast and easy. Over the years we have adopted many different stacks for various use cases, but our core software is still running Rails.
What unique challenges does your type of application need to handle? How does Rails help with these challenges?
We have many unique challenges. Processing payments at our scale presents all kind of difficult problems, and in some cases, Rails has been helpful as we’ve grown. It’s also responsible for creating some of those challenges ;)
The subscription/recurring payments business is growing. How has Rails helped your business scale with the industry?
One of the major benefits that comes with the Rails stack is that it enables an organization to scale relatively quickly. For example, the onboarding process for a new engineer who is familiar with Rails will lean heavily on the conventions and commonalities that are present across Rails projects. If an engineer has worked in a Rails stack before, they will likely get the hang of a new Rails codebase pretty quickly.
What frustrations or pain points have you experienced in your app as it relates to Rails?
There have been many over the years. Recently, we have been exploring ways to scale out the ActiveRecord layer in Rails as we bump up against various limitations. On one hand, these issues can be frustrating, but it is also empowering to be able to dig into the deepest layers and see what improvements can be made.
Are there any 3rd party integrations or gems that you’ve been impressed with recently that you'd like to share?
We don’t use a ton of 3rd party libraries – most of what we use are industry standard tools: Sidekiq for queueing, Pry for debugging, rspec for test harness. We tend to keep it simple so that we’re not deeply tied to anything that might get abandoned at some point down the line.
There’s often talk in the community of Rails being a “dying” framework. From your perspective, has that resulted in any challenges for hiring or retaining developers?
Fortunately, we run a variety of stacks so we’re not limited to just Rails. That being said – I’m rather bullish on the Rails framework in general. It’s still a very solid foundation to build on top of, and the community continues to grow in both numbers and vibrancy.
Do you have opinions about how Rails is moving as a framework? What do you hope to see?
I’m very excited by what I’m seeing in Rails 6. I’m particularly liking what I see in both Action Mailbox and Active Record.
A big thanks to Jeremy Frazao for his insight on working with Ruby on Rails at Recurly. We’re always excited to see a growing company building such a powerful tool on our favorite framework!