The Challenge: An aging codebase
Obsolete technologies, unmaintained dependencies, and accrued technical debt over eleven years of development made Brivity’s platform slower, and performance issues began surfacing in production and CI.
“It was a hard problem… but also a very tedious one,” states Robert Schmitt, CTO of Brivity. “That tedium... if I had full-time employees working on it—they would quit.”
If not for a significant overhaul, Brivity’s codebase would continue to degrade, and the ever-expanding time-to-market for new features could hurt its balance sheet.
The Plan: Minimizing risk
Brivity picked React on Rails, ShakaCode’s open-source framework, as part of its efforts to migrate away from a server-side rendered monolith to a modern single-page app.
ShakaCode understood Brivity was not just a single program but a whole city—with 10+ features, each being a potential company in itself, running from a single codebase.
“Brivity had like 10+ companies running inside a single codebase. It wasn’t just a single program—it was a sprawling city with plumbing,” stated Robert. “You didn’t just fix a program, you had to fix a whole city.”
Upgrading a city requires minimising risk, and ShakaCode came up with a plan:
- Proofs of Concept (POCs) to validate the feasibility and viability of proposed smart city solutions before full-scale implementation.
- Engage stakeholders through meetings to communicate the initiative's goals, address concerns, and align everyone on the purpose and process.
- Identify and assess risks across people, processes, and technology, defining clear owners and mitigation strategies for each.
Time for action
In Q3 2021, ShakaCode began improving Brivity's systems by:
- Increasing test coverage, especially implementing integration tests
- Introducing modern technologies like Storybook and ShakaCode's Cypress on Rails to enhance the developer experience
In early 2022, ShakaCode:
- Migrated Bootstrap and complex CSS styles to reusable Tailwind-based ViewComponents and React Components
- Visual regression tests confirmed an accurate translation from Bootstrap to Tailwind.
- Ensured high test coverage during the migration with feature and visual regression tests
ShakaCode then collaborated with Brivity's teams to:
- Create and implement a cohesive design system with reusable Tailwind-based React components
- Transform Figma prototypes into actionable work for the complex Transactions Details Page redesign
- By mid-2022, as complexity grew, ShakaCode addressed performance and stability concerns by:
- Investigating issues, performing root-cause analysis, and proposing new standards
- Auditing and tuning SQL queries, suggesting database schema improvements, and documenting tradeoffs
- Reducing test flakiness and improving test suite runtime by nearly 60% through auditing and profiling
ShakaCode exceeded our expectations and continually delivered high-quality results. Thanks to their expertise in Ruby on Rails, React, project management, commitment to open source projects, and transparent billing practices, ShakaCode has solidified its reputation as a reliable and skilled software development partner.
The Results: A Billion Dollars
During this long-term partnership with ShakaCode, Brivity's parent company, PLACE, secured a $100 million Series A round led by Goldman Sachs and boosted PLACE's valuation to over $1 billion.
Brivity's platform was transformed, resulting in major successes:
- A vastly improved, modern, and intuitive user experience across the entire application
- Accelerated feature delivery and faster product development cycles due to enhanced developer productivity and cutting-edge tools
- Seamless performance and reduced downtime from proactive auditing, tuning, and issue mitigation
- Nearly 60% faster test suite runtime for quicker debugging and releases
- Fortified infrastructure and scalability to sustain rapid growth, ready for expansion after PLACE's Series A funding.
ShakaCode makes it happen!
Schedule a free, 30-minute call to discuss what ShakaCode can do for your project. Or email us at [email protected] with your ideas, challenges, or questions. We'll get back to you within two business days.