While it’s true that working from home poses a challenge to most working adults, there’s one group that requires that extra level of focus and they truly suffer from this transition: developers.
Kids, pets or other creatures (your robotic vacuum cleaner? we’re not judging!) tend to crave attention at the most crucial coding points. And even if you’re living solo, there are a lot of other challenges such as communication, context switching, technical issues, and so forth to keep devs from being productive when working from home.
So I asked some of Incredibuild’s customers to share their challenges in working from home, and more importantly, how they solve them. Here’s what they told me:
The challenge: distractions/context switching
The two most painful things developers must face are distractions and context switching caused by other members of the household. According to a CodeProject survey discussed in a DeveloperMedia article, “the overwhelming majority (49.31%) of respondents listed distractions from their roommates, spouses, or children as the biggest challenge they face while working from home.” You can see the rest of the survey results below, and some of them are certainly… interesting (I’m looking at you, beer fridge), but for now, let’s focus on the number one issue. So, what can developers do to handle this challenge? How can they maintain focus and meet their tight deadlines?
First of all, it’s not just the headphones; it’s what the headphones are playing that counts. Headphones are an obvious must, but one of our customers shared that his major distraction-eliminator is dedicated concentration playlists. YouTube has dozens of them, and they provide much needed meditative focus.
Now that you’re in the zone, it’s time to delve into the root of the problem: making sure all those daily tasks that created context switching even in a regular routine, are no longer an issue. If you could just turn that 1-hour build to a 15-minute build, that’s a lot of time left for focusing on what we do best: coding. What I mean is finding tools that reduce the time that time-consuming tasks take. Take Incredibuild, for example (just off the top of my head, no self-promotion here ?). You can reduce builds, tests, and other tasks times by up to 90%. This is valuable even while working from the office, but even more valuable when working from home and context switching becomes even more of a hassle than it ever did.
Image source: DeveloperMedia
The challenge: tech issues
Each developer has their own issues rooted in their home environment infrastructure, but they all come down tech difficulties that prevent you from reaching the same amount of productivity you had in the office. There are many variables. How slow is the internet connection? Are you connected via VPN? Remote desktop? The cloud? What about the various tools and software you’re using – do they support all connections? Do you have sufficient processing power to run a build and test as you like?
Here, as well, our customers are using Incredibuild to handle all connections: VPN, remote desktop, home mini-grid, etc., and offer you all the processing power you need to get the job done. Find the right infrastructure that suits you best and make sure the tools you have chosen to work with can support that infrastructure and even compensate for some of its vulnerabilities.
The challenge: no distinction between work and home
This issue is not solely a developers’ issue, but rather a universal one (much like the Coronavirus itself).
It’s only natural that when you work from home, the “home” and “work” parts of your life start to blend, and it becomes hard to find the right balance.
Since coding requires focus, it’s important that ‘home’ time remains that way, to allow us to vent a little bit.
One of our customers told us that he established working hours, communicated those working hours with his colleagues, and designated a specific space in his home for work. Once he leaves that work area, he never looks back (until the next day, that is). A working routine is essential, it will keep you sane, and your code will look better!
The challenge: communication difficulties
A lot of developers complain about the fact that even with all the collaboration tools out there – and there are many (Slack and GitHub for example) – nothing beats a little F2F time to solve those small issues, bugs, and glitches that remote meetings or chats just don’t manage to solve, or take forever to do so.
We all use Zoom and other video conferencing tools for daily scheduled meetings without lending too much thought to their psychological advantages. Actually seeing the face of the person in front of you can enhance the communication level between you much more than an email or a phone call; it’s just human nature. If you can, try holding video calls with your colleagues when there’s an issue to fix, instead of opting for a more anonymous method of communication.
The silver lining – working from home as a devel0per
Working from home is an opportunity for you as a developer to learn how to establish the infrastructure that is right for you, maximize the tools that support that infrastructure (hint, Incredibuild – link to download in the right upper corner), and manage your productivity by optimizing your focus time and finding ways to avoid context switching. True, you might not have chosen to be in this situation, but you can surely learn from it and become a better developer because. Once you get back to the office (very soon, fingers crossed), you’ll find that you’ve become acquainted with additional tools and tactics to get you through the day focused and productive.