Morgan Allen

Full-Stack Developer - From The Bit to The Browser

morgan@oit.cloud morgan | morgan | /in/morgan-allen

About Me

As a life long learner I’m always seeking out new challenges, applying my prior experience to develop new skills. With almost two decades of full-stack development experience in a variety of fields I have the skills to tackle most problems that could arise. Throughout my career I have filled many roles outside just programming, from database administration to DevOps and Linux systems management.

Experience

Epicor

Senior Principal Software Engineer 01-2024 - 04-2025

My primary role at Epicor was working on a highly customized Django framework application. In addition to the framework core, my responsibilities include supporting and mentoring more junior developers, performing code reviews and participating in planning meetings.

Etheric Networks (Regional Wireless ISP)

Senior Lead Engineer and DevOps 06-2020 - 03-2023

As incoming Senior Engineer it was my job to lay out best practices for a development team struggling to maintain a legacy Python code base by; establishing code health checks, Continuous Integration systems, development Road Maps and automating service deployments.

In practice this involved creating a new Django based Customer Support Portal and using APIs to gracefully migrate from the old system to the new one while minimizing downtime and easing user into the new system.

Amongst other things I had extensive use of

  • Python / Django / Postgres / Django Rest Framework / Celery / Channels / Redis
  • Javascript / React / CSS3 / Bootstrap / Tailwind
  • Self-hosted GitLab for Issues, Road maps, CI/CD
  • Docker / Docker Swarm / Kubernetes / LXC/LXD

Chabot Space and Science Center

Exhibit Fabrication and Design Lead 11-2016 - 06-2020

Worked across multiple departments to bring interactive exhibits to the public in an amazing blend of programming, electronics and carpentry. Work included brainstorming ideas with the education department, planning with facilities for installation and maintenance schedules, collaborating with our events team for making special features. Many interactive exhibits were programmed in Python, JavaScript/NodeJS, C and even a touch of Ruby.

Tenon.io

Senior Lead Engineer (NodeJS) 06-2014 - 11-2016

Developed many backend microservices that provided primary functionality for the tenon.io crawling and analysis services. Heavy usage of async NodeJS to make services both naturally distributed and fault tolerant. Put in place extremely strict developer guidelines, adhering to rigid unit testing and code coverage analysis.

Ecologic

Head of Frontend Engineering 12-2012 - 10-2016

In charge of all aspects of Front End development, from laying out best practices, writing maintainable code, maintaining modularity to ease testability and integrating into multistage QA for testing and deployment. This was accomplished with custom router/page handler built on top of Ampersand (the spiritual successor to Backbone.js), interfacing with a Django/DRF backend. This was some of my early exposure to Django and I have been using it since.

TokBox/OpenTok

Lead Frontend Developer 10-2011 - 04-2012

Lead developer for OpenTok API prototype application TokShow. Tasked with all development choices such as framework used, project structure, development priorities, code reviews and more.

  • Extensive Backbone.js use, including TokShow API to Backbone abstraction (via collection syncing)
  • Meeting with designs teams to prioritize development roadmap
  • Weekly meetings with remote team to assign work.
  • Successfully launched TokShow with American Idol contestant.
  • Worked with API team to improve API, including filing bugs, suggesting features and improving API consistency.

Skype

Team Lead, Embedded Web Development 10-2010 - 10-2011

Embedded JavaScript development for Skype Home in Skype for Windows.

  • Working with specialized API deployed on custom embedded browser
  • Developed custom M-V-pseudo-C framework.
  • Kept framework modular, achieving modular deployments for different builds.
  • Lead dev with code review and deployments.
  • Created a NodeJS based build system to deploy minimum needed code for each platform.
  • Extensive A/B testing with very large audience.
  • Developed Continuous Integration, server-side unit testing and code coverage reports.

Skills

Programming
python - javascript - c
django - celery - channels
html5 - css3 - webcomponent
nodejs - expressjs
Hardware
esp32 - esp-idf
nrf - arm
freertos - nuttx - zypher
Databases & Visualization
postgres - postgis
redis - influxdb
grafana - d3.js
leaflet - openlayers - mapbox
Service Administration
gitlab ce - forgejo - gitea
woodpecker - gitlab runners
netbox
Virtulization & Systems
linux - lxc/lxd - proxmox
docker
kubernetes
vmware - virtualbox
Deployments & CI/CD
ansible
vagrant
docker swarm

Interests

  • Full-Stack Web Development
  • Real-Time Data Processing
  • IoT Data Architecture
  • PCB Design & Fabrication
  • Languages

    English - Native

    German - Beginner+

    Spanish - Beginner

    Morgan Allen

    Full-Stack Developer - From The Bit to The Browser

    morgan@oit.cloud morgan | morgan | /in/morgan-allen

    Projects

    KiConnect

    2025

    Next generation FreeCAD <> KiCAD interoperability based on KiCAD v9 RPC API.

    FreeCAD Parametric Web Viewer

    2023

    Build to show client work in progress on FreeCAD based models, allowing them to adjust parameters on the fly and see various versions at will. Django/Channels/Celery backend with extensive use of WebComponents on the frontend.

    Dual LoRa ESP32

    Emegency disaster radios in a credit card size - 2022

    With increasing disaster taking place annually, this projects aims to provide a solar powered fallback communication network.

    The Cacoffiny

    3d flat pack design with PCBs - 2020

    An exploration of utilizing flat pack design, traditionally used in CNC plywood to create functional 3d electronic projects.