The way you communicate both within a team and with customers, plays an extremely important role in the project’s success. The better communication processes are established , the more likely you’ll meet the client’s expectations and he’ll be satisfied with the results. The main question is how to build really effective communication on a daily basis.
Nowadays there are many services which can help you organize the communication process. And every day new ones emerge on the market. It’s difficult to evaluate the tool until you use it or someone gives you tips. We’d like to share our own experience with you.
“By failing to prepare, you are preparing to fail” said Benjamin Franklin. We completely agree. That’s why we devote enough time and resources to determining the correct requirements. We schedule iteration planning meetings where the requirements are defined and analyzed. Thereafter developers offer a cost-efficient solution with proper estimates. It’s important for every team member to take part in these meetings in order to get a clear understanding of his scope of work and the expected results.
We use a Pivotal Tracker to make our planning organized. It’s a project management tool where the whole picture of the development process is displayed. In the very beginning, new stories are created in the Backlog. After certain tasks are selected for development, they are moved to the Current and the ones which are not in priority can be moved to the Icebox. We form a new iteration with a definite time frame, estimate every task and assign it to a developer. If a story is not clear, or the client has additional requirements, there is a possibility for discussion inside every task. All comments (both ours and customer’s) connected to a specific feature are gathered in one place so that everyone could look through them and understand the requirements properly. It’s very convenient to track the work in Pivotal. You can always see in the interface whether an indicated task is started, finished or delivered. That allows one not to distract developers from work each time you want to determine real-time information about progress.
Every day starts with a stand-up meeting where everybody shares their accomplishments for the previous day, plans for the upcoming day and issues that block further work. We discuss these blockers and try to resolve them immediately during the meeting. If an issue requires some time to deal with it, it’s assigned to the person who is aware of how to figure it out. What’s new and seems difficult for one person can be a minute task for a more experienced one. We always lend each other a helping hand and it significantly saves hours which could be spent on googling in behalf of the project development.
Short meeting notes with assigned tasks are shared with all team members right after a standup. It is difficult to keep everything in mind. That’s why a list of should-be-done tasks is a good organizer and helps not to forget about important things to do.
For a while we’ve been looking for a good tool to write down meeting notes. Willing to have several services combined we decided to try out Do, a young and promising startup. Do caught our attention by comprehensible interface, nice design and ease in use. It’s not feature-rich service but it has all we need — timeline with events, possibility to assign tasks and track follow-ups, share meeting notes with all participants and see its history. Furthermore it has an integration with Google Calendar which is a big advantage for us, as we do not have to do double work and duplicate events.
We carefully plan our work, accurately write code and scrupulously check it. Still, we always look for ways to make our work better and more effective. Once every two weeks we discuss the progress at the retrospective meeting. We speak about everything, starting from accuracy of specifying requirements and making estimates up to the right time to notify the client about deploy to production. This analysis allows us to see our strengths and weaknesses and convert weaknesses into strengths.
Trello helps us a lot with this activity. With its different lists and cards, retrospectives have become a pleasant process. There are three lists: what we did well during past two weeks, what puzzles us and what can be improved. Before the meeting, all team members add cards with description to each column. The big plus is that we can see who created the card, so it’s easy to take into account the opinion or understand the needs of every person.
We were using combination of Skype and Email for daily communication. When we got acquainted with Slack this situation changed. You might be surprised, but now 80% of our communications are done through Slack. What’s more, I cannot imagine how we could work effectively without this awesome tool. Slack has many features which make our life easier. It provides real-time communication between teammates in private and in groups. You can say this functionality is the same as Skype. But that is just the tip of the iceberg. The most interesting is going to be revealed further in the article.
What we love in Slack:
#1 Integration with external services
We work with different programs, such as Github, Pivotal Tracker, Google Drive, Trello etc. More than half of our emails were from these tools. It was sometimes difficult to find needed email in such a flow. Slack brings all notifications into one place. Integrations can be set up to post to Slack as events occur in outside services. That makes easier tracking all actions — whether it is adding a new task in Pivotal Tracker or closing pull requests in GitHub — and allows us to react faster to any issues.
#2 Open channels
For projects/topics we create channels which are open for every team member who wants to join . Channels increase transparency by sharing knowledge with everyone. Messages, files, comments, integration with tools are gathered in channels. All internal discussions related to projects take place there. During conversations specific people can be mentioned, thereafter they get a notification and understand that their participation is required.
#3 Private groups
Besides open channels, we use private groups in Slack. Only invited people see the content of these groups. We use them to communicate with clients in a daily work. It’s very convenient to be able to discuss issues with customers in a real time and get quick feedback.
#4 Advanced search
There is a possibility to add Word docs, Google Docs, PDFs, Photoshop files, commit messages to Slack. No matter how your file is uploaded –directly or through integrations — you can search inside anything you add to Slack.
#5 Have an update wherever you are
What a big plus it is that slack will notify you of new activity on your mobile, desktop or via email. That’s very convenient, especially for the team members that are moving around a lot.
As you can see from above, Slack is a great tool. However we use traditional emails and Skype too. While real time communication with clients is done in Slack, daily/weekly/iteration reports are sent to customer via email. We also use email project groups to send an important update to all team members.
Stand-ups, retrospectives, release dates and many other events are planned in Google Calendar. When any changes occur, participants are notified via email in advance, accordingly everyone can organize own schedule properly.
Having combined all these tools we have an established communication system that shows positive results. All the information is in the right places and everyone knows where to find it. This allows us to spare more time for work and make it much more productive.