Work in the time of the Corona
Author: Dr. Zunaid Kazi
Chief Technology Officer
AI / NLP / ML
(With apologies to Gabriel García Márquez and a certain brewing company)
Previously published on Medium.
As the sprint review ended, I rose up from my chair with a feeling of elation and a tad bit of smug self-satisfaction.
We were now not only on our fourth week of remote operations for the entire company, but this was also the first sprint of a new project that we had launched while remote.
From kick-off, to release planning, to backlog creation, to story writing, to sprint planning, to standups, to mid-sprint reviews and backlog refinement, to this sprint review and retrospective session, we successfully executed our fully agile and intensely collaborative development process in this new virtual world. We did not skip a beat, nor did we need to make any compromises to the spirit of who we are. No, we did not carry on exactly as we were before, but in a true agile fashion, we adapted and enhanced our processes so that we stayed true to the spirit of our development processes and standards.
We remained true to our goals — to develop on time, on target, and on budget.
We didn’t get here by accident.
Let’s turn the clock back to February of this year. The WHO had yet to declare it a pandemic, but the dark clouds were visible on the distant horizon. China had put Wuhan and surrounded areas under unprecedented lockdown and had started to put strict constraints on other cities and provinces. But it was also too late. The virus escaped the dragnet and the deadly contagion was now spreading in East Asia, Iran, and much of Europe.
The history of similar deadly contagions has taught us many lessons. As we were still a ways away from having a vaccination or effective treatment, it was apparent that social distancing and different types of lockdowns needed to be put in place everywhere the disease had spread. The curve has to be flattened to reduce pressure on healthcare systems and buy time until science has caught up with vaccines and treatments.
The contagion had yet to reach Bangladesh, but it was inevitable that it will. Even if Bangladesh did not enforce social distancing and lockdowns (it did), we still needed to consider the health and safety of our employees at our Dhaka Development Center where the vast majority of our developers work.
We quickly activated our Business Continuity Group (BCG) with a new mandate to deal with the pandemic crisis. Our BCG is a cross-functional team that we had constituted to plan for the prevention of and recovery from any number of disasters and contingencies that Infolytx may face. We had prepared for short disruptions earlier, but now we needed to look at prolonged and potentially indefinite remote operations.
As the team started working in full swing, the dark clouds got closer. The virus had reached Bangladesh’s shore. More and more expats were returning from countries where the contagion was in full sway.
Would we even have time to prepare? Will the trigger need to be pulled while we are planning? We made Plan A, Plan B, Plan C, and so on to prepare for different plausible scenarios.
As a tech company, we were better prepared than most for remote operations. We perform a major part of, if not all in certain cases, our development work on the cloud — our local infrastructure is used more as a backup and to reduce cloud costs — both compute and storage. We use collaboration and communication tools like G Suite® and Slack. We use JIRA® cloud for our agile product development processes and BitBucket® cloud for source control. We have automated CI/CD processes all running on the cloud. We use cloud-based software for code quality checks (SonarCloud®), project management (Trello® and GitScrum®), for finances (QuickBooks®), for recruiting (RecruiterBox®), etc. Only a few of our day to day operational software such as our IT helpdesk and HRM system is hosted on our local servers.
There were questions aplenty.
What do we need to have ready for indefinite remote operations? Do all our employees have the necessary bandwidth for internet access? Are employee laptops ready? Is our VPN server ready? Are all employees able to connect from home via our VPN? Are our local and cloud infrastructure secure? What if our local server goes down? What about our administrative staff? How will they operate remotely? Will Google Meet work for standups? Sprint Reviews & Retrospective? Sprint Planning? Is our CCTV appropriately maintained? How will our office plants be watered? How would we receive invoices and pay bills? How will we manage across our presence on three continents?
We asked many questions. We answered even more. We did the gap analysis, identified shortcomings, and fixed them.
We measured twice and cut once. We were thorough. We were ready.
Even as we planned, the gathering storm started to pick up strength. We felt we needed to pull the trigger soon. However, we were not just satisfied to have the gaps filled and plans put in place. We needed to ensure they worked in practice.
So on March 18th, we had an entire project team operate from home. The whole team — the software engineers, the test engineers, the DevOps engineers, and the PO. They went about their daily project cycle remotely. It all went remarkably well — in fact, so well, the team blew through their sprint targets like there was no tomorrow. The team came back the next day and debriefed the entire development center. This was a Thursday just before the weekend in Bangladesh.
The storm was getting stronger.
Over the weekend, we pulled the trigger. From Sunday onwards, the Infolytx Development Center in Dhaka was now working entirely remotely.
And it is working remarkably well. All aspects of our operations continue in full swing.
We have three projects being worked on in parallel. One is a mature project that had a major release during this time. One was initiated and launched remotely. And the other began its ideation while we are remote.
We have interviewed and hired new colleagues remotely. We have onboarded them and trained them remotely. We’ve had to bid farewell to some colleagues remotely.
It is not all work. We pride ourselves on working hard and playing hard. We pride ourselves in the strong bond we have amongst ourselves. Many a time, we would prefer to hang out at our Hopper Rec Room (named after Grace Hopper), playing Fussball, sharing snacks, or just plain shooting the breeze.
We have carried this Infolytx spirit to the virtual world too. We continue to hang out in our rec room — albeit our new Virtual Hopper Rec Room on Google Meet. We may not be able to share snacks, but we have shared pictures of what we have been cooking at home on Slack. We may not be making noise with our physical Foosball table, but we have played virtual Foosball. We have spent time shooting the breeze during happy hours. We have had fun playing Pictionary and other games online. Every day, we are working together to mitigate the sense of isolation and loneliness that can occur from the lack of real-time real face to face communication
We have continued to work hard and play hard. Separate yet together.
We have taken this challenge head-on, and we have thrived.
A few additional thoughts.
I had mentioned at the beginning that we have had to adapt and enhance our regular processes and protocols in this virtual world. It is not just sufficient to be able to replicate a real workplace onto a virtual space successfully. One of the lessons we have learned and are adapting to rapidly is that not every communication and collaboration needs to be synchronous. There is tremendous value in asynchronous communication and collaboration in this new normal.
That’s another article. Coming soon.