Tools that we use for communication and project management
We are a small team of 6 busy people, geographically distributed (=working remotely) and we want to be as lean as possible (=not pay for products/services unless we really need it). How do we manage our work and communicate effectively?
Email is a prerequisite for many services. First I thought — we just need Google Apps for Work. But do we really have to pay $5/user/month? Looks like we don’t (at this stage).
We have a domain hosted at Google Domains and they have a really easy administration for redirecting emails to another inbox. Our team members actually prefer this — they don’t want yet another inbox, they want all emails at one place (and filtered how they want). So we can now receive email@example.com emails for free.
How about sending emails? That’s more tricky. Normally, Gmail’s SMTP server cannot be used to send messages from another address. But there is a workaround, if you use two-step authentication for your personal account. This security matter is something everyone in our team should be familiar with anyway so it works well for us.
I can’t really imagine working without Google Docs and Sheets. The sharing model fosters fast collaboration. We have all company documents in one shared Drive folder. But what about Google Accounts? We need Google Apps for Work again, right?
It took me some time to realize it, but you don’t actually need @gmail.com address for creating a Google Account. You can create a free Google account with any address. You get all Google services, without Gmail. But we solved that in previous step. The downside is that we don’t get the company administration features like removing access to everything when somebody leaves the company. But that’s OK for now — I can always remove access for each service. And we can switch to Google Apps for Work later.
Slack has become a new leader among communication tools for tech companies. We don’t fall behind and we love it. It has all the advanced features of IRC without the hassle of configuring it. It fosters fast and transparent communication — everyone can see what other people are doing/discussing without being notified about unimportant stuff. The real power of Slack is in the integrations — more on that later.
Do we need to pay $8/user/month? Wow, that’s even more pricey than Google Apps. The free version doesn’t archive old messages and allows only 10 integrations. We don’t care too much about archiving — we use Slack to discuss current state, we store all long-term information in a structured way in our Drive folder. The number of integrations might be limiting in the future, we haven’t hit the limit yet though.
Hangouts and standups
We use Hangouts video calls for weekly standups. I think it’s needed to maintain periodicity and talk to each other at least once a week. On the other hand I always disliked Scrum’s daily standups. In my experience a standup never ended with “3 quick questions”. It usually resulted into discussion how to do things between a few people while others were waiting. When that happens every day, it’s frustrating. Once a week it’s OK and healthy :)
Hangouts are also great for quick calls if it would take too long to explain something over chat. Just type /hangout into the Slack channel!
Trello is great for task management and quick visual overview of the project status. Plus I love how real-time it all is. We have Trello boards for Android/iOS/Windows/Web/Backend and Non-dev stuff. All of those are integrated with respective Slack channels so you can directly see that somebody created a Trello card while you are having a conversation in that channel.
Trello might get messy if we got too many bug reports, we want custom bug workflows etc. Then we might consider something more robust like Jira. But I think we should focus on keeping small amount of tasks instead of burying tasks in robust tools.
Calendar and hackathons
We have a shared Google Calendar with all company events. There is a Slack integration (of course) which notifies us about creation of the event and reminds us 10 mins before the start of the event in the #general Slack channel. Everyone can see all events on all of their devices which is great.
Our company is organized for remote work, but sometimes it’s necessary to meet in person. Some work like brainstorming the concepts and UI of the new app is done better in one room. Plus sometimes we need to drink beer together :) We held our first hackathon two weeks ago — we signed contracts, held our first board meeting, had some beers and came up with great concepts and UI for brand new Settle Up the next day in our flat. We are planning to organise a similar event every two months. So no, we don’t need an office at this stage.
We all love Github, but we would like to postpone paying $25/month. Thus, we chose BitBucket for code hosting, because it’s free for private repos up to 5 team members — and we are 5 developers so far. Bitbucket has about the same number of integrations as GitHub. Every commit is notified on Slack and it’s built by GreenHouseCI.
We have tested several hosted continuous integration servers and GreenHouseCI was the easiest to configure for Android & iOS apps. And you can do unlimited builds for 2 apps in the free plan. So now GreenHouse builds every commit and posts APK/IPA file to Slack. Our tester can take it from there.
That’s all of the tools we use for effective communication and project management. They are all modern, integrated with each other and work well for us. And we don’t have to pay a dime for it! We might start paying for something as we grow, but it’s great that you can work in a small team today with no cost and no own IT infrastructure.