An Internal Employee Management App Focused on Schools

Copied URL with current time.
0:00 / 0:00
Chris Goodwin

In this episode of Running in Production, Chris Goodwin talks about building a platform with Django to manage 15k+ students and 2.5k+ staff members across 29 locations. It’s all hosted on a few on-premises Windows servers and has been up and running since 2017.

Chris covers evolving a solution from Excel sheets, working with a large monolithic Django code base, being a Microsoft shop and the importance of tests and logging.

Topics Include

  • 3:53 – There’s 2 developers and a manager who is also a database guru
  • 6:58 – Motivation for using Django and Python
  • 9:52 – It’s a monolithic app using Django templates with a touch of Vue + API endpoints
  • 15:51 – Since it’s an internal app, here’s an explanation of what it does
  • 22:52 – Celery isn’t being used but it’s on their list to start using it
  • 26:23 – It’s a Microsoft shop using MS SQL as a database and Apache for a web server
  • 33:19 – There’s a few beefy on-prem Windows servers and software is configured by hand
  • 41:43 – Walking us through developing a feature in development to deploying it to prod
  • 52:55 – Getting alerted in Slack if things go astray with the app
  • 55:57 – Best tips? Test and log everything and try to keep up with the updates
  • 59:02 – You can find Chris on GitHub, Twitter, Twitch (dev stream) and Instagram
📄 References
⚙️ Tech Stack
🛠 Libraries Used

Support the Show

This episode does not have a sponsor and this podcast is a labor of love. If you want to support the show, the best way to do it is to purchase one of my courses or suggest one to a friend.

  • Dive into Docker is a video course that takes you from not knowing what Docker is to being able to confidently use Docker and Docker Compose for your own apps. Long gone are the days of "but it works on my machine!". A bunch of follow along labs are included.
  • Build a SAAS App with Flask is a video course where we build a real world SAAS app that accepts payments, has a custom admin, includes high test coverage and goes over how to implement and apply 50+ common web app features. There's over 20+ hours of video.


Aug 17, 2020

✏️ Edit on GitHub