Rapid front-end development that scales well depends on solid design systems. We'll explore why design systems are important, how they help and one I've love to use: Bulma CSS framework.
How to survive remote working
Whether you're brand new to remote working, unsure if it's the right fit for you, or simply curious about how us seasoned remoties (can I coin this phrase??) operate, I've got some tips, tricks and advice based on my experiences in working in a globally distributed software development team.
So, you've landed your dream role as a remote developer, getting to work wholly or at least largely from the comfort of your own home (or somewhere of your choosing). Finally, you can burn the suits of 'normal' office oppression and get away from the office politics, the smells of other people's lunches, and, more importantly, be so super focused and productive that you'll somehow BraveStarr Strength of the Bear your tasks, performing 10x better than your commuting brethren.
But what does this mean in reality?
Although many companies are missing out on talent by fear of remote working, there are more positions becoming available for remote developers. But it's not for everyone and having a few pointers on how to maximise your remote experience will help you make the leap smoothly.
Let's get started!
Some background on my situation
I've been a developer for over 15 years and I've worked in a number of environments such as single offices (that was a sweet deal), horrendous cattle markets called open offices, and much more pleasant co-working spaces.
For the past year, however, I've been a fully remote developer, working from my lovely home study and making some clever things in React. Before that, I was a business owner, predominantly working in a small, two-man office, but varying my workspace from week to week.
I love the freedom and autonomy that remote working provides and it's certainly not without its challenges, but I wouldn't change it for the world.
1. Routine is everything
One of the biggest positives of remote working can also be one of the biggest problems: lack of routine. In a 'normal' office scenario, you arrive at a fixed time, leave at a fixed time, and most likely have other various activities happen on schedule: whether it's tea breaks, lunches, certain meetings.
In the remote world, a lot of the typical day to day routine is lost or somewhat fragmented. Often, because of the nature of remote work and synonymity with distributed teams in different timezones, start and end times to the working day are a lot looser, if not removed altogether. Meetings can be a lot more informal and less regular, instead happening on an 'as we need' basis, and you are most likely in charge of your own working schedule or hours.
All this freedom and flexibility is great, but it can be a nightmare for a lot of people (like me) who thrive with slightly more restriction and organisation in the mix.
Getting yourself into a regular routine is important and helpful for many reasons. It can help your focus by training your brain that certain times mean certain things happen. It also helps with other things you might not think about, such as helping your co-workers understand when you're available, or letting people at home know when you're doing what.
For me, I like to work earlier in the day and finish earlier, but generally at the same times. I like to have lunch at roughly the same time each day and portion my working time into blocks, fitting in any regular meetings that I know about in advance (e.g. daily stand up)
My typical daily routine looks like this:
- 07:45-08:00 - start work
- 08:00 - 08:15 - catch up and admin (e.g. check blog articles, read any company updates, answer emails, update kanban board and tasks, etc.)
- 08:15 - 10:00 - working on the current tasks I'm assigned on the board
- 10:00 - 10:15 - daily stand up meeting
- 10:15 - 11:30/12:00 - working on assigned tasks
- 11:30/12:00 - lunch (30-45 mins, depending on the day)
- 12:45 - 15:00 - working on assigned tasks
- 15:00 - 15:15 - afternoon break, cuppa, snack, etc.
- 15:15 - 16:30 - finishing work tasks, planning for tomorrow
2. Communication is everything else
Whilst you're not alone in remote work, you aren't physically present, so it's important to have a system or means to stay in touch with your colleagues, managers, and everyone else you need to have contact with.
And you will need to get in touch with others at some point. Whether it's sharing an update, office banter in the #bants channel on Slack, or code reviews, having a solid system in place allows work to happen and everyone to keep on the same page.
Some of the burden of good communication lays with your company. Fundamentally, there needs to be a set of policies and a culture that outlines what platforms are available to connect with your fellow developers, what statuses mean what (available, busy, out of office, etc.), and how meetings are conducted.
Where I work, we have a very open door policy where we can reach out to whomever, whenever, and for whatever. This works well and isn't abused. Knowing when a bit of bants is appropriate and when people need to be left to work is something that happens over time, but no different than in a real life environment.
Once of the niceties of remote communication is its asynchronous nature. Tools such as Slack or MS Teams have a familiar chatroom approach where you can share your thoughts, and expect a reply at some point in the future. For some, this can feel a little alien and many will miss the physical presence of another human, but for the rest of us it allows for large periods of uninterrupted concentration and progression of tasks.
3. Healthy habits keep you going
Similar to routine, it's all too easy for something as simple as looking after yourself to start slipping. After all, there might not be a gym near your home, but there was one near your old office. You can only usually eat what you take to the office, but your home is filled with tasty temptations.
For me, it's been critical to keep an eye on what I eat during the day and weave in some sort of exercise to my daily routine. I like to alternate between yoga and an outdoors walk around my village (on that, outdoor time is really great for the mental state!).
Simple actions can work well too, such as regular stands away from your desk. Even just spending 2-3 minutes getting up, walking to the next room and taking a look out of your window can help boost your productivity, get you through your developers block, and save your sanity.
4. Make your workspace your own
Ok, so it is your desk in your home, but I can't tell you how much it helps to really make an effort with your workspace.
It doesn't matter if you have the luxury of a separate office or merely a corner of a bedroom, find out what makes your working space a happy one and make it happen.
Being divided from your office-shackled counterparts, you have the luxury of being able to have free reign over the music you play, the decor on the walls and the pictures you hang up (no matter how offensive they might be).
5. Supplement whatever's missing from 'the norm'
By this, I mean whatever comforts you're used to in a 'normal' office environment, you may need to add in to your working day or supplement elsewhere.
For example, if you're a social person who revels in the company of others, working from home is going to remove that part of your day. Of course, you'll be using some sort of office chat system, but it's not quite the same. So, you'll need to replace this somehow; a regular catch at the corner shop, chatting with locals over lunch in the pub, or just visiting friends more often.
6. Learn how your productivity works and adapt
As we've mentioned, with remote working, you're very much separated from the constraints of a 'typical' office environment. This includes working to someone else's schedule. Of course, you have to be flexible too, but now that you can choose when and how you work, you can really dig in and discover what makes your productivity tick.
For example, I've always been a real early bird, with my most productive periods being before 14:00-15:00. Being able to start work promptly in the morning, without a draining, time-zapping commute means that I can get the best out of myself and put out some great work.
It's up to you to discover what makes you most productive and use the freedom of remote working to harness that power.
Variety is helpful for productivity
Something that's helped me greatly has been varying my workspace. For the most part, I work in my home office just off the lounge. But, depending on household life, I might work in another room for a change, or I might travel to my parent's house for some different scenery.
It doesn't have to be every week or a series of constant changes, but by varying where you work or the space you work in regularly, you can get a real boost to your productivity.
7. Separate home and work
Another key tip and one that people commonly struggle with is the separation of work and home life. After all, when your home is your work, it can be difficult to switch off.
If you have a separate office, such as I do, then this is a little easier: when I'm in the office, I'm working. When I leave, I'm at home.
However, I didn't start this way. Initially, my 'office' was in my bedroom. In this case, I found it handy to do three things:
- Finish work at roughly the same time each day
- End the day by planning for the next
- Leaving work at the 'office'
Sure, sometimes I push on past the end of the day to finish off an almost completed task, or certainly if I've started a little later, but generally I like to end the day at the same time. This helps to mentally 'finish' the working day, even though you're in the same place.
By planning tomorrow's work at the end of today, you can help avoid that nagging feeling of something being unfinished and the temptation to 'just have 15 more minutes' working on a problem. Occasionally it can be a simple as just updating the task board with progress, but it can also be writing some notes for your future self on tricky points that you need to tackle tomorrow.
Finally, once you've accomplished the first two, it's easier to 'leave work at the office' because you naturally have a sense of closure on the working day. This doesn't mean you can't talk to your partner about your day or think about work things, but it just cuts off the work part of your home life and starts the home part back up.
8. Remember, 'remote' ≠ 'alone'
This is a biggie: you might be remote, but you need to remember that you are not alone. There are a team of other people out there that you work with. You should be reaching out to them regularly in order to enrich your working life and stay connected to your colleagues.
You should never feel like you're on your own and isolated. That said, it's important to be aware that it's all to easy for this exact thing to happen if you spend too long without communicating with colleagues.
Over to you
Are you a remote worker? What tips and tricks do you have? What keeps you going when you're struggling to get motivated? Let us know in the comments.