I'll build you a secret base on the dark side of the moon, no questions asked.


Platform for primary care

The simplest and most obvious way to digitalize primary care is with video consulations. It's basically the same thing except the doctor can't do a physical examination or take tests. But except for the lack of travel, which admittedly is nice, we haven't really improved the experience for either party a whole lot. You're still locked to a specific time and duration.

The next step is to make primary care asynchronous. Why limit ourselves to a 30 minute videochat? It seems much better to have the patient provide as much data as is needed upfront. If the case is not suitable for digital care then let the patient know right away and not waste everyones time. The doctor can then make an assessment in their own time, ask followup questions, request lab tests or consult colleagues. Lastly the patient can get a conclusion to their case, be it a diagnosis, a prescription or good advice.

In this project we built an asynchronous primary care platform. It includes triaging, messaging, videochat, prescriptions, referrals, diagnostics, decision support. Most systems become a bloated mess once you've included all the bells, whistles and seatbelts required to provide great digital primary care. We worked to avoid that pitfall by modularizing as much as possible and mostly sticking to a simple event log with strict revision history.

Triage engine

The holy grail in digitalizing primary care is to automate the triaging. If you opt for machine learning or similar approaches you end up with a black box of probabilities that will be very difficult to audit and validate. Another approach is to compose complex flows out of fairly simple programmatic logic.

There you could go with a standard form builder approach using JSON or XML. But you'll quickly notice that it's tricky to express even simple logic or dependencies between questions. A less limiting approach is to use a Domain Specific Language (DSL). This gives you all the flexibility a programmer has when writing code while still maintaing strict rules on what, where and how things may be referenced.

In this project we built such a triaging engine using a DSL. It supports any number of ways to query a patient. It's also fully asynchronous so a patient can pause midway through and finish at a later time. The idea is to build small reusable well-tested modules that dive deep into a specific topic like alcohol habits, diabetes or heart disease. You can then use these modules to compose a general-purpose triaging flow.

IT system for advanced home care

Home care is on the rise. But much of healthcare technology is geared towards care in a hospital. In this project we teamed up with doctors and nurses working with advanced home care, typically cancer patients and often palliative in nature.

While we built a whole lot of things, what turned out to be the most useful was a simple planning system. In hindsight it's fairly obvious that the main differentiator to hospital care is the daily planning of who goes where and does what.

Other things we built include a general purpose WebRTC videochat, a remote monitoring system for patients with kidney disease and a journaling system for end-of-life care.

Rehabilitation app for stroke patients

Aphasia is an inability to comprehend or formulate language. It is commonly caused by a stroke. The rehabilitation process is long and arduous. In this project we built a rehabilitation app based on a few key insights.

The first is that training on just a few hundred words can unlock countless more. Especially if the words already carry significance to the patient.

Secondly that the learning process is greatly improved if you can trigger an emotional response. This can be done by playing short video clips that include moments of suspense, joy or any number of emotions.

Lastly we had the idea to supercharge all of this with community generated content. The patients friends and family know best what words carry significance and can record short video clips that are particularly meaningful. Even better if they are open to sharing what they created with other patients going through the same struggles.

Messaging system for surgical wards

There's few places in the world more high-tech than your typical surgical ward. So you might find it surprising how crude the means of communication can be. When a need arises inside the operating room, someone presses a button on the wall and the sirens go off in the entire ward until someone pops their head in to ask what's up.

While there's good reason for the sirens to go off when there's an emergency, most surgeries are routine and their needs less critical. After having set up shop at a surgical ward for a few months we built a simple messaging system where the staff inside the operating room could type out a quick request. We equipped the staff outside with cheap but reliable Android devices so they could quickly respond and indicte that they had grabbed the task.

Everyone now knew what had been requested and who took care of it. And the sirens could be saved for when lives were actually at stake.


My name is Erik Johansson and I'm a Software Engineer.

I've done all kinds of work but healthcare is my bread and butter. In some ways I've already had my dream job. For a few years I got to run around hospital wards pestering people about ideas, theirs and mine. Some of them I then got to build. A few even made it into general use.

But the wheels of progress are slow in the public sector. Sometimes for good reason. Other times not so much. I got tired of watching great ideas go to waste. So now I try to contribute to whatever interesting projects come my way. If you have ideas, I'm all ears.


Do you have an idea so crazy it just might work? Let me build it and we can find out together. I promise it'll be a lot quicker and cheaper to build a first version than you can ever imagine.