Engineering focused pandemic habits to recycle for a more productive 2021



Sharing an insider look at our people and how we help ideas like yours turn into thriving digital businesses.

In March 2020, the workforces of pretty much every major city in the world found themselves working from home. The shift from workplace to home office was as swift as it was sharp – there was hardly any time to prepare for what would become the globe’s greatest remote working experiment.

Here at Cogent, we’ve been transitioning to a ‘remote-first’ culture for a while, with some of our most senior team members working from homes across different states of the country. However, our beloved office (The Treehouse) is still the home to some of the best parts of Cogent; it’s where we invite our clients to see exactly how we do things, and it’s a space that our people genuinely enjoy working from. 

Dan (pictured on the left) works remotely from his home in sunny Queensland, a short 2,800-ish kms from the Cogent office in Melbourne. 

As we start to transition out of this remote work experiment  having had nearly a full 12 months of results to investigate, we couldn’t help but ask ourselves which Engineering focused pandemic habits should we take with us into the new year, and which should we leave in 2020?

To answer, we’ve collated some of the top tips from our Engineering team with the hope that these insights will smooth our collective transition to a new ‘COVID normal’.

Psst…if you’re looking for some quality data on how remote work has impacted product teams across Australia and New Zealand then head here for our recently published report.

Seek out answers – Erin, Community Engineering Lead

One practice that we’ve picked up in 2020 is something we call “Slack Driven Development”. This is something we’ve learned at Square, where they’ve been doing it for a while, as part of their distributed working practices. Whenever you have a question about something, first, you search Slack. Then, if you don’t find an answer, you ask your question in a public Slack channel. If you want to ask a specific person, you can tag that person, but you do it out in the open. To support this ideal, Square has set up their Slack instance to automatically delete private messages after a short time, but to keep public messages forever.

The obvious upside to doing things this way is that other people can also benefit from your question. It’s often a huge relief to discover that someone else has had the same problem as you, that you’re not alone – and it’s even better when there’s an answer as well! This way of working has some advantages over traditional documentation too. Everyone knows to look in Slack, whereas documentation might be anywhere from in a git repository, Jira tickets, Confluence, or Notion. You’ve also got a better chance of getting answers to things that don’t usually make it into documentation – like problems with specific builds, versions, or combinations of apps. Finally, you get a bit more context. You know when the question was asked, so you know how up to date the answer is. There’s often some conversation around the issue, so you get a bit of extra information. Plus, now you know who else you can talk to about your problem. Of course, if you do ask them anything, you’ll do it in a public Slack channel!

Find your most productive time of day – Dean, Senior Developer 

Our dev team agreed to try and schedule meetings for the morning if possible. This resulted in more afternoon focus blocks and fewer  days that were broken up with small meetings.

Find tools to support collaboration – Jason, Developer

Since 2020 forced us all into our homes, working remotely made it challenging to collaborate or huddle. Without a whiteboard and a shared space, riffing off ideas and possible solutions was hard.  Getting feedback at the PR level was also a waste of time because adding lines and then deleting them was redundant.  So, using diagrams and a little upfront design was something I found to be helpful in connecting asynchronously.  There a few tools out there but these were ones I’ve played around with: 

Excalidraw – a simple diagram editor

App.Diagrams – a bit more complex with templates for sequence diagrams or infra architecture

Mermaid-js – a markdown type language for technical diagrams

Integrate for ease – Brett, Developer 

Zoom can seem like a chore to use – create a new meeting, find the invitation link, paste it into Slack so that other people can join… it can seem like a lot of manual work, especially if you do it a lot. Well, did you know that you can integrate zoom with Slack? The Zoom App for Slack can take away all the chore work, all you have to type is /zoom and it will create a meeting, and post a nice “Join” link in the channel you’re in, so all you (and anybody else) has to do is follow the link to your meeting!

Create space for connection – Alaa, Developer 

Without daily face-to-face communication, a lot of the activities that contributed indirectly to team building have diminished or even disappeared. So, a more proactive effort needs to be made to create space for those connections to be formed.

Some things that I’d found helpful include having regular 1-on-1 chats to help build trust between team members. Having a Ways of Working session early helps get an understanding of everyone’s values and how they prefer to work. You don’t need to create rigid rules from these sessions, rather let everyone express their thoughts and create a way forward that can evolve. 

We’ve also started scheduling in time to play online games as a team. We’ve had a go at and Codenames, and both are very easy to learn so they don’t add a mental overhead after a long day of work. 

There are many ways to keep up connection and build strong teams, whatever you do make sure the end goal is to form trust, create a sense of ownership and a safe and inclusive space for everyone to work.

See more pandemic habits to recycle from our Design and Product teams. 

Liked this post? Share it on…

Share on facebook
Share on twitter
Share on linkedin

Related posts

Paula Feleggakis

The importance of learning to read code

Felienne Hermans recently gave a marvellous talk which relieved one of my lingering insecurities almost immediately – she told me that it was OK to spend time reading code, and that it was in fact a necessary precursor to being able to write code effectively.

Read More
Navin Keswani

Data Engineering Principles

I’ve recently joined Cogent as a Lead Developer and before that, I worked on Data related systems as a Data Engineer and as an Architect. I’d like to bring some of the knowledge and experience from these domains to the Cogent community and so I thought that cross posting this article (that also appears on my personal blog), would be a good way to start.

Read More
Erin Zimmer

Hooks Tests Acting Up

A co-worker and I were writing tests for a hook we’d created and we kept running the same warning. So we decided to dig a little deeper and work out what was really going on. What resulted was a wild ride through the inner workings of hooks, testing utilities, and how asynchronous events are handled in JavaScript. If you’re curious too, then keep reading.

Read More