Learning MERN... and My Next Project

11 Dec 2020

It’s time for a bit of a pivot.

Since I first began full stack web development, I have stuck with my trusty Flask backend. It’s a legacy from a younger, more bright-eyed Steve who picked up a copy of Automating the Boring Stuff with Python over a year ago after hearing Reddit sing its praises. My journey into web development grew organically from that, first into Jinja templating and later into a proper split between front and back ends.

Now, I’m leaving the safe harbor of Flask for new ports.

I’ve been interested in the MERN stack for a while now; not least which because I’ve been working in a big part of it (React and NodeJS) for a while. Some of my JavaScript tutorials had briefly touched on Express, and I’ve been curious about NoSQL databases ever since I learned the difference between them.

Over the last few days, I’ve been playing with a new MERN ecosystem and have been delighted at how simple it is to spin off a small backend. Honestly, it’s a much better stack for my last project, where the backend was basically an empty bucket where I stored little pieces of information. Flask (and Python more generally) is better suited for SousChef, because I acuatlly need to do some processing of the data, and Python is much more suited for that. But for now, I’m going to make MERN my go-to stack, at least until I’m comfortable with it.

Which leads me to my new project. Enter…

JobHound

Do you hate the job search? I know I do. Modern websites have made the task of job hunting both easier and harder than ever before. Easier, because you can save your resume and find jobs that match your qualifications faster than ever before. Harder, because everyone else does it too (and because those algorithms aren’t always that good at matching).

I’ve been in the midst of a job search myself, and over the course of the last few months, all of the little annoyances of the hunt have begun to accumulate for me. Stuff like drafting your cover letter, keepign track of which resume you’re using for what applications, trying to find personalized company values to demonstrate that you’ve looked at their website and you want to work for them specifically (whether or not you actually do), filling in your information even though it’s already on your resume, when and how to follow up…

It sucks. And while there are websites out there that streamline the process, they generally only do so for their specific website, meaning you have to juggle between numerous different places to keep track of everything.

That’s where JobHound (working title) comes in. My plan is to create a central app that stores and tracks all of my different job applications, where I applied, the websites I’m using, what cover letter I used, and so on. My hope is to find trends for what works and what doesn’t, and create some sense of progression in what is ultimately a cyclical process.

Additionally, I’m going to be doing things a bit differently this time around. I’ve already got the empty app up and running, and I’m going to be updating it in real time as I work. My goal is to get some small feature or asset implemented every day, in the same vein of those “X days of code” challenges that go around the internet from time to time.

My hope is that this will provide a fun way for me build this project quickly and focus on functionality rather than total completion. In the past, I’ve labored away for months wihtout showing anyone my work; this is my attempt to do the exact opposite.

Because I’m going to be pretty busy this weekend, the “official” challenge won’t start until next Tuesday at the earliest, but I plan on implementing a few other features and getting all my ducks in a row before then. In the meantime, you can check out the GitHub repo (warning: there’s not much there right now).

I’m pretty excited about this project, and in my next post I want to go over a little more of how it’s going to work. But this blog post is getting long enough, and it’s just about dinner time.

See y’all soon!