Some nerdy screenshots to prove that, yes, I’m actually building the admin stuff and not just farting around (Week 19)
I’m concerned that you, Dear Weeknotes Reader, might not believe I am working on vital-yet-boring-and-invisible admin tools, at the expense of visible-and-useful-to-jobseekers features on the public Job Garden website, given this alleged admin tool development has been going on for some weeks.
As it happens I’m about 50% of the way through building the tool, so today is a glimpse behind the scenes.
As a reminder:
I want it to be easy for me to onboard new job board creators to Job Garden. Right now, it’s a slow and manual process. I’m building a tool intended to remove drudgery and simplify site management.
If you get to the end, there will be an anecdote about model railways. As a “reward.”
At the top of this post, there’s a screenshot of the settings screen I use to maintain my job board. For reference, here’s my job board.
Each of those listed companies is endorsed by me, and Job Garden automatically syncs all of their open roles where they are displayed on the job.garden website, shared on Twitter, etc.
The syncing happens because each company has a custom written integration. The integrations are quick to write! But sloooooow to manage.
You won’t be able see this settings screen yourself because I haven’t made the create-your-own-job-board feature public yet. Because of the aforementioned slowness. But if you want a closer look, see my post for Week 8.
The interesting bit is at the BOTTOM of the settings screen.
If you try to endorse a company that doesn’t already have one of these custom-made sync integrations, it shows up in this section at the bottom. It’s there, but it’s not doing anything yet.
That’s where the admin work starts.
Now this is part of the admin tool I’ve been building.
This private screen shows me all the suggested companies suggested by all the job board creators, all across Job Garden.
The intention is that I will look at this screen daily, and mindlessly follow the instructions at the top of the screen. I say mindlessly because that’s my aim with this admin system: I want maintaining Job Garden to be something I can do pre-coffee, in as little time as possible.
With this particular screen, the goal is to convert suggested companies into companies that Job Garden knows how to sync. That’s what the button on the right is for. Click “Connect/Create” and…
This screen is I take a company suggested by a user (a user who almost certainly doesn’t care about lovely clean metadata) and connect it up with a company validated and checked by me (me: obsessed with lovely clean metadata).
Okay, so that’s how companies get in the system. How are the integrations managed? Read on!
This screen shows all companies with non-functioning integrations. That is, the companies wot dont sync.
Like the other admin screen, this one has a goal at the top that I can mindlessly follow: fix everything so the list is empty.
Now, creating an integration requires Actual Code which this screen doesn’t help with. But it does help detect whether an existing integration will work for a company, and it does help with testing new integrations while they’re being coded.
I can test integrations from this screen. After testing, I can see the multiple steps of each integration, and diagnose the code accordingly.
Once I’m happy that a company can sync its jobs without errors, I can save its results to the database, and it’ll start being included in the regular automatic sync run.
This screen also shows when an existing integration might be broken: now I have a whole bunch of integrations, they break periodically and — out of an abundance of caution — turn themselves off. So it’s useful to have something to keep on top of that.
Okay: we’re still not there.
Here’s what I still need to build:
- For a given user, once integrations to support them have been built and tested, a screen to flip their suggested companies into a fully functional job board (and send them a notification email)
- An additional tool to manage creating and testing integrations even if a user hasn’t suggested a particular company
Once I’ve done that, I’ll feel comfortable onboarding a couple more users and their associated companies, and we’ll have a couple more job boards on the site.
I know this is nerdy but actually I get a kick out of building admin stuff that no-one but me will see or use.
Here’s a story I’ve told before but will repeat here:
I was at a big model railway exhibition a couple of years ago, which is not a hugely regular occurrence for me. But interesting, yknow. Anyway, I got pretty into looking at the control panels for the layouts. Because the model makers would ad hoc together these sheets of wood with tracks drawn on them, lovely toggle switches for the points, big fat lights for the signals, etc, etc. All custom.
And I was in this massive crowd looking at this spectacular model of Liverpool Lime Street (1948), leaning over with my camera to take a picture of the control panel — which is actually in that video by the way, about 5:30 in — and behind me, one guy sees me and says to the guy next to him, “pshaw, it’s one of those control panel nerds.”
And then I was all: who are YOU calling a nerd you NERD, you’re the one at a railway modelling exhibition.
Note it’s called railway modelling, not model railways, because I don’t know why but it’s very important.
But actually I didn’t say anything because I AM a control panel nerd, really, in a casual sort of way, and he got me good. Nerd.
I’m back to the admin tool mines. See you next week.