In April, we ran our first ever pro-bono Hack Day with 28 keen volunteers from Softwire development teams. It was such a successful and rewarding experience that we think all companies should try it out, and in this article, I share our learnings and advice to get you started.
What’s a hack day ?
The event gives developers the opportunity to volunteer to build software for a range of clients in the charity sector and tech-for-good space, in a set period of time. In our event, there were a great number of real client projects that offered the team access to a wide variety of work using different technologies.
Some clients already had a platform or prototype that developers could immediately build onto, while other clients were at a very early stage, which meant our Softwire team could help them lay foundations for their future tech estate. The overwhelming feedback from the developers was that it was really exciting to work with clients on projects that were at varying degrees of technical maturity.
As digital capability is central to successful operations for organisations, giving clients pro-bono help and input to progress them past their current stage was highly valued, with one client saying the work they received was “worth its weight in gold!”
What benefits are there for your development team?
Running a charity hack day reaps rewards that benefit your developers short-term and long-term:
- Short-term, participants enjoyed trying something new and fresh – In my opinion, one of the things that makes a developer so great at their job is not being pigeonholed as one type of developer. By taking part in a hack day, developers can ‘get their hands dirty’ with an unfamiliar technology or stack, or temporarily branch out of programming altogether to focus on client consulting.
- Long-term, our participants reported learning skills that they’ll carry with them into their day jobs – Taking part in a hack day teaches developers to gather requirements extremely quickly, and to approach the client’s problem with an open mind and ask open questions. It gives them experience building prototypes or MVPs in a rapid, agile way – whether that’s wireframes or a full coded prototype – and it builds expertise across the company community as a whole, allowing knowledge sharing across future projects as well.
But the best benefit for any developer is being able to first-hand improve charity and tech-for-good work, which could make a real difference to the lives of many. It’s such a great feeling to be part of that bigger goal and purpose!
Five tips to get you started with your own hack day
With all that in mind, I would recommend to any business to set up a hack day event. Here’s my five recommendations to help make your event a success for your developers and clients:
1. Finding clients to help can start locally
If you have existing partner relationships with local or national charities, reaching out to them to see if there are any tech-for-good projects happening is an easy and effective way to strengthen your partnerships and give back.
But even if you don’t have those relationships in place, there are some amazing platforms out there to build new ones. To supplement the projects we gained from our partners, we worked with the awesome team at Matchable that put us in touch with a number of charities and non-profit organisations who needed technical help.
In addition, you can share the event within your own internal networks. By just putting the word out within the Softwire network, we gathered a number of connections with organisations that we had never worked with, that were seeking support for their tech needs.
2. Ask for volunteer developers more than once
To get willing volunteers is the next stage that can be tricky. Luckily, the tech-for-good cause is a great motivator for developers and you’ll usually find willing participants because of it. However, having a wide variety of projects on offer as a draw can also get people on board.
Hearing about the event regularly on internal communication channels was a helpful reminder for some of our participants. Being a developer myself, I can relate to the idea of getting so involved in my work that I might miss an internal message, so seeing it come up over a few dates means I’m more likely to see it than if the event news is only sent out once.
3. There’s no substitute for in-person
The future of work is hybrid, and our hackers took part remotely and in-person across our offices in London and Cambridge. But one of the key learnings we found was that seamless team communication is key to an effective hack day, and the easiest way to make that happen is to get everyone in the same room.
That doesn’t just go for the developers – if you can get your clients along as well, that massively increases how much you’re able to get done. One developer said it was great to have the clients in the office with us, because it made the team more effective and really brought the charity’s mission to the forefront of what they were building.
4. Use existing expertise…
The most effective way for tech communities to volunteer for tech-for-good causes is for developers to use the skills they have. That means avoiding low-value activities, like data cleaning, and focussing on what each participant can offer uniquely. For our developers, that might be setting up a CI pipeline or writing a lightweight, yet powerful, algorithm to power the core of their business logic. Allowing the developers to focus on areas they’re passionate about is also a powerful motivator for volunteering.
There’s a great culture of code review and technical quality here at Softwire, where all code that makes it to production is scrutinised for bugs, cleanliness, efficiency, security, accessibility and other non-functional requirements. In the hack day, this standard remained – For two of our hack day projects, it meant rolling our sleeves up and embarking on a thorough code review of the client’s entire existing estate.
Also, sometimes, producing a prioritised list of action areas for their existing developer volunteers to focus on, with all the risks and benefits, is more valuable than producing new features that require testing and maintenance.
5. …but don’t be afraid to branch out
Sometimes, when you have a hammer that says “PROGRAMMING” on it, everything looks like a nail – but often the best solution to the client’s problem isn’t to jump straight in to writing bespoke software. Several of the teams on the day realised quickly that OTS software would suit their needs better than something bespoke, so the hack day was spent scoping OTS solutions and how to integrate them into the client’s system.
For others, upon discussing the project brief with the client, it became clear that what they really needed was a “discovery” phase where requirements were gathered in an open way and consolidated into a plan. We followed the GOV.UK discovery method, which we’ve used many times with regular clients to great success, and even just a morning workshop can be enough to totally change the direction of a project into something which better serves user needs.
Get more information on how we can help you
For companies interested in helping their developers progress, a hack day is a fun and productive tech-for-good event. For clients, there will be projects that come up where you’re not sure what is the best way forward and taking part in a hack day is a great risk-free opportunity.