Supernatural was acquired by Meta
in March 2023 to bring our VR application in-house as a first-party Oculus studio.
-
I helped spearhead the data migration effort (along with a few other senior engineers) to adapt Supernatural's
database and API servers into Meta's infrastructure (rewriting back-end services from Python into Hack).
-
Technologies:
Python (Flask, SQLAlchemy); JavaScript (Vue.js);
Hack (like PHP); Graph API; GraphQL; several proprietary internal tools for CI/CD,
issue management, code review, etc.
Within rebranded to Supernatural named after the Oculus VR app of the same title after finding a
market fit with that application.
-
I helped build out the back-end Python API server for Supernatural and its deployment pipeline on
AWS Elastic Beanstalk (and later in EKS).
-
I extended the Within CMS to support managing content & data for Supernatural before forking
the CMS into a dedicated app for Supernatural.
-
I built an internal Music Curation tool (named Wormhole) to help the content team
identify and manage licensed music to use with the app. It provided a user interface to peruse
the massive volume of music data delivered to us by our partner labels (sent in DDEX feed
format). Behind the web app was a pipeline of Python worker scripts that ingested the DDEX feeds
and handled licensing updates and metadata sync (with Spotify and Music Reports, Inc). Wormhole
was backed by a Mongo DB which was the best fit for the loosely structured music data we were working with.
-
Technologies:
Python (Flask, SQLAlchemy); Go;
JavaScript (Vue.js); GitHub;
Docker; MongoDB; PostgreSQL; Redis; AWS
I joined Within back when their primary product was a VR 360° video
streaming platform (with multiple web & native apps), where videos were published via hand-edited JSON
files (unique format per platform) and there were no dynamic web apps within the company. Within had ambitions to create a
"Lobby" app for you & your friends to hang out in VR and join multiplayer "interactive experiences" together.
-
I built out a Python microservice architecture that included an Authentication service (centralized
user accounts for the Lobby app) and a Matchmaking service to coordinate multiplayer VR games. I also
created a custom Push Notification service (written in Go) to target our desktop apps and website,
which did not have a native push mechanism like Android or iOS do.
-
I built a Content Management System (CMS) in Python to consolidate and automate the content
publishing pipeline for the 360° VR streaming platform. I studied the various legacy JSON config
formats (for the Android, iOS, PS VR, web player, and Unity stand-alone VR player apps) to determine
the commonalities and data requirements to translate into a relational (PostgreSQL) database and
CMS platform.
- The video transcoding pipeline was based on
ffmpeg
via a third party API called Hybrik.
- The CMS also managed Unity asset bundles and content publishing for our VR interactive experiences.
-
Technologies:
Python (Flask, SQLAlchemy); Go;
JavaScript (Vue.js, Photon); GitHub;
Docker; ffmpeg; PostgreSQL; Redis;
AWS (Elastic Beanstalk, S3)
The job description was tech support and tech support at a web hosting company is synonymous with
systems administration. A large portion of our customer base ran Linux servers (CentOS). My aim was
to get hired as a software developer but as I had no prior work experience they started me out in
support.
-
Helped customers debug issues with their Apache config, managed cPanel installations,
reading exim logs, and wrote custom Perl scripts to help me troubleshoot their e-mail
servers and other such tasks.
-
After a couple months I transitioned to the software dev team and worked on some internal
tools and the customer control panel written in Perl.
-
Technologies:
Perl (Template::Toolkit, POE);
HTML/JavaScript (jQuery); CVS version control;
MySQL; Linux (CentOS)
Education
ITT Technical Institute
Associates, Computer Network Systems
2006 - 2009 | Swartz Creek, MI | Culver City, CA | Torrance, CA
Flushing High School
2002 - 2006 | Flushing, MI