Bastian Widmer ·
Feb 1, 2017 · 3 min read
As I type these lines here in Switzerland, my colleagues in the states aren’t yet awake. I’m keeping busy, working with customers and managing the on-call duties. Soon, the US team will be up and we’ll transition these duties.
Working distributed has its advantages, but it’s not for everyone. In this blog post, I’d like to give you some insight in how our team works together to ensure we keep the lights on.
To keep track of our many projects, we use JIRA. Each task, client request, or new feature is written down in a ticket. This process makes it easy to view ticket history, to reference in commits, and to pass between the team. It helps prevent committing code without context, which will come back to bite you sooner or later.
We use Slack with our clients, as the chat client helps us respond quickly to important issues and to provide one-on-one support. We also keep our team in sync with Slack. When I login in the morning, usually I see notes or a new task which were handed over to me by the US team. This easy handoff makes it much easier to get up to speed on what happened during my off hours.
Zoom has been quite a game changer for us. Zoom is a video conferencing tool that integrates with Slack and makes talking to team members so easy. We keep Zoom open during large site rollouts, which lets us keep in contact more easily than with chat alone. With cameras on, it’s almost like sitting with your colleagues in person.
We keep Zoom open during large site rollouts, which lets us keep in contact more easily than with chat alone.
You can also use video to see how your colleagues are really doing. Once, I was working late on a rollout with the US team and Michael took a look at my video feed and told me, “Hey, you look sleepy. Head to bed. We got the rest of the rollout covered.” They did. So I did.
We hold our daily standup via Zoom between my 5:30PM and 6:00PM (CET) . We use these check-ins to discuss what we’ve accomplished since the last time we talked and what’s planned. If there’s need to discuss something in detail we will take some time for that.
Typically our calls are 15–30 minutes.
We hold all-hands staff-meetings once a week, also using Zoom. We start with marketing, to review who owes our marketing coordinator the next blog post, and to schedule special efforts which require social media. Afterwards, we talk about new technology, discuss conferences, and talk proposals. We dive into open projects and set milestones. At the end, we talk human resources, vacation planning, and travel plans. All in all, this meeting lasts between 1–2 hours. Two hours might seem long, but that’s the longest stretch of facetime our team gets during the week.
Two hours might seem long, but that’s the longest stretch of facetime our team gets during the week.
Once a year, the team gathers together in person in one location. We do this so we can have longer discussions, work together in real life, and most importantly, have fun together. I really liked our team Retreat last year in Texas. We did a lot of cool team-building activities like kayaking, ate proper BBQ, and visited some great local breweries.
Being “on call” or “the person who gets woken up at night” isn’t something new to me. I’ve always worked in environments where things need to be online and available 24/7. The great thing about working at amazee.io is that with a distributed team, there is always someone available. And it doesn’t always have to be me!
During the team get-togethers, or when more than a few people are in the same/near time zone, we usually find ways to evenly split the week so everyone gets a night or two off. In general, though, we work hard to minimize events which need immediate attention. Because DevOps.
And there you have it. A brief overview on how we handle things here at amazee.io. Do you like those insights? Hit me up on Twitter @dasrecht or send your questions to @amazeeio if you want to know more details.
Does this sound like your ideal work environment? We’re hiring!