Providing Clarity: a hackathon team predicts the future of project planning
The making of "magic glue" between time tracking and capacity planning systems.
What do you do when a global pandemic shuts down all in-person professional gatherings? At SystemSeed, we decided to host our own fully-virtual conference, training week and hackathon: SeedCon 2020. Read all about it here.
This is the story of the winning team at the SeedCon 2020 hackathon: Blue Team. Behind the humble name lies a deceptively simple tool that ties together all of our project management tools … Clarity.
Our objectives
Every hackathon worth its salt has a whiteboard of objectives and resources to work with, so of course SeedCon 2020 provided its own SystemSeed-focused ones - check out all the hack goals below;
After some initial brainstorming, we at Blue Team narrowed our focus down to three goals we wanted to have a go at:
- Improve the use of data across the company to improve our offerings
- Enhance our internal company processes
- Create a prototype for our next product
A recurring issue that all our clients (and ourselves) were facing was that our time estimates across sprints weren’t always reflective of how much time things ended up taking. Additionally, it was difficult to then apply useful insights for scheduling future work.
We use three industry-standard tools for project backlogs, time tracking and staff allocation: Pivotal Tracker, Harvest, and Forecast, respectively. Why not come up with some middleware that could provide a bit more insight between them? This would fulfill our hackathon objectives nicely in one fell swoop.
Introducing Clarity
Clarity is a web service that runs automatically throughout the day in the background. It updates project metrics of both previous and future sprints drawing on real hours worked according to our time tracker, and future capacity planned.
This comes together to provide a more accurate forecast in our project management tool, Pivotal Tracker, as it relates Team Strength to hours logged and not just velocity in general.
We like to think of Clarity as “magic glue” - it exists as a transparent, fully autonomous entity that ties together internal services and functionality as if it forms an entire system itself.
Our implementation
To respect the gruelling pace of a 4-day hackathon, we had to make technology decisions quickly, prioritizing tools ideal for prototyping fast in a collaborative environment. As such, we chose to forego the traditional set up of a local integrated development environment with a git repository (excluding all our pet technologies like Drupal and Docker) and went for the cloud-based IDE Codesandbox, which provides a one-stop-shop to continuously deploy a working increment of a Javascript app as it’s being built.
Codesandbox allows for several devs to modify files at the same time (very much like Google Docs) and has simple integrations for GitHub, JS libraries and server settings such as third-party API keys. This devops shortcut was seriously beneficial in streamlining remote pair-programming and coordinating conflict-free feature delivery without needing to spend time standardizing on frameworks or toolchains.
We knew we essentially wanted a sole requestable endpoint that, given a project ID, could be periodically triggered to collect all necessary project information across Pivotal Tracker and its associated project in Harvest and Forecast, do some calculations, then update all relevant sprint data in Pivotal Tracker.
As such, we chose to go with the effective API Routes feature of NextJS. Since our agency is well versed in React, using NextJS as a framework came as a natural choice, so we had solid server functionality with nodeJS and the option of simple frontend integrations further down the line. Out-of-the-box with NextJS we also got seamless continuous integration with Vercel, an efficient test & live-site turnkey solution. To wrap things together and provide a robust scheduling service, we used cron-job to regularly call the Clarity endpoint.
We moved fast and over the space of 3 days of concentrated coding, we created a fully functional micro product that we could immediately scale to all our current projects in production. Functionality turned out to be simple, slick and efficient and we alleviated exactly the pain points we were hoping for. How many hackathon projects can claim that?
Hackathons are great because a bunch of people come together to make magic happen in a frantic whirlwind of code, inspiration and art. I had a blast joining SystemSeed to make a sweet little tool with impact!
It's (a)live!
Best part yet: Clarity is already in production and providing valuable insights for our clients. Overall, all of Blue Team (Kate, Anthony, Seba and Chris) thoroughly enjoyed the first-ever SeedCon and are hoping to have another one next year, even bigger and better! There’s something to be said for making time for a week of internal blue-sky creativity and teamwork.
We're making Clarity available as an open-source tool for others to benefit from, and if you're interested in giving it a try, drop us a line.
Don’t forget to check out what the other teams (Red and Yellow) were up to!