How three classmates became Facebook partners - Revealbot story

image



Advertising may seem unpleasant, but it is the money heart of the IT industry. Google, Facebook and other giants live precisely at her expense. Even ad blockers are forced to advertise.



Thousands of startups appearing every year depend on advertising. Shareholders of Facebook, Google and others make hundreds of thousands of venture capital investments in small products, and even if they don’t shoot, they will spend at least half of the money on advertising on Facebook and Google, ensuring a non-stop turnover of money.



And to create a product that will become a new successful word in advertising is how to create another social network in 2019. It is all the more surprising that the Russian startup Revealbot was able to do this. CEO Mikhail Trofimov, CTO Mikhail Salosin and CCO Iskander Musaev told me their story - how they did it.



Revealbot received an average rating of 4.9 from its employees at My Circle, who praised the comfortable working atmosphere in the team, the connection with top management and the fact that the company makes the world a better place.





How appeared and what created



We studied in the same class and have known each other for more than fifteen years. Then they entered various universities, but continued to communicate and tried to do their projects. We worked on them at a “party time”, and were not focused enough to really shoot. And I wanted to completely immerse myself in my own product and not be distracted by any work. An ideal way to do this is to leave the whole team to another country, to some accelerator, where there is a suitable atmosphere and interesting people around.



What product was not important for us - the main thing is to create something that people need. Once we were offered to get into the accelerator in New York, and we agreed. There was a very cool atmosphere, an incredible number of technology companies and venture funds.





From left to right: CEO Mikhail Trofimov, CTO Mikhail Salosin, CCO Iskander Musaev.



But our first project did not take off, and for a month we were looking for where to move on. We met with Russian guys who have already achieved good results in the American market. They helped us create the first version of our product.



We saw a large and interesting Facebook advertising market. There are many unsolved problems, and we plunged into them. At that time, there was a wave of all kinds of bots for messengers on the rise. We thought that it would be nice to make a bot for Slack, which would pull out statistics and send useful notifications about what is happening with the advertisement. This was the very first step towards the automation of advertising.



As a result, we made a tool that allows us to algorithmize advertising management processes. With it, you can describe all the conditions at which time an ad will stop and start, change its budget, and so on. In a word - to describe the algorithm so that all processes occur automatically. He would allow managers to focus more on the creative process, on inventing announcements, pictures and texts, rather than on manual control, turning on and off.



In form, it is a web service that has nothing to do with Facebook. We get permission from the user to use his Facebook ads, access to statistics, accounts, the ability to manage ads, change advertisements and more - a standard authorization algorithm requesting the permissions we need. After that, we get a token from the user and use the facebook api to perform all actions: get the list of ads, get statistics on this advertisement, find an advertisement that matches the rule, matches the conditions in the rule and perform the actions specified by the user on this advertisement. From the point of view of Facebook, this is a separate application that uses its api.



It sounds quite simple, and, of course, there are analogues - including in the Facebook advertising account itself. But our clients have very complex strategies that a standard cabinet cannot handle. We need complex logical conditions, chains, various combinations of metrics and actions that we perform based on these metrics, so the product is quite complex. Good preparation is required to fully master all its capabilities.







When we started, we were told that no one would pay normal money for a chat bot. That turned out to be true. It turned out more like a marketing product, which allowed us to declare ourselves in the market, attract the first users and collect feedback from them. Then we were told that the market for automation of advertising on Facebook is already super crowded, and there is nowhere to go. They talked a lot. This is normal. Each startup meets with skepticism in the spirit of “nothing will take off from you, you are doing nonsense.”



At first, everything was done very quickly with unknown crutches in order to quickly capture the audience and begin to grow until the investments were over. We worked with Bootstrap and Ruby on Rails, but two months later they took Vue.js. I had to not write tests. This greatly affects the speed of further development. But after we realized that the product was needed, we took up the quality. In no case should users lose money due to our bugs. We began to write tests constantly, all the important functionality is covered with tests from top to bottom, and now it is much easier to work with them than at the initial stage.






How designed and arranged inside



Now our application consists of two parts. The first is the frontend that users interact with and the backend for it. Forms for creating rules, forms for creating reports. It all works on Ruby on Rails and vue.js. Processing of created rules, reports and other things is done by small services on Go. This can not be called micro-service architecture, most likely it is just separate services.





The whole team learned to play golf, in the center, Mikhail Salosin.



One service is involved in the processing of automation rules, the other is processing reports, the third is creating advertisements that the user creates through our interface. At the initial stage, all this was written quickly, there were problems with performance. Initially, we did not try to optimize for a large number of rules, so at some point we came up with the fact that processing is slow, requests to the Facebook api are not made optimally, everything slows down.



Facebook has a limit on the number of calls. If they see that we are making too many calls, then they start to give errors. Accordingly, you need to optimize all this very well. Large companies set up rules that can be applied to tens of thousands of entities, ten thousand advertisements, and all this needs to be processed very quickly. Go makes it very easy to process data in parallel.



But it was necessary to rewrite gradually. Since we did not have tests, this was quite problematic. In terms of the stack, we did not radically change anything. It allows you to quickly get new developers up to date, even if they have never programmed in Go. The market for developers on it is not as big as that of php or python. But if a person knows how to program, he can deal with the language itself in a week, because it is very simple.



And there are a lot of good developers on Ruby on rails, and I would not say that people want to leave it. Many are even fan of how cool Ruby is. How can I write everything in one line so that later no one ever understands anything, but everything worked.



Vue.js. is developing very well. When I had to choose between react and vue, I just read the documentation on react, and everything seemed very abstract to me. As if it was written for people who are already in the subject. And I'm not a front-end developer, and all my life I wrote only a backend. But vue.js had good documentation. You can immediately use the principles that are described there, there are recommendations and examples on how to build an application.



Compared to React, Vue has a very quick start. When a person who previously worked on react began to deal with our frontend, he did not have any problems with switching to vue.js. Ideologically, they are also quite close, there is no strong difference that would fundamentally change the development.






Culture and processes



Initially, a fairly informal culture was established in our company. We all communicate with each other as simple as possible. We like it and wanted to preserve such a culture, but so that the business component would not suffer. I would even say that in many ways we lack formalization of processes. Now everything is fine in terms of atmosphere and atmosphere, but it could be better in terms of efficiency.



For example, we have been trying for a very long time to understand how we can organize the QA process. We had a not very successful experience with hiring two people. As a result, now we do not have QA at all. If the feature is small, the one who requested it tests it. If the feature is a big feature, then we recruit volunteers, make a list of what features and how to test, where to poke, what to try to break something that kind of should not break.







We try to ensure that every feature is covered with both front-end and back-end tests. If we found a strange user case, when the user broke something, but we did not foresee it, we are trying to fix it and cover it with tests as well. Since I know almost the entire product as a whole and know the nuances of working with Facebook, I try to add notes for testing to each task - 4-5 points, which should be taken into account potentially. For example, the limit on requests for some fields on Facebook, or that one form is used in several places, and this must be taken into account if it will be redone. It turns out a certain knowledge base of things that are hidden and not always obvious, in order to then introduce new developers to the course of affairs.



Now most of our team is in Kazan, including developers. Two more people in Moscow, one in St. Petersburg. When we returned from the United States, we were remotely from each other, and this was embedded in the DNA of the company. We arrange all processes so that we can work remotely. Although, of course, live communication is often necessary, and we meet regularly. The last time we gathered everyone in Kazan, organized a large corporate party - we had two days of working together and then two days of relaxing together. We plan to gather at least once every six months as a whole company somewhere in Europe.






Product Promotion and Development



We did various marketing activities. We were found through a search, through articles, through Quora answers. They were converted into payers, and we realized that the rules of automation are the best converters and it’s worth focusing on them.







Probably the biggest jump in new customers and growth occurred after launching on AppSumo. This is a discount platform for companies where you can get unlimited access to the cheapest unlimited plan for little money. Thus, a lot of people knew about us at once.



We are in the middle ground between product advancement and great price. There are products with very complex automation, but their developers charge 5% of the advertising budget. If the company spends $ 1 million - it turns out 50 thousand dollars a month for software. This is not really big money, and not everyone is willing to pay so much for software. Or vice versa, there are companies that have a fairly small price list, but at the same time they provide very simple opportunities for automation.



We have chosen the golden mean. Various facebook advertising gurus started talking about us. There is an ad buyers group on Facebook, and the founder of this group often talks about our product at conferences and his master classes. Thanks to such influencing marketing, we are growing. Plus, we heat it ourselves - we have a referral program, according to which users can receive a share of the revenue from the customers they brought.



At the same moment, we began to negotiate with Facebook in order to become its partners. It's complicated. Only two companies in Russia were able to do this. Probably, we were lucky because we initially targeted the international market, and we managed to attract companies with high advertising costs. And for Facebook, the most important thing is that as many advertising budgets as possible go through the application. We managed to attract them, and perhaps this was the main reason why they decided to include us in the partners program.



We began to make other platforms. We launched automation for Google, because it is a big market - one and a half or two times more than Facebook. But it’s more difficult there, because Google has its own tool for writing scripts and managing advertising. We do not yet know how much the market needs the same tool.







But you can grow on other platforms - they are captcha, bing, twitter. They are smaller, but there are few tools, respectively, their market can be captured with a larger share.



There are ideas and how to make a more advanced and sophisticated tool for Facebook.

We called up with one American company that deals with mobile games, and he asked us about many features that we still do not have. The main problem is to prioritize, not what else to do. Queries and ideas are just an insane amount.



I have not yet met a technical startup who would make a product, settled on this, and nothing more had to be developed. In such an ever-changing market, this certainly does not threaten us.






Now there are 15 people in the team, we work from Kazan, Moscow, St. Petersburg, Krasnoyarsk and Los Angeles. There are offices in Moscow and Kazan, in other cities we are ready to pay for coworking if you do not want to constantly work from home. We help with relocation, support travel and work on a flexible schedule.



All Articles