1. Analytics
  2. Koa
  3. Postgres
  4. React

My Strengths My Health

My Strengths My Health, or MSMH for short, is a research project at the University of Minnesota. The goal of this research project was to gather data on the determinants of health using a framework called the Omaha System as its foundation.

The head of the project had a simple software implementation of the Omaha System. This version of the system was built with Ruby on Rails by some students at the University of Minnesota. They quickly found they needed more functionality like localization and reporting. They were also running into some scaling issues with submission of health assessments in the current solution.

I joined the research project about 3/4 of the way through my Computer Science education at the University of Minnesota as the sole developer on the project. The previous students who developed the initial solution, onboarded me onto the current codebase. After digging in, decided to rewrite the solution from scratch in the stack I had more experience in, Node and React. I started by making an initial design in Figma and put a lot of focus into making an easy to use assessment format. I wanted to keep the user experience as simple as possible as the general demographic was all over the place in terms of age and education.

This is the main assessment flow of the first design I did:

MSMH Assessment Design Desktop 1

I also made a design for the mobile format:

MSMH Assessment Design Mobile 1

I went back to the heads of the research project and we iterated on these designs a bit until we decided they were solid enough to start building the actual software. I communicated a general plan and timelines to them in a work plan document. Keep in mind, I would consider this my first real software project so naturally my timelines were way off as estimating software is and continues to be one of the hardest things to do for me.

I broke the project up into 4 different components:

If I remember correctly, I built the first version of this system in about 4-6 months and the second version in about 7 months.

The latest version of the assessment application looks something like this:

MSMH Assessment Design Desktop 2

MSMH Assessment Design Mobile 2

Here is a screenshot from the researcher dashboard:

MSMH Researcher Dashboard

I learned a ton about building software with web technologies getting into topics like:

I think this project taught me a lot more about practical software engineering than my computer science degree did. Doing a project like this alongside traditional compsci education curriculums and internships should be a requirement in my opinion. I think having this opportunity and seeing it through to completion put me ahead of many of my peers coming out of college. I believe I was able to contribute faster when entering the actual workforce. I am grateful I was given the opportunity to do this project on top of my studies.

As of today, the project requires very little maintenance but is being used by researchers all over the world. The app has support for around 10 languages currently. The research project is still on-going but currently seeking funding for a larger development team to keep adding features.