DPD student hack days

Riccardo Margiotta
Arnold Clark
Published in
7 min readAug 23, 2019
Photo by Ilya Pavlov on Unsplash

We recently held our annual student hack day. From humble beginnings — our first event had three attendees! — we’ve expanded to host around 30 students from universities across Scotland. It’s a fun and full-on day, where teams work to solve a real-world problem before demoing to their peers and members of our company. And for those that really impress us, we can offer summer and year-long placements, and graduate positions.

With practice and iteration, I think we’ve gotten pretty good at running a fun and smooth hack day. Behind the scenes, there’s a huge amount of work going on to organise the event, and we’d like to share what it takes to make them a success.

We’re getting fancier! We used sticky labels for our first hack day…

Our new recruits are settling in nicely, so we’ll have more to tell you about our most recent hack day soon, but first a little throwback. Our hack day in November 2017 was organised by Laura Watson, a developer in our web team in Digital Product Development (she recently moved on to a new role, and we wish her well!). Impressively, she was also an attendee at our 2016 student hack day, was hired as a graduate developer, and went to run the show in 2017! She tells us what’s involved:

How did you get involved in organising the hack day?

Laura: One of our colleagues, John Gallagher, had been running student hack days for a few years before I’d joined the team, and I remembered him spending days writing up a detailed graduate recruitment guide. After he left, it had just sort of been forgotten about, and it was getting closer to the time we’d normally run the hack day.

I didn’t just want to go up to someone and say “Can I do it?” and have them reply “Well, do you have any idea what you want to do?” and not be ready. So I sat and went through what we did last year, what we’d need, who’d be involved, and who I’d speak to. I read back through John’s guide (which was hilarious), I made a plan, and worked out what could we do better.

Once I was ready, I spoke to our department heads and asked “Can I run the hack day this year?” and they said, “Go for it!”

What’s involved in getting the word out to universities and potential attendees?

Laura: I started with our existing list of contacts from universities who’d been involved in the hack days in previous years, and emailed to let them know another event was happening.

I put together a little introduction pack that wasn’t too formal and asked them to circulate it around their students, so they’d know it’s just a fun day rather than this super serious recruitment test. I don’t think we ever actually said there could be a job at the end of it, which was possibly a mistake! It was kind of implied, but not that clear. Which might not have been a bad thing in terms of reducing the pressure of the day.

If the people on our contact list had left the university or didn’t get back to me, I went onto the university websites and looked for any student recruitment contacts.

Some even invited me in to speak to the students and promote the hack day in person, which was great. So really it was just about finding the right people to talk to.

Okay, I get a little excited about the student hack day. Yes, I did colour-coordinate my T-shirt with my team colour.

How do you choose a technical test for candidates and a challenge for the hack day itself?

Laura: I looked at the technical tests we’d used in previous years, and it hadn’t really changed much each time. We definitely didn’t want to do the same test again, we had a few candidates who were interested in coming back for another hack day, so we didn’t want it to be super easy!

I looked online for some example coding challenges, and asked my team to vote on their favourite. We were looking for something that would only take a few hours to complete, but give people the option to go above and beyond the basics. This time we went with the ‘Space age calculator’, where you take your age and work out how old you’d be on other planets, based on the number of Earth days in their rotations.

We had more than 150 submissions, so it took quite a while to review them all! We saw some that were pretty basic command line tools, but some people really went above and beyond the basics to show off their skills, perhaps spending time on the user interface and adding animations, or writing test suites. Those people that went that little bit deeper and made the effort were easy to take forward to the hack day.

Here’s a little tip: we had some people sending compiled .jar files… we want to see your source code!

As for the challenge on the actual hack day itself — that was harder to choose. We wanted something more difficult than we’d used in previous years — we don’t actually expect you to finish a complete application, instead we want something challenging enough that requires planning, compromise, and teamwork.

We’re not just looking for technical ability, we’re more focused on how each group works as a team.

I think we did a good job with this hack day. We ran another one the next year with graduates from Code Clan, a 16-week intensive coding boot camp, and I think we weren’t as clear about our expectations — people were getting nervous that they weren’t close to finishing the project.

How do you keep track of all the applications, technical tests, and hack day invitations?

Laura: With great difficulty! Lots of Trello boards, with lots of columns.

I set up a dedicated email mailbox, which I was checking constantly. I’d do what I could to anonymise the applications, and then I’d move them to a Trello board. I must’ve checked that I had moved all the applications to the board four times, I was so paranoid I’d miss somebody and feel terrible!

I split the submissions out by programming language and had volunteers from across the department review them. After we worked out the 30 people we could invite to the hack day, we sent out all the invitation and decline emails. Although we weren’t able to provide feedback to everyone, we tried to be positive with our decline emails. People had done a good job, and we didn’t want to completely shut them down — there’s always the possibility to try again next year. We had some really great submissions from people that we simply didn’t have space for on the day.

What different approaches did you see from team mentors on the day?

Laura: We’d had a number of planning sessions before the hack day, and generally we agreed that mentors (who were all engineers) should act more like product owners, giving the team advice on what they’re building but not directly telling them how to do it.

But although we tried to step back a little and give the teams space, we also didn’t want them to get too stuck or head too far in the wrong direction. So we’d try to find a good balance and guide them back to what they were meant to be doing.

We had a great group this year. Everyone worked really well together, and every team had something cool to demo.

Grant was also colour-coordinated.

What happens after the hack day?

Laura: It’s back to the Trello boards and emails. We held the hack day on a Friday, so we wanted to meet on the Monday morning as soon as we could to discuss everyone’s teams, and talk about anyone who really stood out.

It’s very hard. Everyone was so good, we wound up having quite a few meetings. First we had to cut out half of the group, which was difficult enough, but then we had to bring it down a little bit further, which was like ‘how?’.

We needed to get down to six candidates out of 26 who attended the hack day, and it took some time. We desperately wanted to keep 10 of them, but still had to bring it down to six!

One piece of advice: take photos of everyone. It’s much easier to remember who everyone is.

Any advice for students applying for our next hack day?

Laura: Just do it! Get involved, it’s an amazing experience. We don’t mind what you submit, as long as you hand in something. We’ve had people submit pseudocode, but if it shows that you’ve thought about the task and want to get involved, you’ve got a chance.

A bit of enthusiasm on the day helps too! Just have fun with it, don’t worry if you feel like you don’t know anything. It’s a challenging situation, but you’ll learn a lot. Don’t sit there thinking, “it’s a hack day, they’re judging me.” Ultimately we want people on our team who clearly enjoy what they’re doing.

Thanks for your time!

Look out for future articles about our hack days, and we’ll post details when we open up submissions for our next event.

--

--