Spotify Unify Hackathon


Preface: Credits to Caroline Arkenson for all the photos she took during the event! Also, shoutout to Urbanears who sponsored the event!

Last weekend (May 16–17) I had the opportunity to participate in a hackathon organized by Spotify. The name of the hackathon was “Unify” and the focus was on learning, rather than competition.

The focus on learning is, in my opinion, what made this event stand out. My experience with hackathons is limited but the last one I was at was simply three time-limited tasks. Me and my friend tried to solve these tasks in a language we had barely any experience with. It didn’t go… very well. Instead of fighting the task, we fought the language (What the hell are runes in Go?). But we learned a lot.

Coming into Spotify Unify, I wasn’t too worried about my own skill set. Instead, I hoped to learn a lot over the weekend, in terms of coding but also in terms of Spotify culture. And I was not disappointed.

Participants of the hackathon. People in Spotify shirts are Spotify employees (with the addition of Lowe at the bottom left who forgot his shirt at home)

The first day started off with some “Get to know eachother” time. As the teams had been decided on beforehand (our team was named Team Netscape), we had already initiated some contact (and some even started discussing technologies in the Facebook chat we created) so we moved quickly to the idea generation part.

The theme of the hackathon was Music + Travel and some of ideas my group came up with included playing songs based on travelling speed (Hey, that sounds familiar? #NewSpotify), an identification song (Each user would have a song describing themselves and when they went to a hotel for example, a playlist would be generated by the people in the building) and more.

Eventually, we came up with the idea of including concerts in some way. The final idea was to have a user enter a location and they would receive a list of all artists having a concert at that location over a certain time period. So that you could decide on when you wanted to go based on what concerts were available.

Spotify API talk! Spotify provides a GREAT api!

The talks during the first day were “The Spotify API”, “Git — An introduction” and “Docker”. They were all good even though I knew the git stuff before (Hey, all you need to know is git push -f, right?). We didn’t end up using Docker (which as I understand it is a way to make sure everyone’s using the same version of, for example, nodejs) though but it definitely got me interesting in trying the tool out.

I could go on about what happened during the hacking time but it was mostly just that, hacking. The interesting part was the planning though. We were encouraged to use the “Spotify Way” which involves a board with stories. These stories always starts with “As a user, I want to be able to …” and in our case it could be “… enter a travel location”. For each story, there were tasks placed in To Do, In Progress and Done columns.

At the start, we focused heavily on the technical part and one of our first tasks was simply “nodejs”. Another was “autocomplete”. Not very intuitive, right? A good task (what did they call it, a ticket?) should be easily transferrable between people. Someone should easily be able to take one of the post-its and immediately understand what needs to be done. Not necessarily how it is to be done.

At the end of the first day, around 11pm, (no hacking over night, really isn’t needed when it’s not a competition so I approved of this) one of our coaches (Did I mention each team had three Spotify employees as coaches?) offered to give us a tour of the office. Of course, we couldn’t decline this offer!

It’s quite obvious that Spotify cares about their employees. Happy employees produces good products seems to be their motto. Judging from the Spotify employees I met over the weekend, it really seems to be the case. They were all very passionate about what they were doing.

The second day focused much more on finishing the product (or at least have a demo ready for the presentation at 4pm). We managed to get it all done but it was really down to the wire. We could hear Caroline (Spotify Street Team member together with Axel. They organized the event) count down from 30 while we were fixing the last merge conflict. We miiight have been going on after she reached zero (“Hey, Team Netscape, you know I can see you from here?”).

The presentation went well. We had some issues with the LastFM api (which we used to collect the concerts) and Karl did a splendid job wrestling the d3 library. All in all, I think the team delivered an extremely good product considering the time constraints.

To sum it up, what can be said about Spotify as a company? Being an attractive company to students of course allow you be selective when you hire junior engineers. You can afford to have high requirements as you will have plenty of options. As a result, you will have passionate employees who can’t wait to put their hands on the next problem. I really hope more companies take this approach.

Spotify Unify was an awesome event (Serious shout out to Caroline and Axel of the Spotify Street Team) and I can’t wait to finish my degree, so that I can apply for a position at Spotify.