So it all started when Josh Simpson gave a talk at BrumHack 2.0...

...and then, a couple of months later, when I remembered the talk, and decided to apply to HackCampus through the website!

The application itself was pretty easy: some basic info about myself like my uni, CV and GitHub. (Funny story: I just put a link to in place of my CV. At the time, it was a dead link. Turns out, the emails got sent out the next day -- I don't think I've ever set up a redirect in Nginx so quickly.)

There were a couple of technical questions too (nothing too scary):

  • Describe how you'd go about writing a Twitter clone
  • Critique this bit of code

The code had loads of problems, so that wasn't hard: for starters, the functionality was already in the standard library! And as for the Twitter clone, I was pretty lucky -- I'd actually done something similar the previous summer, so I talked about that. Even if I hadn't, all I needed to do was to talk about the different requirements of a system like Twitter's, and what sort of technology might be used.

And lastly, I gave some technology I wanted to work on: for me, that was Python, Flask and Django. (No surprises for anyone who reads this blog, heh.)

Anyway, long story short, I got accepted!

I got put in touch almost immediately with two different companies: Marvel and MyOptique. Both companies were incredibly well-matched to the technology I wanted to work with, and both companies said that they'd be interested in getting me in for an interview.

I said "Hell yeah", and somehow negotiated for the two interviews to be on the same day. (Train fares are super-expensive.)

Both interviews were great experiences in their own way: the companies gave me the chance to talk about the technology I knew and loved, and to ask about where my skillset would fit in with their process. My experiences at both interviews were about as far removed from the dreaded Interview Horror Stories as you could possibly get!

Just a couple of days after the interviews, I was extremely grateful to see that both companies had sent me formal offers. I could only choose one, and so I made the decision to accept MyOptique's offer -- I knew that MyOptique was a larger company, and I reasoned that it'd be valuable to learn about their strategies for managing complex and distributed systems. (I was totally right about this, btw -- but that's for the next post.)

I'll follow up with a quick write-up of my time working with MyOptique.