Healthcare for software developers – where to start?

It’s been 2 years since I started working for a software company specialized in the healthcare industry, risk management specifically, but sometimes I still feel lost among innumerous acronyms, terms, and standards. When I spend most of my working hours transforming business specification to code, a big part of my focus is spent on technical stuff, while learning about the domain I’m working on stays on the background.

Coming from an engineering background, I’ve noticed some similarities with healthcare regarding standardization and data interchange and integration. Both fields have been served by software hosted on-premise, having interoperability as a nice-to-have feature.

Now that interoperability is a key feature, this gap needs to be closed. Mapping data from one EHR to another is almost artisanal work. Even if these systems have predefined adapters for most used protocols and standards, it seems that specifications exist not to be followed. Knowing how to extract and transform data requires time and sampling.

I created a list, based on my actual experience, of some standards, protocols, frameworks, and tools that I’ve come across or used at work.




This is a coding system for identifying health measurements, observations, and documents.



ICD – International Classification of Diseases



HL7 – Health Level 7

This is by far the most used EDI (electronic data interchange) format for healthcare systems. Its versioning spans from  In my humble opinion, it’s super convoluted, but the reasoning behind the format falls on computational constraints from a while ago.

CDA – Clinical Document Architecture

FHIR – Fast health interoperability resources

FHIR is the next version of HL7 standards that makes use of modern protocols and formats. It is very well documented including drafts and discussions about to where the standard is evolving.



This is an integration software used for aggregating data from different EHR systems.


An open source integration tool




HL7 v2.x message parser written in Java. Do not mistake for hapi.js



As most of the stuff that is written is Java has a counterpart for .Net, this is the port of HAPI.