Time Frame: Aug 28, 2018 - Oct 28, 2020
VR Chronic Pain Therapy Application
I was initially hired by Karuna Labs in 2018 to work on exercises to be performed within their existing application. The first assignment for myself was to use Vive Trackers to create an environment the users can “bike” around in utilizing a Desk Pedal machine; which was accomplished fairly quickly. However, due to the majority of the initial application being built by junior engineers and interns, the technical debt it held was daunting. Shortly after joining, Karuna hired a CTO and Senior Lead Engineer and both decided that the application needed to be gutted and rebuilt from the ground up.
First Showcase Shortly After I Joined
Karuna Labs - VR Experience from Karuna Labs on Vimeo.
The team at the time of that decision composed of a full-time CTO, part-time Lead Engineer, and three full-time junior software engineers. For the first couple months we simply rebuilt the existing exercises upon an MVC framework called StrangeIOC. Aside from porting some of the existing exercises, I also built much of the softwares initial UX that clinicians used to select the exercises and the options for each exercise. They were designed with scaling in mind and to reduce technical dept as much as possible for the future. Eventually the first iteration of that platform was released across multiple clinics within the US.
Second Showcase After Complete Rebuild
Shortly after this, the Lead Engineer parted from the startup and I took over the management and future feature development for the avatar IK system and elements of the Range of Motion Data calculation system. I built features that prevented unwanted data such as the virtual avatar twisting and turning in ways that we didn’t want for the exercise.
Along with the core elements of the application being built out, all of the junior engineers were tasked with building out and supporting future development of their own exercises. Some of the exercises I built out included a meditative lotus toss exercise, playing fetch with a dog, a meditative orb collection exercise, as well as various other preliminary exercises to calculate the users maximum range of motion.
Third Showcase Of Some Exercise Examples
Before parting from Karuna Labs, I did some work on the backend data collection systems that utilized the Django Python Framework. Although what I learned from that was very minimal.