When you're in a remote working situation, the constant communication and whiteboard mock-ups that are normal to...
an office environment become complicated. Fortunately, there are cloud and Web tools available that can help with this issue. While there are many tools for each situation, these are the applications I've found helpful in my life as a remote development manager and programmer.
Flowdock for team collaboration
Flowdock is a Web application designed for collaboration that provides developers with a central location to communicate with other developers and check in on their work during the day. Flowdock was purchased in February 2013 by Rally Software, a Software as a Service application lifecycle management tool provider.
A chat room with extras, Flowdock integrates with other services, including trouble ticket management systems, wikis and even Twitter and RSS feeds. Flowdock is completely Web-accessible and available via several mobile applications. It allows you to provide that "water cooler" atmosphere, but the caveat is that the entire team has to use it daily for it to pay off.
There is no one super-tool that can manage all situations.
At Newstex, we use Flowdock to monitor development team members' activity, and we require them to remain logged into it during all billing hours. Flowdock helps me and my team members to do the following:
Keep a complete history of the project, reducing the time spent on documentation
Tag and search conversations, so one can easily go back in time and find out what was decided to do about that pesky little bug or feature request from a client
Integrate with Twitter to monitor social media to find people talking about the company and even to make replies directly to them or comment to your users first
Integrate with continuous integration and code repository systems to give all developers a single dashboard where they can see what's going on in the workplace
In short, for Newstex, Flowdock is essential to high visibility within the remote workforce.
Skype, Google Hangouts and VoIP for better conference calls
Skype and voice-over-IP (VoIP) are key communication tools for Newstex. We've traditionally used Skype, now owned by Microsoft, for all our voice calls, but recently have been switching to using VoIP services to provide us with a clearer calling experience.
To give each development team member parity, make sure your conversations feel like you're in the same room. Usually, traditional phones can't do that. For VoIP, we use OnSIP, a VoIP cloud service, and give everyone their own extension so they can be reached. VoIP's high-definition voice capabilities allow us to have easy-to-hear, one-to-one, ad hoc meetings and scheduled conference calls. While emails may work for detailing instructions, much more can be communicated in quick, real-time conversations with people. Think of these calls as a replacement for walking over to someone's office and having a quick chat about something you're working on.
Google Hangoutsallows you to view someone's face as you're in the meeting, and share documents via Google Docs and a participant's screen. Google Hangouts is now Newstex developers' preferred method of having meetings.
Hangouts gives development managers a small, quick glimpse into team members' work environment, and lets them make sure members aren't multitasking while the meeting is happening.
We also share documents via Google Apps for Business.
Chili, a wiki for ticket management
Chili is a ticket management system with a built-in wiki and plugins for integration with code-repository systems. It lets you manage your task lists for everyone across multiple projects and provide documentation. It integrates with email so you can continue to keep those people in the loop who use just email to manage their tasks, but provides a rich Web interface that you can use as well. This interface allows you to track time, produce reports and even plot Gantt charts for managing project timelines. With the tickets, you can set priorities and view your tasks, as well as the status of other workers. Ticket management is absolutely essential for keeping everyone on task, and the wiki is incredibly helpful for documenting services and procedures. What Chili is not, however, is a good client-facing ticket system.
More external trouble ticket tools
Web-based, external trouble (or support) ticket systems go a step further than email does by sending alerts that stand out from standard email messages. For example, I've found ZenDesk, FreshDesk, or GetSatisfaction useful for handling client-based tickets, and they provide a customer-facing support portal. Mostly, my team uses FreshDesk for communicating statuses to clients and bug reports to development and technical staff.
What about Chili? Chili is great for handling internal tasks, but is too complex for most customers to use easily. Chili doesn't provide the simple interface that support ticket services do. We use both FreshDesk and Chili so we can keep all our customers in FreshDesk and move to Chili tickets for actionable items.
ODesk for remote developer management
Recently, I began using the team management features of Redwood City, Calif.-based oDesk for monitoring work time and reviewing remote developers' and other project team members' work in progress. They can use the Web-based oDesk client to log their time and automatically upload screenshot every few minutes. Being able to look at their progress online has been a big time-saver, particularly by preventing rework and keeping everyone on task.
Team management isn't oDesk's primary business; online staffing is. Combine oDesk's team management tools with its automated payment methods and large database of remote workers, and I've got a one-stop-shop for finding new workers and managing them.
Scouting for remote development and management tools
I've listed a scant few of the many online tools available for working and managing development teams remotely. The key criteria for choosing any such tool are that it be accessible anywhere your workers are, and that it be simple to use. The tools I use might not work for everyone, as they help solve a specific issue I've encountered but other people might not have. In my opinion, there is no one super-tool that can manage all situations -- at least, not that I've found. My approach is finding an individual tool for each problem that I have.