The coronavirus crisis of 2020 has surprised most of the world with its virulency and the havoc it has caused in the economy. Countries have moved fast to save companies and jobs. In Estonia, the Estonian Unemployment Insurance Fund (EUIF) was tasked with protecting Estonia from mass redundancies and a massive number of unemployed workers. Helmes was among four EUIF partners who were given a challenging mission with a short deadline to develop a system to pay out wage subsidies to tens of thousands of people. Helmes`s task was to create an application form and x-road controls in EUIF`s self-service portal. Other partners (Avalanche Laboratory and Fujitsu) solved the (automatic) application proceedings and payment solutions. It turned into be a success story – and a rapid one.
It usually takes about three to four months to develop this kind of system. Typically, we analyze the problem and make sure we think of every aspect and detail, then we take time to develop it and finally test the result for flaws and bugs. Instead, we were able to get the project MVP online in 23 calendar days. That seems like a wild stretch of our standard process, but using Helmes’ quick-start model, we managed to accomplish it. How did we achieve it?
The following gives some pointers for when you need to do a software development project successfully but in a hurry.
You need an efficient team
Helmes has had a successful partnership with the Unemployment Insurance Fund for more than 10 years. So, our team has members with institutional and project knowledge who have been working on their systems and website for a great deal of time. There are 15 of us in all – a team leader, an architect, analysts, eight developers, and two testers. You need to know your client very well to succeed in the fast-paced development of a system.
Operate simultaneously on all fronts
Helmes got the assignment on the 13th of March, the day after the Estonian government declared a national emergency. The initial description of the task was relatively short. Still, by lunchtime on Monday, we had an idea of how to implement it and presented it to the Unemployment Insurance Fund. We used our quick-start model from the get-go and decided to do a new solution instead of building upon an existing platform. We usually analyze the assignment for days, and after going through every detail and possibility, you make a prototype to show to your client.
Using our quick-start model, we work on different processes at once.
In this case, our prototype was built while we were still working on the analysis phase.
Doing different parts of the project at the same time saves you a lot of time, but it also brings with it many risks. Our senior developer did a lot of the groundwork to turn our idea into a working prototype. If the Unemployment Insurance Fund had rejected our initial concept, then our plan might have temporarily fallen apart. However, based on our prior working relationship, we were pretty sure there would be no fundamental changes. Our experience with our client paid dividends, and the crisis made sure that all of us were doing everything we could to put our efforts into moving in the right direction.
Develop the Minimum viable product (MVP)
We had two things in place that were absolutely crucial when developing an MVP that works without problems:
- EUIF`s strong prioritizing skills that helped everyone to focus on MVP
- A world-class analyst from our side, who converted the priorities into tasks
After achieving this “Minimum Viable Product,” you can add functionalities to make it more clean and user-friendly – as we did during the whole of April.
With about 10 hours of work every day plus one weekend, we managed to develop the MVP for this solution by the 5th of April, only 23 calendar days from the first look at the assignment; it went live on that day. Usually, testing takes about two weeks, but in this case, it was done in roughly four days. Helmes and the Unemployment Insurance Fund did the testing simultaneously.
After going live, we had a system where companies could already apply for a wage subsidy, and payments could be dispersed (payments and proceeding of the application were developed by two other EUIF-s partners). Then we started to add on that and bring new functionalities, like, for example, making it possible for an employer to import Excel files with information with up to 1,000 employees at a time. Our last additions and alterations were made at the end of May.
Communication between partners is everything
Communication in a coordinated effort is what decides if you are going to be is a success in a project. There were four other partners involved besides Helmes and the Estonian Unemployment Insurance Fund.
What was different from our usual cooperation was that we needed to use technological tools to communicate. With most countries in Europe in lockdown over the virus, physical meetings were out, so we took our discussions entirely online. We talked many times a day. It saved us valuable time, especially crucial at the start when there are non-stop discussions on what the solution should include.
Be aware of the risks and drawbacks
Helmes, with the help of its partners, managed to achieve a solution to a significant problem more rapidly than it seemed possible at the outset. The system worked excellently, and entrepreneurs gave it good feedback. The Unemployment Insurance Fund was praised for the solution. So, we showed that the fast development of a complicated system is achievable, as long as you are aware of the risks and drawbacks that the quick development of a project entails.
- The first risk is that there is no time to analyze all the aspects of a project. We need to make sure that we do not miss any essential concepts or details. For example, if some other functionality is required in the future, it may be a complex addition because we developed a form of path dependency based on our initial analysis and design actions. A client may get the desired result early, but there is a good chance that without proper research, we have a faulty system that needs to be scrapped in the near term.
- All parties also need to understand that, making changes to the initial concept is excluded. Otherwise, the project will have to start over, and development will take even more time. Rapid development may end up costing more than the standard way of doing it in the long run; you may still need another solution.
But in a time of crisis when every minute counts, Helmes’ work with the Estonian Unemployment Insurance Fund and our partners demonstrates, it can be accomplished, helping people that need it most.
By the end of May 2020, the solution has helped around 130 000 employees already.