Maker Towns: Demographics and Job Market Data for Computer Engineers

Maker Towns 2016

I’m so bad with blogging — but I figured I should get on here and write up my latest project: Maker Towns. I have spent a little over 2 months on it and learned a lot. The idea started when I was planning a relocation and career change. Two things were important for me to feel comfortable with that decision: the software development job market and the cost of living.

I am eagerly looking forward to landing my first development position, so I wanted to find the best bet for a healthy tech market and community. I’m also bootstrapping the move and needed to consider what it would cost to get settled. That’s when I figured I should do what engineers to best: problem solve.

User Stories

There were a few simple uses I envisioned for Maker Towns:

  • I can see the current computer engineering job markets of major US cities on one map.
  • I can click on a city and find the current rental prices of that city
  • I can click on a city and find the current unemployment rate and public school school performance statistics

I was able to throw together a minimum viable product that implemented all of my original user stories in a just a couple of weeks using a lot of open source tools. I chose Node, Express, React, and MongoDB because I’ve been using those tools for quite a while now. I stuck with Heroku for dev ops because it’s just too easy to get up and running quickly. I recognize that if the site gets a lot of traffic — I’ll probably have to transition to a more custom infrastructure.

After nearly ten weeks of data collection and steady deployment — I feel Maker Towns is good enough to put out there for people to use regularly (I’m still hedging my bets and calling it a beta release). The best part is that the data and charting have solved my initial problem and made a personal career and geography change all the easier.

I think I’ll write up a technical blog detailing the tooling and code in the future, but for now I’m fairly happy with my first production-level project and I’d love to hear / see any feedback from anyone who’s used it.

P.S. I decided to open source the project with an MIT license so that people can contribute back to the platform and help it grow with their needs. If you’d like to contribute track me down on Github!