New: Since COVID-19 many work from home. The typical team events are postponed or canceled. With ‘The Remote Mob Programming Experience’ we offer a unique form of team event which works working from home and makes a lot of fun!
An opinionated guide to effectively work from home.
We’ve written this guide because we got asked the same questions (e.g., Which microphone should I get? or What is this white box on your desk?) over and over again, and we wanted to have a place where we could direct all those people to.
Instead of providing yet another long list of tools, this guide contains a short, curated selection of things that worked well for us working from home. Everything is our own and honest opinion, and reflects our preferences, dislikes, and priorities. But as we all know, everybody is different. So follow this guide with caution. Still, we do hope you can find one or two things that improves your work from home experience!
Nobody wants to wear a headset all day. Sadly, common integrated headset-free solutions in phones and notebooks let every listener suffer from bad audio and lots of noise. To have happy listeners instead, get a podcaster microphone with directed antenna and noise-cancelling capabilities. We recommend the Blue Yeti ($129). Set it to cardioid mode.
Don’t use a headset. If you really have to, get the Jabra Evolve 65 ($180), or any other of the Jabra Evolve family that fits your wearing preferences. For occasional calls the Apple AirPods are just fine.
Make sure to activate your webcam and look directly to each other in video conferences. For that, the webcam must be on eye-level (or slightly above). This rules out your laptop’s built-in camera as it’s mounted too low. Instead, get an external webcam and mount in on top of your primary screen. 4K or 60 FPS are not required. We use a Logitech C920 ($79).
Corona-Update: As the Logitech C920 and C922 webcams are currently out-of-stock everywhere: The camera model itself is not super important. Any webcam should work. And in the meantime it is totally fine to use your laptop’s built-in camera. Anyway, try to look directly to each other in video conferences.
Don’t work primarily on your notebook monitor for ergonomic reasons and because of issues with the webcam position. Get an external 27” 4K display. 4K resolution is required to display others shared screens sharply, especially when scaled. No ultra-wide or 5K – it’s not worth it because it makes displaying your shared screen hard! We would love to see a monitor with a webcam built-in, good speakers, and Thunderbolt 3 in a sleek design. Unfortunately none of currently available monitors matches these requirements. We have the EIZO EV2785 ($1000), but any 4K IPS display should be fine.
2-Factor Authentication should be enabled everywhere nowadays, especially for business accounts. But entering the OTP code from Google Authenticator is still a hassle. So, we prefer to use the YubiKey 5C Nano ($60) whenever possible, giving consent by a simple touch.
A flaky connection is annoying for everyone. For a reliable and fast connection, use a Cat 7 ethernet cable to connect your computer to your router. If you have to resort to Wi-Fi, invest, for the sake of your team, in high quality access points. We recommend Ubiquiti Unifi and Amplifi.
Use zoom.us for video conferences and screen sharing. It’s the most mature, stable, and less CPU-intense video conferencing software that we know – and is fast on Linux and mobile devices as well. We can’t live without the moveable video stream gallery overlay anymore, especially while screen sharing. Make sure to enable global shortcuts for mute and start/stop screen sharing.
Update: We are well aware of Zoom’s privacy and security issues. Zoom was not playing nicely, but at least shows efforts in transparent communication, and we also consider the current media coverage to be excessive. Balancing the risks and benefits, we still recommend Zoom for its superior performance. For sensitive video conferences, however, consider Whereby (Small rooms use Peer-to-Peer WebRTC) or hosting your own Jitsi Meet server.
A virtual team room is a video conference that’s always available – you can come and go anytime. Zoom doesn’t support the concept of a virtual team room directly, but you can get close by configuring your personal meetings in a specific way. We use such a virtual team room all the time to work together, for plannings and meetings, and for small talk. Make sure that your team room is for your team only, and any meetings with other teams happen in separate, dedicated virtual meeting rooms.
More and more companies introduce some form of channel-based chat system like Slack or Microsoft Teams. The distance of remote work increases the barrier for informal communication. It makes it easy for people to get in touch with each other. We recommend getting a public team channel in Slack or Microsoft Teams to make it easy for other teams to get in touch with you. We recommend getting a public team channel to make it easy for other teams to get in touch with you. Think of this channel as a public API for questions and requests to your team. Have a private team channel as well, and keep it private so it can become a safe space to discuss sensitive subjects.
A big problem when working from home is that managers no longer see their teams working. Doubts on their productivity may arise, regardless of whether these doubts are justified or are merely the result of a gut feeling. The problem lies in the inherent feeling of loosing control. One way to counteract is to keep your manager up to date through regular insights, similiar to Basecamp Check-Ins. We highly recommend doing this in a written form asynchronously at the end of the business day – and make them publicly available within the company. We basically do exactly this: before shutting our computers down at the end of the day, we write a short post about what is newsworthy in a public team insights channel. This insight can be about a finished feature, about yesterday’s refactoring that paid off, or about a complaint about a pointless meeting (example).
We love Remote Mob Programming. The whole team works together on the same thing, at the same time, in the same virtual space. Regardless of the term programming, these methods are suitable for any kind of knowledge work. By collaborating so intensely in our virtual team room we solve the typical home office issue of social isolation for us. And with mob programming, we’re being super productive in terms of time-to-market. One thing that we happily use everyday is the tool mob, which enables us to make smooth handovers via git.
Tuple (macOS only) seems very promising for remote pairing. It’s the self-declared successor of the late screenhero. However, screen, being developed by the original developer of screenhero, has made it clear that it wants to become the successor of screenhero as well. We’ll try both, and report to you who’ll win the game of the screenhero throne afterall.
Advices on good desks and office chairs are quite rare, and probably subject to individual preferences and budget. However, we would like to give some tips here, as well: We like the height-adjustable timeless and robust USM Haller Desk ($1000), and the more affordable IKEA BEKANT ($199), which is also available as sit-stand desk ($479). But more important for your long-term health is your chair – you’ll sit on it 8 hours every working day. We recommend the ergonomic, fully customizable, and very beautiful Vitra Pacific Chair ($900).
You’d be suprised how quickly the oxygen in a small room runs low, affecting your mental capacity. The solution is simple: open your windows. Thing is, your body realizes bad air quality too late – your mental capacity is already reduced at that point. So be proactive, and measure the co2 levels in your room to know when to open your windows so your brain stays happy. We recommend a simple CO2 sensor with a warning light when to open your windows or the more elegent Awair Element. Tinkerers can also connect a CO2 sensor module to a Raspberry Pi.
We miss to scribble and discuss together on a physical whiteboard. There is no good alternative for distributed teams. What comes next is Miro on an iPad with an Apple Pencil to draw. One shares the Miro board in a video conference, so that everyone puts their focus on the same section of the board.
Our colleagues at INNOQ who give remote trainings and online workshops use a green screen to have a clean background and soft lights for perfect illumination. This comes from professional video game streaming, a pair of Elgato Key Light Air and the Elgato Green Screen is the way to go. We already ordered them to evaluate and will give feedback here. Stay tuned!
Remote: Office Not Required, by David Heinemeier Hansson and Jason Fried is a great starting point for ideas on making the switch to remote. It covers a wide range of topics, including recruiting and managing remote teams.
Remote Guide, by Gitlab is a complete and very extensive collection on how to build a fully remote company, touching every aspect of that. It’s basically the playbook of Gitlab itself, and is constantly improved from their own learnings.
Both guides strongly promote an asynchronous way of distributed work, while we prefer a synchronous whole team approach. So, find out what works best for you and your team.
Simon Harrer is a senior consultant at INNOQ. Sharing knowledge is his passion, be it through books, articles, talks, or even tweets. From his experience as a lecturer at the University of Bamberg, Harrer has co-authored the best-selling book Java by Comparison that helps Java beginners to write cleaner code through before/after comparisons. When he is not building microservices on Kubernetes, you might see him moderating event storming workshops or helping young PhD students to document their research prototypes with arc42.
Jochen Christ is a senior consultant at INNOQ. He is an expert for Java technologies and cloud architectures. He is interested in technical leadership, remote working methods, and badminton. Jochen is a speaker at international conferences and enjoys participating in local meetups.