Healthcare Platform Development for Patient & Clinician Apps

How one embedded team delivered React, React Native, and React Native Web inside a US healthcare product org, for 32+ months, without a separate delivery stream

A US network of clinics operated an in-house product engineering team responsible for developing and supporting a live healthcare platform spanning patient and clinician applications, a public website, mobile experiences, and TV applications used in clinics.

The challenge wasn't building another healthcare app from scratch. It was keeping an established product moving while the team had more work than its existing engineering capacity could absorb. Azati joined the team and contributed across React, React Native, and React Native Web, working on new patient and provider workflows alongside ongoing maintenance and tech improvements.

Discuss an embedded healthcare engineering model
0

delivery disruptions; new engineering capacity integrated into the existing product process

Web + mobile + TV

patient and clinician experiences delivered across all application surfaces

32+

months of continuous engineering contribution

Technologies used

React
React
React Native
React Native
TypeScript
TypeScript
JavaScript
JavaScript
React Redux
React Redux
Apollo Client
Apollo Client
GraphQL
GraphQL
Jest
Jest

The project's specifics

Healthcare products rarely evolve one interface at a time. A change to scheduling, intake, or patient information can affect several user-facing surfaces at once.

The client's US healthcare ecosystem operated in a compliance-sensitive environment, bringing these workflows together across web and mobile applications, with additional TV experiences deployed in clinics. The broader product ecosystem also supported telehealth and telemedicine experiences alongside in-person care, patient scheduling, clinical workflows, and patient-provider communication.

Azati joined the established product organization to provide additional engineering capacity across React, React Native, and React Native Web while the internal team continued owning product direction and clinical priorities.

How can healthcare organizations expand product development without disrupting an established engineering team?

The client's product team needed to continue evolving a live healthcare platform while handling a broad range of feature and maintenance requirements.

Challenge 01

Supporting multiple healthcare workflows

The product supported workflows across appointment scheduling, patient intake, clinician interactions, patient information, and communication.

#1
Challenge 02

Delivering across multiple application surfaces

The product ecosystem included web and mobile applications, telehealth and telemedicine services, as well as TV experiences used in clinics, requiring frontend development across different environments.

#2
Challenge 03

Expanding product functionality alongside maintenance

The engineering backlog ranged from bug fixes and code improvements to substantial product features. Additional capacity allowed the existing team to handle this breadth of work within its established delivery process.

#3
Challenge 04

Improving frontend development practices

Azati introduced frontend unit testing with React Native Testing Library and Jest alongside normal feature delivery, giving the team repeatable coverage for frontend behavior as the application continued to evolve.

#4
Challenge 05

Evolving the API consumption layer

The team also contributed to the migration from REST APIs toward GraphQL using Apollo Client, supporting the platform's evolution while continuing to deliver product functionality.

#5

Need more engineering capacity without creating another delivery stream?

Add React, React Native, and React Native Web engineers directly to your existing product team while keeping your roadmap, product decisions, and delivery process in-house.

Explore embedded healthcare engineering

How Azati contributed to the healthcare platform

The work wasn't isolated to mobile or web. Because the product shared functionality across React Native and React Native Web, changes often had to work across both surfaces. Azati contributed within the existing product team, taking on both feature development and maintenance across the shared codebase.

01

Patient intake questionnaires

Azati worked on the patient intake questionnaire experience, including branching questionnaires where subsequent questions depend on earlier answers. This allowed the product team to support more structured intake flows without treating every questionnaire as a separate interface.

Key capabilities:
  • Dynamic patient questionnaires
  • Conditional question flows
  • React development
  • Existing workflow maintenance
  • Bug fixes and incremental improvements
02

Appointment scheduling

Azati redesigned and extended the appointment-booking experience, evolving how patients find and schedule visits across the healthcare platform's web and mobile applications.

Key capabilities:
  • Appointment scheduling workflows
  • Frontend feature development
  • UX-driven implementation
  • React and React Native development
  • Cross-platform interface changes
03

Primary care provider selection

Azati implemented functionality for selecting a primary care provider, extending the patient-facing workflow within the existing app architecture rather than introducing a separate experience.

Key capabilities:
  • Primary care provider selection
  • Patient-facing workflows
  • React/React Native development
  • Integration with existing application flows
04

Patient vital information

Azati contributed to functionality for viewing, updating, and applying patient vital information within the healthcare workflow. The work involved extending existing interfaces while keeping the implementation consistent with the shared application architecture.

Key capabilities:
  • Patient vital information workflows
  • Data entry and update interfaces
  • React and React Native development
  • Integration with existing clinical workflows
05

Frontend testing and API evolution

Azati expanded frontend unit testing using React Native Testing Library and Jest, while also contributing to the migration from REST APIs to GraphQL with Apollo Client. These changes were introduced alongside normal feature delivery rather than as a dedicated modernization project.

Key capabilities:
  • Frontend unit testing
  • React Native Testing Library
  • Jest
  • GraphQL / Apollo Client
  • REST-to-GraphQL migration support
  • Frontend API integration
06

Continuous product development and maintenance

Across 32+ months, Azati contributed to the product team's regular development workload, from bug fixes and maintenance to larger feature releases. Approximately 4,800 engineering hours were delivered across the engagement, with work prioritized alongside the client's existing roadmap and product team.

Key capabilities:
  • React development
  • React Native development
  • React Native Web
  • Cross-platform feature delivery
  • Existing application maintenance
  • Bug fixing and troubleshooting
  • Incremental UX and functionality improvements
  • Collaboration with product, design, QA, and engineering teams

Delivery and business outcomes

AreaDeliveryOutcome
Patient intakeBranching patient questionnairesMore adaptable digital intake workflows within the existing patient application
Appointment schedulingScheduling redesign and new booking functionalityContinued evolution of patient-facing booking without introducing a separate scheduling experience
Primary carePrimary care provider selectionExpanded patient choice within the existing care-navigation workflow
Patient vitalsFunctionality for viewing, updating, and applying vital informationExtended digital support for patient information workflows used within the existing product
Frontend engineeringUnit testing with Jest and React Native Testing Library; contribution to REST-to-GraphQL migration with Apollo ClientTesting and API-layer improvements introduced alongside normal feature delivery rather than through a separate modernization initiative
Cross-platform developmentReact, React Native, and React Native Web development across shared product surfacesFeature changes could be evolved across web and mobile without splitting the work into separate frontend delivery streams
Embedded product capacity~4,800 engineering hours across 32+ months covering features, maintenance, and bug fixingAdditional engineering capacity absorbed into the client's existing product process without creating a separate delivery stream

Who this engagement model is best suited for

  • Established healthcare product teams that need additional engineering capacity without creating a separate delivery organization.
  • Healthcare applications spanning web and mobile where React Native and React Native Web allow teams to share part of the frontend codebase.
  • Product teams balancing feature delivery, maintenance, and technical improvements rather than pausing the roadmap for a dedicated modernization project.
  • Healthcare organizations with an established engineering function that want external developers embedded into their existing product process.
  • Products evolving patient and clinician workflows continuously, where product context and familiarity with the existing codebase matter over time.

Not a fit if

  • You are looking for a greenfield healthcare platform built entirely from scratch
  • You need a turnkey EHR product built and owned end-to-end by an external vendor
  • You need a standalone team to own the entire product strategy, architecture, and roadmap
  • The engagement is limited to a short, isolated frontend task with no need for ongoing product context

Why this engagement mattered

Before expanding the team, the client's product organization was balancing new patient features, ongoing cross-platform development, maintenance, and a frontend modernization backlog, all within the same engineering capacity.


Traditional hiring to expand capacity would have required an independent recruiting and onboarding cycle. Instead, the embedded model integrated engineering resources straight into the current product workflow, allowing development across React, React Native, and React Native Web to progress seamlessly alongside the client's roadmap.

The practical lesson from this engagement

Healthcare product teams don't always need another development process. They often need additional engineers who can enter an existing codebase, understand the workflow, and contribute at the same pace as the people already building it.

Why embedded engineering, not hiring or freelance contractors?

FactorInternal hiringFreelance contractorsEmbedded engineering partner
Ramp-up timeMonths (recruiting and onboarding)Weeks, but limited context retentionDays to weeks, with sustained product context
Cross-platform coverageRequires multiple specialist hiresEach contractor covers one surfaceOne team covers React, React Native, and React Native Web
Product continuityHigh, but expensive to maintainLow. Context leaves when the contract endsHigh. Sustained engagement with accumulated domain knowledge
Process integrationNativeParallel (often creates a separate stream)Embedded inside the existing delivery process

Building healthcare features across web and mobile?

When patient and clinician workflows share a React Native and React Native Web codebase, the engineering challenge isn't simply adding another developer. It's adding someone who can work inside the existing product and keep changes moving across surfaces.

Talk to Azati about your healthcare application

What should healthcare organizations prioritize when expanding an existing product team?

PriorityWhy it matters
Shared web/mobile developmentReact Native and React Native Web can help an existing team evolve multiple frontend surfaces without splitting delivery across separate specialists.
Patient workflowsScheduling, intake, provider selection, and patient information need to evolve around real healthcare workflows rather than generic application patterns.
Frontend qualityWhen one codebase serves patients, clinicians, web, mobile, and TV, you can't test it casually. Every change touches multiple surfaces, and the consequences of a regression are clinical, not cosmetic.
Sustainable engineering capacityThe point of an embedded model is that your team stays your team. You keep the roadmap, the product decisions, and the engineering culture. Azati adds capacity, not complexity.

Frequently asked questions

An embedded engineering model integrates external developers into the existing product organization, working within the same tools, backlog, development process, and delivery cadence as the internal team. This adds capacity without creating a parallel product organization and allows the client to retain ownership of product decisions and priorities.

Over a longer engagement, embedded engineers also build working knowledge of the product and its codebase, reducing the need to repeatedly onboard new external resources. In this 32+ month healthcare engagement, engineers worked alongside the client's existing developers, testers, managers, and designers on new functionality, maintenance, and bug fixes across web and mobile applications.

A shared cross-platform codebase can reduce the need to implement the same product logic independently for every client surface. React Native and React Native Web allow teams to reuse parts of an application architecture while adapting interfaces to mobile and web requirements where necessary.

This approach can be particularly useful for healthcare products that need to evolve patient and provider workflows across multiple channels. In this engagement, Azati contributed across React, React Native, and React Native Web within the existing product codebase, supporting functionality used across the client's web and mobile applications.

Digital patient questionnaires often need conditional or branching logic because later questions may depend on answers given earlier in the intake process. Designing this logic within the application allows questionnaires to adapt to different patient responses instead of forcing every user through the same fixed sequence.

The approach can make more complex intake workflows manageable while keeping the questionnaire experience within the existing patient application. Azati contributed to a patient questionnaire tool that supported branching flows, where responses to previous questions determined which questions appeared next.

Appointment scheduling can usually be evolved incrementally by extending the existing booking workflows, interfaces, and application architecture rather than treating scheduling as a separate product. This allows teams to introduce new booking functionality while continuing to maintain the surrounding patient experience.

For established healthcare products, incremental development is particularly relevant when scheduling is connected to other workflows such as provider selection and patient information. During the engagement, Azati contributed to the redesign and expansion of appointment scheduling functionality within the existing healthcare application.

Frontend testing helps product teams verify that existing behavior remains stable as applications become more complex and new functionality is added. Unit and component-level tests can provide repeatable checks around interface logic and reduce the need to rely exclusively on manual verification during ongoing development.

Introducing testing incrementally can be practical for established products where feature delivery cannot simply stop for a separate testing initiative. In this engagement, Azati contributed frontend unit testing using Jest and React Native Testing Library while continuing normal feature development and maintenance.

GraphQL can be useful when an application needs more flexible access to data across multiple frontend experiences and when teams want clients to request the fields required for a particular workflow rather than relying exclusively on fixed REST responses. The value depends on the application's architecture, data relationships, and existing API model; migrating to GraphQL is not automatically an improvement for every product.

In this engagement, Azati contributed to the migration from REST APIs toward GraphQL using Apollo Client while continuing development of the existing React and React Native applications.

If any of these match your roadmap, this case study is for you

  • Healthcare software development
  • Healthcare application development
  • React Native healthcare development
  • Patient portal development
  • Clinician application development
  • Healthcare mobile app development
  • Healthcare web application development
  • Cross-platform application development
  • Healthcare UX implementation
  • Frontend modernization
  • GraphQL application development
  • Healthcare product engineering
  • Patient engagement platform development
  • Patient record workflow development
  • Clinical workflow automation

Related healthcare platform development expertise

Get a snapshot of our recent projects and see how Azati delivers measurable results for our clients.

Multi-Tenant Telemedicine Platform for Insurance Providers
Life Sciences & HealthTech

Multi-Tenant Telemedicine Platform for Insurance Providers

7 insurance customers supported through a shared platform
2+ years of continuous platform development
1+ year of stable production operations
  • NestJS
  • Microsoft SQL Server
  • Redis
  • Azure
  • BullMQ
  • TypeORM

Business challenge

A Danish digital healthcare provider needed to adapt its telemedicine offering for multiple insurance organizations with different branding, workflows, translations, and operational policies. Separate applications for each partner would increase delivery and maintenance complexity, while the platform also needed to support consultations, scheduling, eligibility, payments, notifications, and reporting.

Solution at a glance

Azati contributed to building a multi-tenant telemedicine backend from scratch, enabling multiple insurance organizations to operate on a shared codebase while retaining customer-specific configurations. The platform supports the consultation lifecycle, patient administration, provider scheduling, billing, communications, reporting, and continuous onboarding of new insurance partners.

How Azati solved the challenge

  • Multi-tenant healthcare platform: Built a shared backend serving multiple customer-facing applications, with configurable branding, translations, workflows, and operational policies for each insurance partner
  • Consultation lifecycle management: Implemented workflows covering appointment scheduling, rescheduling, follow-up consultations, consultation status management, prescription support, and provider operations
  • Patient and eligibility management: Supported patient and dependent profiles, insurance eligibility validation, vouchers, employee administration, and insurance-sponsored healthcare programs
  • Billing and payment workflows: Implemented payment and billing mechanisms, including Stripe integration and voucher-related workflows supporting insurance-sponsored healthcare services
  • Automated communications: Developed SMS, email, push notification, reminder, and asynchronous processing workflows to coordinate interactions across patients, providers, and administrators
  • Compliance and operational traceability: Implemented audit logging and activity tracking to provide visibility into platform activity and support operational oversight

Business outcome

  • 7 insurance customers on one platform: The shared platform enabled the client to support seven insurance organizations without maintaining separate applications for each partner
  • Scalable partner onboarding: Customer-specific configurations allowed new insurance organizations to be introduced while preserving a common platform foundation and reducing duplication
  • Lower operational complexity: A shared backend simplified long-term maintenance and enabled common platform capabilities to be evolved across customer environments
  • Stable production operations: The platform maintained more than one year of stable production operation while continuing to evolve through a 2+ year engagement
Legacy E-Health Portal Modernization for an International Software Integrator
Healthcare

Legacy E-Health Portal Modernization for an International Software Integrator

50% reduced manual data handling
35% faster cross-system data exchange
100% requirements-aligned data flow across integrations
  • Java
  • REST APIs
  • HL7 FHIR
  • Spring Security
  • Enterprise Integration

Business challenge

The client needed to integrate multiple healthcare systems and data sources into a unified eHealth platform. However, they faced fragmented systems with incompatible data formats, manual data transfers between platforms, strict compliance requirements for sensitive health data, and unreliable cross-system synchronization. These issues created delays, increased operational overhead, and risked data inconsistencies in critical healthcare workflows.

Solution at a glance

Azati designed and implemented a secure integration layer that connects disparate healthcare systems into a unified platform. The solution standardizes data exchange using healthcare protocols, enables real-time synchronization across systems, ensures secure handling of sensitive medical data, and reduces manual intervention through automation. This creates a reliable, regulations-aware, and scalable integration ecosystem.

How Azati solved the challenge

  • Standards-based integration: Implemented HL7 FHIR protocols to ensure interoperability between healthcare systems.
  • API-driven architecture: Built REST APIs for seamless and scalable system communication.
  • Data validation & consistency checks: Ensured accuracy and synchronization of patient and operational data across systems.
  • Security & regulations controls: Applied strict access control and data protection measures for sensitive information.
  • Workflow automation: Reduced manual data handling through automated data exchange processes.

Business outcome

  • Unified data exchange layer: Centralized integration across multiple healthcare systems.
  • Real-time synchronization: Consistent and up-to-date data across platforms.
  • Compliance-conscious architecture: Secure handling of sensitive healthcare data aligned with regulatory requirements.
  • Reduced manual work: Automated processes replacing manual data transfers.
  • Scalable integration framework: Supports future system extensions and integrations.
Patient Record System and Database Migration
Life Sciences & HealthTech

Patient Record System & Database Migration

16B+ records successfully merged across two databases
100K active users accessing a unified system
75% reduction in average task completion time
  • Java
  • PostgreSQL
  • Oracle
  • JasperReports
  • ZK Framework

Business challenge

A healthcare company needed to unify Physician and Patient Records systems built on different database technologies while improving usability and supporting new healthcare workflows. The scale of the data and user base made migration, UI modernization, and system performance critical concerns.

Solution at a glance

Azati merged PostgreSQL and Oracle data into a unified structure, optimized internal Java logic, modernized the user interface, and added reporting and recruitment capabilities. The resulting system provided a single data foundation, smoother workflows, and improved performance for a large active user base.

How Azati solved the challenge

  • Database unification and migration: Merged the PostgreSQL-based Physician Module and Oracle-based Patient Records Module into a unified structure while preserving data integrity across 16B+ records
  • User interface modernization: Extended the existing ZK-based interface with custom components and scalable tables for medical conclusions, improving navigation and handling of large healthcare datasets
  • Business logic optimization: Reworked internal Java logic to support additional user roles, permissions, and consistent workflows across the unified platform
  • Medical reporting automation: Integrated JasperReports to automate PDF generation for critical medical forms, improving documentation accuracy and simplifying digital storage and retrieval
  • Recruitment health assessment: Developed a dedicated recruitment module for tracking medical examinations, health assessments, scoring, and reporting while integrating the resulting data with the main patient database
  • Infrastructure and performance optimization: Moved the application to a private cloud and relocated databases closer to the development environment to mitigate infrastructure-related performance issues and reduce response delays

Business outcome

  • 16B+ records unified: Two separate databases were consolidated into a single data structure, creating a unified foundation for physician and patient records and simplifying future integrations
  • 100K active users supported: The unified system now serves more than 100,000 active users across healthcare and administrative workflows
  • 75% faster task completion: UI improvements, optimized business logic, and streamlined workflows reduced average task completion time by 75%
  • Simplified system maintenance: A unified database and consistent internal logic reduced the complexity of maintaining separate subsystems and facilitated further platform development
  • More efficient medical documentation: Automated PDF reporting and the recruitment module streamlined medical documentation, assessment, and administrative workflows

Last updated

Got a job for Azati? Let’s talk business!

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

What's next?

  • 1. Tell Us Your Story
    Describe your project. We come back within 24 hours with team availability and a rough plan. NDA on request before the first call.
  • 2. Get Your Roadmap
    Receive a detailed proposal with scope, team composition, timeline, and costs tailored to your goals.
  • 3. Start Building
    Azati aligns on details, finalize terms, and launch your project with full transparency.