Healthcare Engineering Standards — A Practical Guide for Software Engineers
HL7, FHIR, openEHR, DICOM, CDA, and what actually matters when you build for healthcare.
Why this guide exists
Healthcare is one of the most complex domains in software engineering. If you're coming from SaaS, the rules of the game change the moment you join a health-tech team.
In an e-commerce app, renaming a field breaks a few internal services. In healthcare, the same mistake can break a lab integration, delay a diagnosis, or compromise patient safety.
That's why this domain leans heavily on standards — not frameworks.
What makes healthcare software different
In most apps, you control the schema, APIs evolve quickly, and integrations are optional.
In healthcare, it's the opposite:
- Systems must exchange data across organizations.
- Patient safety depends on accurate data.
- Interoperability is mandatory, not a nice-to-have.
Picture a single patient journey: clinic → diagnostic lab → pharmacy → insurance. Four organizations, four tech stacks, one shared truth about the patient. Making that work is most of the job.
Most healthcare engineering is integration engineering.
The healthcare standards landscape
| Standard | Purpose |
|---|---|
| HL7 v2 | Hospital messaging |
| FHIR | Modern healthcare APIs |
| SMART on FHIR | EHR app integration |
| CDA | Clinical documents |
| openEHR | Structured health records |
| DICOM | Medical imaging |
| SNOMED / LOINC / ICD | Clinical terminology |
| X12 / EDI | Insurance & billing |
A single hospital workflow often uses several at once: HL7 for admissions, FHIR for patient APIs, DICOM for MRI scans, SNOMED for diagnosis codes.
Let's walk through the ones that matter most.
1. HL7 v2 — the backbone of hospital integration
HL7 v2 is the messaging standard for admissions, lab results, scheduling, and billing events. It's old, it's quirky, and it's still everywhere.
When a patient is admitted, an HL7 ADT message fans out: pharmacy picks it up, the lab spins up records, billing kicks in.
A real message looks like this:
MSH|^~\&|LAB|HOSPITAL|EHR|HOSPITAL
PID|1||12345||DOE^JOHN
OBX|1|NM|WBC||5.4
Pipe-delimited, terse, and full of routing metadata.
What you'll actually do: TCP/MLLP messaging, interface engines, transformations, retries — and a lot of normalizing inconsistent data. One hospital sends M. Another sends Male. Your integration layer makes them agree.
Common tools: Mirth Connect, Rhapsody, Cloverleaf. A typical Mirth pipeline receives HL7 lab messages, validates them, transforms the payload, and pushes records into a FHIR API downstream.
Docs: hl7.org/implement/standards
2. FHIR — modern healthcare APIs
FHIR is what happens when healthcare standards meet REST. JSON, OAuth2, predictable resource URLs.
Instead of vendor-specific endpoints like:
GET /patientInfo?id=123
FHIR gives you:
GET /Patient/123
A resource looks like any modern API payload:
{
"resourceType": "Patient",
"id": "123"
}
Resources cover the usual suspects: Patient, Observation, Encounter, Medication, and dozens more.
Why engineers like it: it feels normal. React, Angular, or a mobile app can consume FHIR APIs the same way they'd consume any SaaS API.
The catch: FHIR allows profiles and extensions. Two hospitals can both "support FHIR" while modelling allergies or medications differently. Mapping logic doesn't disappear — it just moves up the stack.
Docs: hl7.org/fhir
3. SMART on FHIR — apps inside EHRs
SMART on FHIR layers OAuth2, OpenID Connect, and a launch workflow on top of FHIR. The result: third-party apps that run securely inside Epic, Cerner, and other EHRs.
A doctor clicks an AI clinical assistant from inside their EHR. The app receives patient context, fetches FHIR data, and shows recommendations — no separate login, no copy-pasting MRNs.
It's how healthcare apps become plugins instead of silos. Patient portals, clinical dashboards, and AI assistants all ride on it.
Docs: docs.smarthealthit.org
4. CDA — clinical document architecture
CDA is XML-based and built for documents: discharge summaries, referrals, clinical notes.
After surgery, a hospital generates a CDA discharge document with diagnosis, medications, procedures, and physician notes, then ships it to the next provider.
Reality check: CDA is verbose. A "simple" patient summary easily becomes hundreds of nested tags. Parsing and validation take real effort, and FHIR has been quietly eating its lunch for newer use cases.
Docs: HL7 CDA product brief
5. openEHR — structured longitudinal records
openEHR is about the long game: structured, lifelong health records built on archetypes and templates.
The big idea is separating clinical knowledge from technical implementation. Clinicians define what "blood pressure" means once, as a reusable template. Engineers store it in a standardized structure. When the clinical definition changes, the database schema doesn't have to.
That separation is what makes long-term maintainability possible.
Docs: openehr.org · specifications.openehr.org
6. DICOM — medical imaging
DICOM is the standard for medical imaging, radiology workflows, and PACS systems. An MRI machine doesn't output a PNG — it outputs DICOM.
A single CT scan can contain hundreds of high-resolution slices. That means engineering for:
- large files and streaming,
- fast retrieval,
- optimized rendering in specialized viewers.
Common tools: Orthanc, OHIF Viewer, dcm4che. OHIF, for example, lets doctors open scans in a browser, zoom, annotate, and compare studies side by side.
Docs: dicomstandard.org
7. Terminologies — the unsung heroes
Without standard terminology, analytics breaks and interoperability fails.
| Standard | Purpose |
|---|---|
| ICD-10 | Disease classification |
| SNOMED CT | Clinical terminology |
| LOINC | Lab observations |
| RxNorm | Medications |
One system stores Heart Attack. Another stores Myocardial Infarction. SNOMED makes sure both map to the same concept — which is the difference between a working dashboard and a misleading one.
Docs: SNOMED CT · LOINC · ICD-10 · RxNorm
8. Security and compliance
Healthcare systems need privacy, auditability, access control, and traceability — by law.
You must always be able to answer: who accessed what, when, and what did they change?
| Region | Regulation |
|---|---|
| US | HIPAA |
| Europe | GDPR |
| India | ABDM |
Practically, that translates to encryption, RBAC/ABAC, and immutable audit logs. Even DBAs typically can't read patient records directly without leaving a trace.
Docs: HIPAA · GDPR · ABDM · OWASP Top 10 · OWASP API Security
9. Integration is the real work
A real healthcare platform might tie together 20-year-old HL7 systems, modern cloud APIs, insurance gateways, and imaging systems — all at once.
Two patterns show up again and again.
HL7 integration hub:
Hospital Systems → Integration Engine → Internal Services
The engine receives lab events, validates messages, and routes them downstream.
FHIR gateway:
Legacy Systems → FHIR Gateway → External Apps
The legacy database stays put. Modern apps talk to a clean FHIR layer in front of it.
10. Skills that actually matter
If you want to grow in healthcare engineering, invest in:
- distributed systems,
- interoperability engineering,
- API design,
- security engineering,
- event-driven architecture.
A strong healthcare engineer can debug an HL7 message, design a secure API, navigate compliance, and integrate a legacy system without breaking it.
Final thoughts
Healthcare engineering sits at the intersection of interoperability, compliance, distributed systems, legacy integration, and clinical workflows. Engineers who understand the standards — not just the frameworks — become disproportionately valuable.
A single career-defining project might look like this: build a FHIR API platform, integrate lab systems via HL7, secure patient access with SMART on FHIR, store scans with DICOM, and normalize diagnoses with SNOMED.
That mix of engineering and domain depth is what makes healthcare software different — and worth learning.
Learn the standards first. The frameworks get easier after that.

Top comments (1)
Some comments may only be visible to logged-in visitors. Sign in to view all comments.