In mkdev newsleter I once asked our subscribers if they are interested in reading the article about the services we use to create mkdev. We got 3 billion affirmative answers in total. The interest was so great so I decided not only to write the article, but also publish it on the website. As it appears, many people are excited to hear about the services which our small remote team uses for the online education startup. I'll also mention how much we spend on them (spoiler alert, not so much, actually).
Some aspects to consider when you choose services for project management
We used to be very stupid. We're not as wise as a Solomon nowadays too, but it was absolutely horrible back in the days. We used Trello. And Slack. And Telegram. And Asana. And e-mail. And lots of other stuff. Using so many services was so awful. You never know where the things are and it's impossible keep track of what's done and by whom.
Eventually we got wiser. We realized that the less tools we use, the less the cognitive load is. It's easier for the team to understand what's going on in the project. It's easier to find the document, the conversation or the person that you need. So we decided that it's better to pick one instrument that solves maximum amount of problems at a time, than the instruments that solve just one problem each. And if the instrument doesn't solve several problems, it has to be in close coordination with other ones.
Our newsletter is the main communication channel with our clients, potential clients and people who love free books about self-education and fascinating letters we send several times a month. More than that, we provide some special offers in our newsletter on a regular basis. Those offers might be published somewhere else too, but with a huge delay. Our mailing list reached five thousand subscribers and continues to advance. It's a significant part of mkdev.
The Internet abounds with e-mail marketing services. There are some leaders among them, which exist longer than I actually work in the development sphere. Those leaders have solutions for absolutely any email-marketing problem. One of such leaders is Mailchimp and we use it. I chose it in the beginning, as it allowed to work with thousands of subscribers for free, even though with almost zero functionality. And then I just continued to use Mailchimp because it's cool.
It's cool as it allows automating long email chains with lots of conditions. There's also A/B testing of emails, a bunch of integrations, and all kinds of nice reports and analytics of all the lists and campaigns. There were no such situations for now, when we wanted to have some feature and couldn't find it in Mailchimp. It's very likely that we use only one third of the features that the service can offer. So if we ever need anything, we'll definitely be able to find it.
We do not cheap out on Mailchimp as the newsletter is very important for mkdev. If we did, it might become a problem, as Mailchimp has the weirdest price formation. They can increase the price by $5 for every 500 subscribers, then don't do anything for next 2 or 3 thousand, then start increasing it again by $5 for every 500. So now we pay $75 a month in total for Mailchimp.
Email: Google Apps for Work
We use Google Apps for Work Google Apps for Work for email addresses like firstname.lastname@example.org. We pay $5 a month for every new account. We use it mostly for conversations, but sometimes for documents too (so they won't be confused with personal ones). Talking about Google Apps for Work is boring. We spend $10 a month on it.
Customer support system: Intercom
We communicate a lot with clients, potential partners and people who just want to talk to us. It's essential as it's the direct communication channel with all of you and we want to answer all the questions, help to choose a mentor suitable for you personally, or send a funny gif. There are three persons working as support agents: Alexei (our main support manager), Leonid (mkdev co-founder) and me (me).
For such an important communication channel we've chosen Intercom. We used GrooveHQ before, and it have fit our needs for a pretty long time. But then we tried Intercom and realised how much we suffer with GrooveHQ and which features we miss by using it.
Intercom consists of 3 differen products, and one of them is dedicated to customer support. Unlike previous system, Intercom is more like a live chat. You can write as a message right now using widget in bottom right of your screen - we respond pretty fast.
We've got a startup rate from Intercom, so we pay just 42$ a month. So far we use only Respond module, but we plan to integrate other two as well.
By the way, a while back I wrote a Ruby gem for GrooveHQ API. And wrote a nice series of articles about it Development of GrooveHQ Ruby Gem.
Code and CI: Gitlab
Let's take a break and talk about some practical things, specifically about where we host our code and test it. We host and test it on Gitlab.com. I love Gitlab as it tries to be a solid consistent platform for software developing. Microsoft has service like that, Apple has does as well. Ordinary people should have it too.
There's simple and convenient CI integrated in Gitlab. It's just a trifle in comparison with Jenkins, but it's good enough for testing and deploying the apps. At least we don't have to use something like Travis CI additionally.
For the little ones: CI is Continuous Integration. It's when every code change is checked and tested automatically, so the whole team knows that the app is not crashed and still works after all the changes.
We work with Merge Requests and review every change in all cases. In total it's about 30-40 MRs every month. Sometimes I do something in master branch, because I can (but rather rarely, even though my code is privileged, it goes through MRs too).
For the little ones: Merge Request (or Pull Request, if we're talking about GitHub.com) is a set of separate changes in the code (e.g. new feature code, which needs to be checked and then released.
We use Gitlab Runner for CI. We don't use Shared Runners, because why?
Gitlab costs us nothing. We love it, even though it is chronically down during deployment (and they mention beforehand that they're deploying and everything will be okay) and its team cannot work with its infrastructure and deletes all the data at their own will.
Exception handling: Rollbar
When there's some bug on mkdev.me, we get an alert in Rollbar. It's an awesome service, even if it might be changed with some other one easily. Its free plan is so great that we have never paid for the service. This fact makes it even greater for us. But if there was a necessity to pay, we would.
Payments: Stripe and Octobat
Stripe handles our payments. Since mkdev.me is a German company de jure, we can use Stripe with no problems (it doesn't work in Russia, but so be it). One day we'll add some other payment methods besides banking cards (PayPal or whatever), but now we're good with Stripe. Our Stripe expenses are always different, as it depends on the payments. But every month we pay bigger and bigger fees.
What Stripe cannot provide is a decent invoice with VAT and some other bureaucratic pleasures. We were making invoices in pdf by ourselves for a long time and sending them. But when we started counting aforementioned VAT, I realized that it's better to delegate it. Then I found Octobat. These guys make adequate invoices at a cheap rate, send them, create a nice page for the client with all the invoices and some useful reports of different kinds.
They're good. We still use Octobat v1 and pay according to the old pricing. When we change it to v2, we are going to pay $35 lowest a month, which I'll add in the end.
Projects management: Basecamp 3
Here's the core of mkdev.me - Basecamp 3. Oh, how awesome it is! We have a simple chat, one-on-one conversation, internal message board, notifications, task manager and storage for docs and pics.
We also have separate Basecamp for mentors, where we announce new releases and discuss possible features. We also talk with each mentor individually, help with the problems and questions from potential clients, force them to write articles and do other stuff.
Another separate Basecamp is for the product development, where we monitor the current tasks and their progress and plan all the details.
Another one is for the whole team, where we chat sometimes. Also, once a month we write there detailed reports about the status of the project.
One more Basecamp is for the 'executive board', by which I mean permanent members of mkdev team. There we discuss a little bit more confidential things, plan advertising campaigns, promotional offers and partnerships.
When we have some separate major task or the one which needs third-party involvement, we create another Basecamp only for this sub-project.
Basecamp is jaw-droppingly convenient. I tested many different project managers, but none of them were as intelligible and focused on all the tasks at the same time as Basecamp. It's our central hub and all the internal workings are done here. We would be six times less productive, if we didn't use Basecamp. We pay $31 a month for it. It seems that they raised the prices to $99 ever since, but we are still charged $31 for some reason. But even if they do raise prices, we will pay anyway.
We have a bot called Donald. He does a couple of important things:
It sends a random gif 'Make it rain' to us for every new payment.
It notifies us if mkdev is mentioned by someone on the Internet (with mention.com)
The bot is written with Rails and hosted on Heroku. It also can post random gifs on request. We won't be sad if it disappears, but it makes our days better. We also have a bot Gabriel, which notifies us about the deployments.
Obviously, we have Dropbox too, where Leonid keeps all the pictures and sometimes articles, just in case. We also used Zapier for something, but I don't remember for what exactly. We don't pay for them.
So in total we spend $166 for some miscellaneous services for mkdev.me. Of course, we didn't include a fee for AWS, but let's talk about it some other time (if you let us know in the comments that you're intersted). I didn't tell about how we collect and analyze the data either, but it's still too early to present it to the public. But I can say that we use Google Analytics pretty actively.
To sum up, our daily routine includes Basecamp, Gitlab, GrooveHQ and Mailchimp. I spend most of the time in Basecamp and Gitlab, Leonid in Basecamp, GrooveHQ and Mailchimp, and Alexei in GrooveHQ and Basecamp. Mkdev wouldn't exist without those four services. On the whole, we are very pleased with the current set of tools, except for GrooveHQ probably.
Our team shares similar (and more useful) articles in our newsletter on a regular basis. So don't forget to subscribe. There's a great deal for you to read and always something new.
So at last you decided to start a self-education?
Then start with our free guide to the world of web development. You will find tons of useful advices and materials to learn inside the book.Get the book