
Our school launched the Skyeng Super Cup international online English Olympiad, which runs from March 6 to April 14. Schoolchildren of grades 5-11 will be able to test their knowledge for free and compete for interesting prizes. They are unlikely to know that this product was developed by our “special forces” in just 11 days - today we will tell the readers of “Habra” how we did it.
Special Forces
To quickly create a product, it is necessary to combine several components: professionalism, availability of necessary resources, money and people, and independence. Not everyone understands how important independence is, but as soon as it disappears, everything instantly slows down. Two people can often cope with the work on complex interdependent systems faster than 3 or 4. If we need to do something really quickly, we connect the "special forces", rather than a full group of 10-12 people. Therefore, first of all, we gathered a small force of very strong employees.
In this minimal team, everyone should be not only super-professional, but also in something a multi-slot (full-stack developer). For example, we have a designer who works a bit as a product manager, a little copyright, he selects pictorial illustrations himself and plays the role of translator. It is believed that this can not be done, but if you need to get a quick result - it is necessary. Of course, there are downsides, there may be mistakes, our designer can somewhere make a small joint with the translation, well, we'll fix it, as we find; However, if you send a task to a professional translator, you will have to wait for the result, and each addition or change will take a lot of time. In our case, everything happens instantly in real time mode. It is important that all members of the special forces team combine as many roles as possible.
')
Forks
We already have an excellent universal platform Vimbox; initially it was clear that it would be taken as a basis for the Olympiad. And then we decided to fork it - to make a full copy of the code to another instance, after which the “special forces” worked only with this copy. In this approach, there is an obvious disadvantage: any changes that the main team makes to the platform are inaccessible to the "branch". But there is a plus - if we make a mistake and in a hurry somewhere nosyachim, it will not affect the main platform. In addition, in the fork, we can use any crutches and solutions “on the knee”, without fear that in the future they will become a headache.
From the fork, we first threw away all unnecessary for the Olympiad, and then screwed the necessary. Here again there are a lot of minuses, the most important of which is a one-time engine, we will not be able to hold a second Olympiad on it. However, this is again that very independence, thanks to which the speed grows by several times.
Pencil and pink squares
When you have only 11 days for the whole project, there is no time to do the classic waterfall: first develop the documentation, then the design, the layout, and only then start programming. In our case, we had to turn to magic, to do everything in parallel; developers start working without complete documentation. We wrote TZ on half a page, in which we briefly described what we were doing, which roles, objects and entities. This is enough to start designing databases, tables. It is clear that the higher the detail, the easier it is for developers to write code - but even with our draft they could start working, saw the structure, how many pages there would be, what the conversion funnel looks like.

At the same time in 2-3 hours, the first design is made, about forty screens. To do such work in such a period can only be a pencil on paper, electronic tools at times slower. This is a very abstract, high-level design, where the outline shows that there is such a screen, here it is, from here it is necessary to get here, etc. At the same time, the product manager is conducting research on similar products on the market; We watched 15 of the existing Olympiads. In particular, there is an excellent platform
uchi.ru - we know it for a long time, in this case we took into account its experience, but there are no English olympiads there. While we are looking, we are all printskrinim, we write out cool finds, we note that we like it, but not. When there is not enough time, there is no possibility to invent everything on your own, you need to look at ready-made solutions and collect a vinaigrette from them.


Screenshots are needed to collect visual mokapy. In the draft of the design, you can simply draw a black square and write on it a “registration form”, or you can insert a screenshot from someone’s finished form. The second option better visualizes the entire design. Therefore, do not hesitate to make a draft of pieces of other people's decisions - it turns out a visual plan that can be downloaded by the developer, while the designer is carrying and drawing his own pictures.


It is important not to be afraid of a situation when something is not there. In this case, we insert pink squares into the scheme. We had a huge design layout, in which there were quite a few such pink squares, denoting what was not: partner logos, buttons for social networks, we did not understand which billing we would use. These were the blocks, about which we did not know anything at all at that moment. They should not be afraid: we understand that this will be here, and we will continue to work. For example, we connected billing at the very end of the project: you cannot make it quickly, and we implemented it when we had an understanding of what we needed.

Features and money
In the meantime, the product manager must talk to all stakeholders - business, marketing, methodologists, content managers - in order to understand the full range of restrictions and minimum requirements.
The customer will inevitably say - "I want that, I want this." In order for these conversations not to stretch out for ages, it is necessary to immediately identify three pools of features: “mast hev”, “do it if we have time” and “no”. “No” should be as much as possible: there are many desires, and the possibilities are very limited, so you need to be able to confidently explain that this will definitely not happen.

It helps to estimate each feature in rubles. For example, the customer says, let’s make the letters to the class numbers a select, separate the “no letter” button and another separate input field in case the class is called non-standard (not “11b”, but “11fizmat”). The easiest way to attribute this idea to the “no” category and to make one input field is to explain that this task will require 3 hours of developer time, which will cost 7,000 rubles. In response, we immediately hear - "a, ok, ok, let's simplify." The customer simply does not always understand how simple at first sight the feature complicates the work, he needs to communicate this as quickly and easily as possible.
Couple of tricks
Of course, we also applied the principle “no need to complicate things where there is a simple solution”. For example, we have an excellent designer who could make excellent light vector icons for a project. But: time! Therefore, we have ready-made imogzi. Did you notice them on the Olympiad page? ..
The site has three "sheets of texts" - the rules, user agreement, privacy policy. Editing from the customer constantly flew in them, which are very time consuming to make. Solution: the texts are in Google Docs, then the menu "Publish to the Internet → Embed". At the output we have an iframe-link to the text that is visible on our site, and which the customer himself can edit directly in Google Docs. As a result, we were able to edit in real time, spending 0 development time. By the way, this way of publishing kills the links in the document, but for another project we came up with a piece of code that wraps them with the attribute target = "_ blank", which allows to get around this problem.
Such planning allowed us to meet in a very short time and produce a
decent product . And we want to remind: we are always looking for
cool and talented employees ! And right now we need a product manager for our flagship product - the Vimbox platform. Ay, great man, answer me!