The main idea behind the project
The project was supposed to be tight cooperation between SolDevelo and Audere. Audere is a digital health non-profit organization that uses technology to deliver healthcare solutions worldwide. The organization based in Seattle uses machine learning, AI, and cloud-based services to fight against diseases and poverty in the world’s poorest regions. Most of Audere’s projects are funded by grants from the Bill and Melinda Gates Foundation.
The collaboration between Audere and SolDevelo started a few months ago. Audere developed a technology that allows health workers to administer diagnostic tests in a very simple way –the system was called “Health Tracker”. In order to further develop the project, Audere asked us to develop a simple addition – “Health Tracker Mobile App” to make the “Health Tracker” experience better and more accessible. As our collaboration turned out to be successful, Audere naturally asked us to join the “Health Tracker” team. The product was in the meantime renamed to “Navigator”, which indicates better the overall idea of the system as a guidance tool. The main idea was simple –to prevent the spread of COVID-19 across health care workers, who are at the highest risk of becoming sick right now. Navigator was supposed to be a cloud-based solution for symptom tracking and reporting, as well as communicating about health status and preventing workplace transmission. The project was already in progress when Audere decided to seek help outside, mostly because they needed to move forces into other business areas. In consequence, they found our services suitable for their needs.
Phases of the Navigator project
Phase 1 – Navigator 1.1
Audere reached out to us to get help with their current project – Navigator – which was about to be released soon. In order to satisfy Audere’s needs, we started looking for a senior JS developer to join the team. In the meantime, we created a dedicated team of a few people that were expected to fix small bugs and test the 1.1 version of Navigator. Audere Team used Kanban methodology by preference, without strict iterations. Because product to fight pandemic – almost by design – is ought to change rapidly – planning iterations up ahead was difficult for Audere and Kanban was the framework that worked best for them. This phase of the project was a great exchange of knowledge and experience for both teams. During Phase 1, our PM regularly asked Audere for feedback regarding the SolDevelo team. Even if there might have been some slight doubts about technical aspects the Audere team appreciated proactiveness and process-orientation.
The Audere team’s expectations were extremely high so both sides worked really hard to release the product of outstanding quality. Of course, some issues occurred, which is perfectly normal in IT projects. Because of COVID-19, the project was clearly developed in hurry. As we all know, that usually means, that there is no time to document your solutions, decisions, or ideas. In the end, the project was technically badly documented and it was not easy for our team to find our way in it without asking questions to the customer. There were some outdated documents in JIRA and Confluence and most of the things were discussed via different channels. It took some time to organize the data and the code but finally we managed to hammer an efficient workflow out. Unfortunately, in the middle of Phase 1, there were some opt-outs in the team but still, the project moved forward. In the end, Navigator 1.1 was released and Audere decided to work on Navigator 1.2 in cooperation with us.
Phase 2 – Navigator 1.2
The next phase of cooperation required us to hire additional employees – Senior Devs and QAs – so that we could put more emphasis on the quality and pace. The main goal of this phase was to bring new features and integrations to the system named “Health Pulse at Home“– it was supposed to deliver the COVID test kit directly and safely to a patient’s house so that they can test themselves and their family; then send the tests back and receive the results quickly. After the integration, Navigator 1.2 was supposed to be released. Our new team members brought processes to the next level and introduced many improvements – we managed to use the Scrum methodology to partially fix some of the issues and started planning our iterations with more details. Our team proposed new standards. Our PM was engaged in extracting requirements from the customer to make that a reality – it was difficult, and the customer really appreciated our new processes and detailed planning.
Also, Our team felt that we can propose newer solutions to manage the QA test suite – we’ve introduced Zephyr – which is not the best tool (here is a better proposition) but it seemed a better tool for the current job. Our PM was connecting with Audere a couple of times every week, to gather necessary requirements – to make sure that both sides understand and accept our roadmap and future sprint goals, so we are all on the same page Unfortunately, at the end of Phase 2, it turned out that “Health Pulse at Home” wasn’t finished so it’s impossible to implement the integration that was the main goal of this phase. Audere decided not to continue the project and Navigator 1.2 was implemented.
Conclusion and lesson learned from the Navigator development
The Navigator project was a very valuable lesson for the SolDevelo team. It showed us some of our weaknesses but also taught us many new things. We exchanged some technical and organizational knowledge with Audere and recognized many processes that could be easily improved. We drew many valuable conclusions we want to bring to life in our next projects. What have we learned from this particular case?
- Most importantly, it’s crucial to understand not only customer project goals, but customer organization or cooperation goals. Audere wanted us to help them work on Navigator because they wanted to spend more time on their other projects. At the same time though, Navigator was not documented, in a messy technical state with plenty of questions laying around in JIRA, assigned to Audere team to answer. With strict deadlines and no information to look from, it was necessary to ask questions to the customer – which in the end – enforced the Audere team to still invest their time into Navigator. Audere could obtain their business goal with cooperation with us – but not with the Navigator project, not in a specified short timeline, where the majority of product knowledge and dependencies were connected still with them.
- Proper documentation cannot be overvalued. It’s crucial for each and every IT project to manage communication clearly. Data tracking and proper task assigning are key in such projects. Professional project management tools should be used to handle tasks and documentation well – Slack is not enough. The most recommended ones are Jira or Confluence.
- Communication is crucial – even if there is a time difference, regular meetings are necessary to solve the problems on an ongoing basis.
- A strong QA service is a must. This is something we should work on constantly. Hiring a QAs with developing skills might be an option to consider.
- Development should always put quality first. When it comes to apps and integrations, speed takes second place. This is something we should always remember.
Do you want to get familiar with other projects we took part in? Here is the list of projects and apps we have helped to create.