Fast, Flexible, and Scalable: How Rails Powers Doximity's Healthcare Platform.

Doximity set out to help doctors save time and focus on what matters most: their patients. Over the past 15 years, they've built tools for communication, workflow, and telehealth that are now trusted by over two million healthcare professionals, including 80% of U.S. doctors. These tools make a real difference in the lives of both physicians and patients.

But like many startups, Doximity began with a small team and a big challenge: how to build something fast enough to find its footing in the market.

Bruno Miranda, Doximity
“We set out to build the largest professional network of healthcare professionals in the US. Back then, we weren't sure which features would resonate the most with physicians - we just knew we had to build fast and listen to their needs.” Bruno Miranda,
SVP Engineering

They chose to build on Rails because its speed, flexibility, and developer-friendly features were useful for Doximity's small team. The expressive syntax let them write clean, maintainable code quickly, while Rails' built-in conventions and rich ecosystem helped them launch features, gather feedback, and iterate rapidly.

Rapid Prototyping

In Doximity's early days, Rails' focus on productivity allowed their developers to work quickly and efficiently. Rails allowed the Doximity team to prototype new features, test ideas, and respond to user feedback. Even with a small team, Rails' built-in testing tools made it easier to ensure code quality without the need for a dedicated QA team.

The Doximity team also leans into Rails' "convention over configuration" philosophy, and Rails' familiar Model-View-Controller (MVC) structure makes onboarding new engineers as smooth as possible. With over 150 developers across a wide array of teams pushing code to production 80+ times a day, this consistency ensures systems stay easy to understand and scale. Developers can jump in, make an impact, and keep moving forward.

The ability to experiment and iterate quickly paid off. What started as an initial 2010 Rails prototype app grew into the leading digital platform for U.S. medical professionals.

A man looking at the Doximity app on a cell phone

Scaling Fast Under Pressure

When the pandemic hit in early 2020, doctors and healthcare professionals were forced to shift to remote care solutions.

One of Doximity's standout patient-facing tools is Doximity Dialer, which lets doctors call or text patients from their own devices without exposing personal phone numbers. Patients receive an SMS link from their doctor and, upon clicking, are instantly connected - no native app installation required.

"Between April 2020 and March 2021, Doximity supported over 63 million telehealth visits."

Dialer's use skyrocketed, but overnight, doctors needed an additional secure telemedicine video application that would allow doctors and patients to meet virtually, all while Dialer handled millions of clinicians' calls.

Scaling an application to handle a sudden surge in traffic is a challenging task, especially under tight deadlines, but Doximity's engineering team faced the urgent task of scaling Dialer and adding this new feature in just a few weeks.

Doximity grew the Dialer-focused team from 3 engineers to 16, all working in parallel on scaling their Telehealth product while maintaining a great user experience. Because of the familiarity of MVC and Doximity adherence to Rails' “convention over configuration” philosophy, everyone dove right in, easily finding their way around the familiar architecture, which was essential given the rapid scaling they faced.

"During peak times, every 10 minutes of downtime could mean an entire month of missed patient care for a single doctor." Jordan Hiltunen, Lead Software Engineer

Tools like Rails' Active Job helped handle background tasks, keeping the system smooth even at peak traffic under heavy load, and Rails' built-in caching tools and modular architecture helped Doximity optimize performance and integrate new features without reinventing the wheel or disrupting existing services. This approach let the team stay focused on solving real problems for doctors rather than getting bogged down by infrastructure.

Within weeks, they launched a HIPAA-compliant telehealth video solution, helping doctors deliver care remotely during a critical time.

During the pandemic, Doximity continued iterating and experimenting with features without adopting complex new patterns despite databases growing to hundreds of millions of rows. Tools like Large Hadron Migrator (LHM) and Departure enabled zero-downtime migrations on massive tables, while background jobs handled data processing efficiently.

Doximity engineers and designers working with stickies on wall

Leveraging the Rails Toolbox

One of the factors contributing to Doximity's success has been Ruby's widespread adoption in the developer community. Most third-party vendors provide SDKs for Ruby, making integrations easy and fast. Instead of spending time coding low-level HTTP requests to vendor APIs, Doximity's team could focus on building meaningful features for their users.

Debugging also became smoother thanks to Ruby's dynamic nature and tools like the Rails console. The ability to test code in staging or even production environments made troubleshooting third-party integrations much more manageable - a significant advantage when vendor documentation was lacking.

As Doximity's systems evolved, Rails' polymorphism features helped the team adapt their data models without large-scale rewrites. For instance, the Doximity Dialer initially supported only legacy PSTN calls. To improve resiliency, the team introduced support for VoIP calls by creating distinct models (PSTNCall and VOIPCall) that dynamically routed traffic based on network conditions and outages. This incremental evolution, enabled by Rails' robust ORM ActiveRecord, avoided disruption while supporting growing complexity.

The combination of these Rails tools and features allowed Doximity to scale rapidly while remaining agile and flexible. From a simple video client prototype to becoming a leading telehealth provider, Rails proved its reliability in mission-critical applications and supported Doximity's successful response to an unprecedented global health crisis. Since then, Dialer has earned the Best in KLAS Award three years in a row for excellence in telehealth communication.

Three healthcare workers walking down the hallway looking at a tablet device while talking

Sticking with What Works

Fifteen years later, Doximity's original Rails app is still going strong. Updated from Rails 2.3.5, their monolith now runs on Rails 7. After over 30,000 commits from hundreds of contributors, it still powers Doximity.com for over 80% of all doctors, 90% of graduating medical students, and 60% of nurse practitioners and physician assistants. Moreover, as of March 31, 2024, 17 of the top 20 hospitals use Doximity's enterprise IT platforms.

The decision to stick with Rails for the long haul has allowed the team to avoid costly rewrites and focus on shipping new features quickly.

“Instead of chasing the latest shiny tools, Doximity has kept a laser focus on shipping new features and adapting to doctors' needs. Rails provides a rock-solid foundation and stability to do that without getting bogged down in unnecessary churn.” Bruno Miranda,
SVP Engineering

Rails continues to allow Doximity's developers to experiment, build fast, and maintain high-quality code. And their engineers are not just using Rails - they're giving back. Doximity has open-sourced over 20 tools, like Funneler, a gem for managing user workflows, and Rake UI, a Rails engine for running rake tasks via a user-friendly interface.

Rails' combination of productivity, flexibility, and scalability has helped Doximity grow into the largest digital platform for U.S. medical professionals. For developers, their journey also highlights a simple truth: with the right foundation, you can scale fast, iterate quickly, and deliver meaningful results - all without unnecessary complexity.

a close up view of the Doximity app showing a lock and talking about secure HIPPA video calls

Key Takeaways

Rails accelerates development: Doximity's team rapidly iterates on new products and features, helping doctors save time and focus on patient care.

Rails ensures long-term stability: By maintaining and evolving their 15-year-old monolith, Doximity avoids rewrites.

Rails scales with success: As Doximity grows, Rails helps optimize the performance of 45+ applications and handle increasing traffic with ease.

Try Rails out yourself and see how you can take your idea from Startup to IPO.

Get Started Here

This case study was written in collaboration with members of Doximity's engineering leadership.