Skip to main content

On working remote

The last company I worked for, did have an office space, but the code was all on Github, infra on AWS, we tracked issues over Asana and more or less each person had at least one project they could call "their own" (I had a bunch of them ;-)). This worked pretty well. And it gave me a feeling that working remote would not be very different from this.

So when we started working on our own startup, we started with working from our homes. It looked great at first. I could now spend more time with Mom and could work at leisure. However, it is not as good as it looks like. At times it just feels you are busy without business, that you had been working, yet didn't achieve much. If you are evaluating working from home and are not sure of how to start, or you already do (then please review and add your views in comments) and feel like you were better off in the office, do read on. Remote work is great. But a physical office is better. So if you can, find yourself a co-working space and work out of it. If you want to take the plunge - read on.

Planning
A successful project is one which works and which gets delivered in time. And when you are working remote, it becomes all the more important to have a proper plan about what happens when to make sure things get delivered in stipulated time. There would be surprises, yes and there would be course-corrections too, and you do need to account for them in your plan, but overall you have to make sure that things follow the plan.
So - stage one is having a checklist - the overall list of tasks that your project constitutes of. For agile purists, these are supposed to be epics and user stories. For software projects, this largely means the list of features per release. You should go into finer details of the features - QA, deployment, load testing, etc. If you are working in a team - use Asana for this. I mostly work alone, so I use Trello (it's equally good and I like dragging and dropping cards). Make sure that features and sub-features are specified as granular as they can, a rough time estimate should be provided and there should be an assignee to it.

Communication
In a remote team, the importance of communication cannot be stressed enough. You are not in the same room as your team. You cannot simply walk to the next developer and ask him to help you when you are stuck. Also, when you spend a lot of time with your co-workers in a physical office, you ultimately bond really well and kind of start understanding their strengths and weaknesses. This is a bit missing in remote teams.
So - you cannot simply work in silos. You absolutely need to have a way to communicate what you are working on, how things are shaping up and if you have any comments or reservations. There has to be a virtual standup! I use Slack in general for all-things-chat. And all of my team meets up on Slack every morning (1000) before starting work. We have also used WhatsApp for this and it works great. But Slack offers integrations with our monitoring systems which is lovely.

Record Keeping
Make a record of everything. I use Google docs. You can use Atlassian Confluence (if you can afford to).

  • If it's an API project - define the endpoints, request and response structures before you start coding. Keep everyone in the team on same page. 
  • Every evening, before wrapping up, I write a couple of lines about what I did the whole day. And every once in a while I go through the notes as well. It tells me where I had been spending most of my time and what are the areas I need to improve in. You can improve only what you can measure.
  • All important discussions should be labelled and archived. Use Google docs. Or use a fancy tool. They should be archived and linked to corresponding Asana/Trello cards, so that you have a sense of what led to a decision
Talk. Talk. Talk
Make sure you talk to your team. Like - pick up the phone and call. Or Skype. It's great for team building. 

Follow schedule
Make time for your family. Make time for regular workout. While working remote, you generally tend to always be zoned and feel guilty of not being around or not doing enough. To overcome the guilt - make a record of your progress. Use Trello/Asana to list tasks and mark them done. Once you have overcomed the guilt - give yourself the much needed time. Your productivity is directly proportional to your physical and mental health. 

Change work locations
I am a social person and I love interacting with people. So working all alone from a home office can be daunting. So every once in a while, I do work out of cafe's, co-working spaces, friends' places - wherever I can find some human interaction.

Follow your passions
I have been working for corporate ever since I graduated. And that gave me little time for any open source work or attending meetups. That shall change now. I had been working on some cool projects which I plan to open source. Also, now that I don't have a physical office to go to, and all that I require to work is my Mac and internet, I plan to untertake some travel. A trip to Bhutan soon. I also plan to write more often.

So yeah - working remote can be tough. But it's fun in its own sweet ways. Jump the wagon if you can. It shall be worth the ride. 

In the next posts, I shall write about my tech stack and the way I handle product development, QA, deployment and monitoring. Stay tuned.


Comments

Post a Comment

Popular posts from this blog

Capture and compare stdout in python unit tests

A recent fan of TDD, I set out to write tests for whatever comes my way. And there was one feature where the code would print messages to the console. Now - I had tests written for the API but I could not get my head around ways to capture these messages in my unittests. After some searching and some stroke of genius, here's how I accomplished capturing stdout.

I was fat once! Now I run!

On Aug 12, 2013 I weighed 107 kg, which, for a 5'4'' guy, is 47 kg more than the Indian Army standards. But today, I weigh 82 kg, and I continue to lose a few pounds every week! At one point of time, running 100 metres would make me all tired and sweaty, but today I can easily run 10 km at a stretch! So this guide is for all those couch potatoes who have lost all hopes of getting a good body! I was at that stage myself. I know how it feels like. I know the bullshit that you keep telling yourself as to how you are not all that bad, and how the world should accept you the way you are! Let me tell you this straight! You are NOT special. You are just another lazy bum who wants things to change but does not want to endure any suffering! Or even worse, you are one of those who act on an impulse every few months. You hit the gym for a week and boom!, you lose it all again. The first step is to accept that you have a pathetic body and that this needs to change! Start Sm