Going Remote

One game company’s tools for a distributed workforce.

Ben
6 min readMar 16, 2020

With Social Distancing on everyone’s mind, I wanted to share what we did to quickly adapt to being a 100% telecommuting company.

Our studio, Present Creative have two offices, one in San Francisco, CA and one in Guadalajara, Mexico. Our headcount right now is 35 people. The official policy is that people can still go into the office if they need to, but we highly encourage people to stay home.

The switch to remote was way less painful than it could have been because we already had so many tasks and projects that spanned both offices. This meant we had some solutions in place that we could build upon.

I thought I’d share our tools and recommendations in case anyone is trying to quickly go remote.

Sharing Large File — Resilio Sync

We have artists in both offices so we try and keep all active and reference projects available using Resilio Sync. Our main file server is a mac in the SF office. It’s Raid Array has all the projects for the last few years on it and any active project on it has a Resilio Share Point keeping the SF File Server and the Mexico File Server in sync. While those two office machines hold the complete set of files, other users can quickly connect to see all the shared files and selectively sync just the ones they want.

We also have both Google Drive and Dropbox accounts but we don’t use them to share our working files as we found the maintenance and cost to be too much. One note, Dropbox came out with Smart Sync, if we were to be starting from scratch today, I might have chosen Dropbox, but Resilio has been great for us.

One additional note: our engineers are all already GitHub based, so they were already dialed in to keeping everything in the cloud.

Back Up Systems

We run Apple’s Time Machine for immediate back ups at multiple locations and Backblaze to make sure there is a complete redundant Back up. More often than not, if we have to retrieve a missing file we actually do it right from Resilio’s history. This is not as robust as Dropbox’s, but that is why we also have the other systems.

Business Docs — Google Suite

We are a Google Docs based company and use Gmail, Google Sheets, Google Docs, Google Slides, Google Calendar, GChat, and Google Drive constantly.

On the Google Drive level, we make sure everyone assigned to a project gets access to a master folder for that project. All estimates, initial project plans, Design Docs and reference gets put into that folder.

Task Management and Project Backbone — Asana

We are an Asana shop for task assignment, management and more. We were once a Jira shop, but we were never able to get our people to like JIRA enough to use it consistently. Asana has less features, but it’s quicker and snappier to use and to quickly jot down information. We then supplement some of Asana’s lack of features with the following customizations.

First, we accept that Asana is not a great place for writing docs so we use Google for that but we keep a single Asana task at the top of every project that is a list of links to all import current docs for the project. This is essentially our index for the project for all external docs and links for the playables.

Next, in Asana you can have 1 ticket live in more than one project so we massively take advantage of that to facilitate some of the reporting needed to see the big picture without physically being able to see the people making it happen. More below on that.

For 3rd party add-ons to Asana we use:

Instagantt — allows you to view the asana tasks across time in the form of a gantt chart. It is better than the built in asana one.

Everhour — for logging hours and for reports. Our staff has the option to log hours into individual tickets they are tasked with or, if they are having a day where they switch around too much they can log into a master Hours ticket so the time logging isn’t too burdensome.

Zapier which allows you to connect asana data to a number of other online systems so we can push data right from Asana to help drive some sales and finance decisions in their dashboards or spreadsheets.

In Asana you can group projects by “Teams” but we use this tool for the following conceptual groupings: Active Projects, Archives, Administrative, Sales and Marketing, and Internal IP. This separation really helps later when it comes to running searches. Every active project in studio gets its own Asana project.

Resource Management and Traffic Controlling — Asana and Instagantt.

Since our PMs and ADs can no longer see what people are up to, we knew we needed to create a quick dashboard to spot potential downtime of our resources. For this, we created an Asana project named Resource Calendar. We populate that project daily with shared tasks from a saved search of all incomplete tasks from any active projects currently assigned to any artist. This gives us a quick visibility into seeing how soon someone will be done with their tasks and which resources are soon to be free. We then also view this list as a Gantt chart to see when people should be complete with their tasks and need new ones.

Project Scheduling — Asana and Instagantt

We run a separate Asana project called Company Milestones that is used to give a big picture of what the studio is currently working on, what projects need to be scheduled, and helps us understand our resource commitments. Detail is the enemy here as it needs to show ~20 or so projects including current, live ops, and projects soon to enter production. We only enter project contractual milestones and “schedule blocks” which are essentially planned resources assigned to high level tasks. A naming scheme on the tickets allows us to quickly filter in Instagantt by resource type which helps with visibility.

Asana’s gantt chart tool is kind of a poor experience if you have lots of tasks so even though we try and keep this project simple, we really only use Instagantt to view it. Instagantt doesn’t not have any fancy resource leveling tools, so there is a lot of manual curation here. This gets worked on regularly but once a month it needs a total triage.

Instant Communication — Discord

We use Discord constantly. Discord is basically Slack but cheaper and originally for gamers. We have at least 1 discord channel per project. We encourage all PMs and ADs to use the role where they have access to all projects but then Mute the ones they aren’t on. We then assign artists and engineers just to the project channels they are active on.

Conclusion

Everyone is now up and running, people are doing tasks and work is moving forward at about the same speed, but there are things that will be missed by not co-locating.

How do we allow for camaraderie?

Currently we use Discord a lot, we have specific channels set up for some O.T. discussions like music, movies, etc… We are probably going to video chat a lot more too but there will still be a lot missed without the in passing conversations and shared lunches and coffee breaks.

How do we reap the benefits of the cross pollination of skill sets that happens only in office?

For now, I’m going to encourage more showing off of projects (work related or not), and tips and tricks but this is an area that will no doubt suffer without extra effort.

If you made it this far, thanks for reading this. Feel free to reach out if you want any more detail on how we are doing things or with any insights you have come across to be as successful as possible while remote.

Links:

Resilio Sync — https://www.resilio.com/

Backblaze — https://www.backblaze.com/backup-pricing.html

Google Drive — https://www.google.com/drive/

Asana — https://asana.com/premium

Instagantt — https://instagantt.com/features-asana-timeline-gantt

Everhour — https://everhour.com/pricing

Zapier — https://zapier.com/pricing

Discord — https://discordapp.com/

Github — https://github.com/pricing

--

--

Ben

Game Developer and father looking for someplace to write down ideas