Solace at uOttaHack 2019

Kevin Lidstone
Solace PubSub+
Published in
6 min readMar 4, 2019

The uOttaHack hackathon took place on February 9th and 10th. I was lucky enough to be sent by Solace to create a challenge and attend the event with my colleagues. This was my first time attending a hackathon so I was excited to learn what they’re all about. This post covers some of the things I learned. If you’re planning on participating in a hackathon as a sponsor or participant, hopefully some of my tips below will help you out.

How to sponsor a hackathon

As a sponsor, our main goal was to bring exposure to our company while giving back to the local developer community many of us grew up in. The hackathon was a huge success in this regard and my teammates and I had a blast being a part of it. Here’s my takeaway from the experience.

Choose a great challenge

Having a fun and engaging challenge is the most important thing. The challenge needs to be something achievable for the majority of students if you want to get mass participation. It needs to be general enough that it can be worked into a variety of different types of applications.

Our challenge was based on our product the PubSub+ message broker. Hackers were tasked with coming up with applications that used the publish/subscribe and queueing capabilities of our product via our software-as-a-service website, Solace PubSub+ Cloud.

Get an awesome prize

I believe a lot of the teams come into the competition already with a good idea of what they want to build. This could be problematic since our challenge wasn’t issued until the day before the competition so I believe that must’ve been a deterrent to students to try our challenge given it may not have fit their initial vision. In order to ensure participation in your challenge the most surefire way is to put up an awesome prize.

We purchased 2 Nintendo Switches for the winning team in our competition. Without a prize that would catch the student’s attention, I don’t think we would’ve had the participation numbers that we ended up getting.

VP of Solace Cloud Tony Zoght with the winners of the Solace hack challenge

Test your challenge in the production environment

Unfortunately, the weekend didn’t go off without a hitch. After issuing our challenge and setting up teams with accounts to Solace Cloud, we quickly learned that things were not going to go as planned.

In order to connect an application to our cloud service, we require access to ports in the ranges of 20000–24000. The Ottawa U wifi had disallowed outgoing connections on non-standard ports. This meant that none of the cloud services we had provided to the teams were accessible from the school unless you were willing to setup a hotspot through your mobile data or figure out how to proxy things through a VPN.

In hindsight, this was something we should’ve anticipated as we’ve run into this problem many times in customer environments and commonly in training workshops. I had hoped we could’ve gotten more assistance from the IT of the school, but they were not involved in the event.

Next time, I’ll be sure to co-ordinate the technical logistics with the organizers before assuming things would be working. The saving grace for us was we had the technical experts required at the event to come up with an alternative solution for the teams in a few hours. Next time, we’ll go into the event knowing that our challenge will work in the production environment.

Plan to be your own support

After working through the technical challenge of getting teams to connect to our cloud service, our journey wasn’t over. We put on a workshop to try and teach the students how to use our client APIs and get started in their language of choice to help get them started. The workshop helped, but many teams had many more questions and issues to debug. We do have a comprehensive set of tutorials for our APIs, but that doesn’t replace the value of talking to a domain expert in real time.

We didn’t plan to support teams well into the night so a few of us put in some extra hours at the school and later in the evening from home that we hadn’t planned. Next time, we’ll be sure to plan to support the teams better and let our teammates know and plan for the onslaught of questions.

How to win the competition

If you’re thinking about participating in your first hackathon, or looking to make the jump from participant to champion, try out these tips to see if they can up your game.

Start with a minimum viable product, iterate on top of that

It doesn’t need to be said, but if your product doesn’t work, you’re not going to win. It’s easy to say your product needs to work but how can you do it? I’ve never experienced an overnight hackathon like this but I’ve built plenty of software projects on a deadline and I know from experience that working software is built on the principles of failing fast and iterating.

To fail fast, you need to start coding immediately. If you take a waterfall style approach to planning your hack and spend the first 1/4 of your time planning your idea and drawing diagrams, you’re setting yourself up for a do-or-die implementation phase. Take the pressure off by prototyping your ideas out quickly with a focus to get something working in the first few hours.

Once you have something working, you’ll have a much better idea of how much more you can add onto your hack and plan from there. Plan short iterations of features you can add on. When you get stuck, find shortcuts and to keep yourself unblocked. Prioritize the things that will add the most value for the time they will take and code those first.

Let services do the heavy lifting

I honestly don’t like this part of hackathons but it’s undeniable that the winning entries heavily leverage pre-existing libraries and software. The winning entry typically takes a great idea and implements it by stitching together a bunch of technologies like an image recognition engine, an API from a website like Twitter, or a hardware component like a robot. It’s a lot easier to impress riding on the backs of giants. If you want to win, make sure you know what APIs you’ll be leveraging and ideally have experience with them before you participate.

Don’t change the world, have fun

I found that a lot of teams focussed on big ideas that tried to solve real world problems. I found some of these hacks to be boring. My favourite entries were the ones who took a simple idea and made it work. They had fun with their idea and didn’t try and take themselves too seriously. If you’re more focussed on having fun then trying to build something serious, it shows in your presentation and it gives your demo an energy that judges will respond well to.

How to turn your hackathon experience into a job offer

One of the primary reasons Solace foots the bill to participate in events like this is to recruit talent. Here are some tips to follow if you want to impress the employers.

Start a conversation

We had an army of people manning the booth. The majority of the volunteers from Solace were the managers and leaders involved in hiring co-ops. I was surprised to see how little action we had at our booth. The truth is, summer co-op positions are filled so I understand that most people likely weren’t looking at the time. Still, start the dialogue and make an impression. As a hiring manager, I do remember the outstanding conversations I have at events like this and even if I’m not hiring at the moment, down the line when I see your resume in a pile, it will standout.

Follow up with the employers

To ensure you are remembered, follow up with the employers. Get their linked in, add them to your network, thank them for talking to you and ask them to keep you in mind if any positions come up in the future that you might be a potential fit for. A little networking can go a long way.

Exude passion and energy

Being technically amazing is obviously the best way to get yourself a job offer. I’ll assume you’re already doing everything you can on that front. To stand out from the rest, showing that you’re extremely passionate about software development is the key. Get excited when the employers are telling you what they do. Say things like, “I always wanted to work with that technology” or “I love coding in that framework”. Smile and just be genuinely excited about the prospect of challenging yourself by working with the employer. These are the types of conversations I remember and these are the types of people I want to work with.

Summary

Whether you’re an employee or a participant, taking part in a hackathon is an awesome experience. At Solace, we learned a lot from this event and look forward to participating in others like it in the future.

--

--