I used to be university educator and enterprise developer. You know, the one who only uses tools from Microsoft, visits a lot of meetings and whose main communication tool is face-to-face communication. Then I have radically changed my working environment – I started working from home and now my office is few centimeters from my bed. Which is really great! But it was a challenge for me, at first, to get started with working remotely. So, if you are in quite a similar situation and you need to collaborate with distributed team – here is the list of tools which I was taught to use by my new team (a lot of thanks for engineering team at StrategicVision).
- Slack/Skype/Hangouts. These tools cover messaging starting from specialized team communication in Slack to pretty generic communication in Hangouts. Very basic use of these tools is free. I use Skype most of the time and its pretty fine for textual and video communication. There is also an ability to share screens. One can also do video conference if needed. It all just works.
- GitHub. This thing is just awesome! I have never seen such a great thing to work collaboratively with code! You have all the history of your code, issues tracking, wiki pages and integrations with every continuous integration system you like. To see how powerful it is, just look how I can point you to exact line in my code here. I can drop such a link in Skype conversation and discuss code with my buddy.
- TeamViewer. Extremely useful tool for doing pair programming or pair debugging or pair solving of some issues. All participators in the conference can share their screens and control computers of their buddies as if they were sitting next to each other. You can give it a try right now, it’s free for non-commercial use (and no, they don’t pay me for advertisement :-)).
- Puush. Great tool for sharing pictures. During discussions with your buddies, you can just press key combination which Puush understands and it will instantly take a screenshot, upload it to the web and copy link to it to your clipboard. All you have to do then is to paste this link to Skype and you are done! Your colleague can see the screenshot. It takes only a second! Unfortunately if you don’t pay for the service they keep the picture on their servers no longer than one month, therefore, I can’t show you an example of my screenshot. But for all other purposes it’s more than enough!
- Workflowy. Want to take notes during planning sprint, meeting, stand-up and share them with your peers? Than Workflowy is for you. It is ridiculously simple and powerful tool, which helps you construct bullet points with any depth and focus on whatever sections you want. For example, here I will share with you the list of tools, which I mention in this article. And guess what? You never have to press save button! It just does it for you automatically.
- Kanbanflow. If you have distributed team and want to visualize some kind of agile board, where you have something like stickers with tasks on them which you can move from “To Do” column to “Done” column, then Kanbanflow is for you. You can create a board which everybody in the distributed team seeing it online and observing changes. And even more than that, Kanbanflow supports Pomodoro technique, which I am a big fun of. But see it yourself:
- Google Docs. Are you still using Microsoft Word and PowerPoint for doing presentations? Very well, these are really great tools! But if for any reason you don’t want to pay for these products, install and maintain them (like I do, I love wen everything is in the browser and I don’t have to bother about software maintenance anymore), just use Google Docs. I tell you, during 6 months of my remote work it was no moment when I wanted my MS Office stuff back. I was completely satisfied with what they had to offer. I did presentations to students, wrote test cases in word documents (and shared them in docx format, btw) even done some statistics in spreadsheets (turned out it supports many math and statistics functions).
- Google Drive. Of course, when you work together you want to share files with colleagues. You also probably want to have your files available everywhere. No problems! Google Drive sometimes seems to me as some kind online machine where I can create folders, store files and do whatever I want with these files using Google Docs. For me, who started working with computers in 2000 using Win 95 it is just marvelous service. And for free!
- ZoomIt is a little utility by Mark Russinovich which can do screen zoom and annotation during technical presentations that include application demonstrations. ZoomIt runs unobtrusively in the tray and activates with customizable hotkeys to zoom in on an area of the screen, move around while zoomed, and draw on the zoomed image. Although very useful even during off-line presentations, having it on during on-line discussions with your peers makes things less painful for people, especially if you have a screen with a large resolution.
All of mentioned above tools can be replaced with some analog, for example, Google Drive with MS OneDrive, Google Docs with MS Office Online, Workflowy with Trello and so on. I just write here about tools I use and which I can prove work just fine for everyday programmer’s work. If you start your remote work – use this set of tools as kickoff toolset and then find some analog if you want to. Enjoy your freedom!