Smile.io Upgrades Ruby on Rails, Increases Speed, Agility, and Revenue
Smile.io is the world’s largest rewards program provider. Providing solutions for merchants and e-commerce businesses, its loyalty management software integrates with Shopify, BigCommerce, and Wix to reward customers with points and perks for purchases, referrals, and sharing content.
Founded in 2012, Smile.io is the world’s largest rewards program provider. Providing solutions for merchants and e-commerce businesses, its loyalty management software integrates with Shopify, BigCommerce, and Wix to reward customers with points and perks for purchases, referrals, and sharing content.
Here was our challenge:
The customer loyalty rewards program is a highly competitive market. As the leading software company in the online rewards space, Smile.io is focused on continual improvement by delivering new features and functionalities for its merchants and the end users.
According to Ely Alvarado, Director of Engineering, “Our goal is to make it easy for businesses to use and deploy our products, whether they’re a one-person shop or Fortune 500 company. From an engineering perspective, it’s crucial that we follow best practices and move at the speed our business needs.”
Smile.io has aggressive growth targets, and its engineering team was working nonstop on product development and improvement projects. In order to scale with agility and speed, the company needed to upgrade their Ruby software from 2.5 to 2.7 and Rails framework from 5.2 to 6.1.
“We wanted to get to the latest version for several reasons,” said Ely. “Most importantly, the versions we were using would soon be deprecated. We didn’t want to be in a situation where we would be forced by external factors to do an upgrade for security or critical vulnerability reasons.” The move to current foundational libraries and frameworks would also add functionality and help the team build faster.
The project would require a significant effort and time investment, and Ely didn’t want to take his team of twenty engineers away from projects which could impact business objectives. We were brought on board to manage the project, offer strategic insights, and implement the upgrade.
Our challenge was to review the code and create a plan to address potential vulnerabilities, update outdated gems, eliminate forked dependencies, migrate to Zeitwerk mode, and perform a seamless upgrade.
Here’s how we solved it:
As a first step, Ely requested a no-strings-attached evaluation, code review, and timeline, which fit within his budget requirements. We provided an in-depth roadmap report of the state of their code along with worst- and best-case scenarios. Once that was completed, Ely spoke with his management team and presented the benefits and ROI of hiring us versus conducting the upgrades internally.
“We learned that we were in excellent shape to do the upgrade, which was very reassuring. Although our engineers were capable of doing this work, it’s not something they do day-to-day, and we didn’t want to sacrifice our team when they could be working on getting a new feature to market that would increase revenue,” explained Ely. “OmbuLabs does this work all of the time and has the depth of knowledge and experience in this area, so it was a much more efficient and economical option.”
There are always challenges to upgrading and changing code, and one of our goals is to eliminate potential risk without disrupting business processes. We coordinated with Ely and his team to use their automated testing environment and to conduct a staged deployment. We ran the full suite of end-to-end test cases of their system before deploying to production. We then executed the project in two phases, first upgrading Rails and then Ruby. Measures were put in place to ensure that nothing went awry when it was deployed.
“We knew we were in a good position to do the upgrade,” said Ely. “The proper groundwork and foundation were put in place to ensure the upgrade and gains achieved were exactly what we expected and planned for.”
See the results:
Economic Impact—Return on Investment
As part of our roadmapping report, we recommended improvements that increased speed and efficiency and reduced expenses. We helped Smile.io scale its web servers and shift to a better monitoring metric, which increased performance by using fewer servers during slow traffic times.
“OmbuLabs freed us up to focus on our business goals and objectives, and this is where we realized the return of investment capital,” Ely said. “Instead of tying up our engineers on maintaining our infrastructure, we were able to focus on the growth of our product and develop business features that will drive retention, reduce churn, and increase the amount of recurring revenue.”
A Renewed Sense of Confidence
“As a completely bootstrapped company, we had never worked with external consultants before. OmbuLabs gave us an insightful analysis about our code base and technical practices. The feedback we received validated the high quality of engineering work that we were doing, which was an unexpected side effect,” noted Ely.
“We feel great about the upgrade,” said Ely. “Ombulabs brought us to a place where we can now keep Ruby and Rails up-to-date ourselves. We feel more confident about the quality of our test suite to detect issues, and this enables us to move faster and deliver the work more efficiently.”
The Human Side of Business
Ely was thrilled with the success of the project and the decision to work with us. There was a bit of hesitancy in hiring an outside company as there was the perception that it is something that only large companies do.
“Working with OmbuLabs proved that when you choose the right partner, you gain confidence and leverage,” said Ely. “OmbuLabs built the playbook on how to do this kind of stuff. By working with them, you are guaranteed success on these types of projects. My leadership team depends more on me to make these kinds of decisions because the project was such a huge success.”
One of the intangible benefits that Ely noted was the human side of working with our team.
“OmbuLabs was respectful to our engineers, and this was a great experience. Businesses are operated by people, and working with people that respect you is what you want all of the time.”
“It was a great partnership in every respect. There was constant communication, collaboration, and transparency, and we spoke openly about goals and risks,” said Ely. “It felt like we were working with an additional team inside our company.”
The Tune Report—Evaluating Performance
After the upgrade project was complete, we provided Smile.io with a Tune Report, which identifies areas for investment in application performance—from simple changes that will reduce expenses to long-term projects and skills that can be improved over time.
“When we were wrapping up the project, OmbuLabs launched their new consultancy service related to performance evaluation with objectives, outcomes, and recommendations,” said Ely. “We were so happy with the work they did that we jumped at the opportunity to work with them again. This is the side effect of a great relationship that developed because of the quality of work they did and our trust in them.”
- Roadmap Report
- Ruby and Rails upgrades
- Tune Report
- Ruby on Rails
- Timeline: 13 weeks
Who we are: