Moscow SPA Meetup # 5 - Meeting Announcement

Hello! My name is Sergey Melyukov, I am a senior engineer in the Frontend Architecture team in Avito.
On August 17, our office will host the fifth mit.-satellite Moscow.js - Moscow SPA, a meeting for front-end developers who are interested in the topic of web applications (Single Page Application). Let's talk about integrating Jest with the QA infrastructure, DI as a way to scale, can UIKIt be as flexible and suitable for everything, the growth of component libraries and the platform team. Besides me, reports will be delivered by experts from Mail.Ru, Yandex, VKontakte and Tinkoff.

The meeting will begin at 11:00. Register yourself and invite colleagues. Under the cutscene - abstracts, links to registration and video broadcasting of the mitap.


Tin for Jest - Sergey Melyukov, Avito


Avito has dozens of front-end engineers and QA specialists. They all really want to write tests for the site. To make writing tests convenient and tests useful, we use various infrastructure services: screenshot service, report viewer for CI, test case repository, selenium cluster and others.
But the availability of services does not mean that there are no open questions. How to see a screenshot of a component if the test fails? How to integrate with internal services, for example, report viewer and test storage? How to make work with all of them convenient directly from the test code?
In the report, I will describe how we integrated Jest with Avito's QA infrastructure.
It would seem that this is so? But we have our own reporter, environment with proprietary IPC and http / ws-moki.

DI as a way to scale everything - Alexey Popkov, Yandex


How often in tests do you plug in a library for tricky module swapping? What time if you wrap pieces of your code for different platforms? Or maybe your A / B testing system is built on endless switch / case? Enough to endure it - you need to fix it!

UIKit that can definitely - Konstantin Lebedev, Mail.Ru


During my career, I participated in the creation of many different UIKit'ov. Years go by, technology changes, but whales do not. They have the same problems as they did ten years ago: extensibility, theming, dependencies, redundancy, and so on. Of course, they are trying to solve these problems, but it comes out very superficially and haphazardly. And so, starting to do another pet-project, not having line restrictions and complete freedom, I wondered how all the same should look like a modern "UKit that definitely can"?
In this report, there will be no ready-made solutions, but there will be reasoning and research on the designated topic: how to build the most flexible components with common rules.
The report will be solidly seasoned with TypeScript examples with furious and recursive types.

Where component libraries grow - Tim Chaptykov, VK


Many have seen the development of component libraries. From the inspirational “This time we will do it right again” to “You can not rule here, we will rewrite everything in the next quarter.” From one person’s initiative to a dedicated team that supports common components.
We often encounter the same problems, apply the same solutions. And usually these are solutions that require a lot of resources: more developers, more time, more stages of testing. But what if there are very few resources? What can you save on?

Platform Team: Application Guide - Alexander Kazachenko, Tinkoff


Tinkoff Business has over 20 product teams. All of them work with shared tuning and services. There used to be a problem - there are no people responsible for everything “common” (read, no one), so at the beginning of 2019 we launched a platform (core) team that solved this problem. Now the team is actively working and brings a lot of benefits. In the report, I will tell about our experience, share ready-made solutions and try to answer questions related to the organization of the work of the platform team:
  • how to understand that you need a platform team;
  • what is included in the tasks of the platform team;
  • how to effectively complete tasks in a platform team;
  • ways to distribute services and components;
  • what tasks should be delegated to product teams and how to bring them to the end;
  • further development of the platform team.

Panel session: “Platform teams: a fairy tale or reality?”

Abstracts and discussion participants are being specified.

The host and moderator of the meeting is Roman Dvornov .


11:00 - 11:30 | check in
11:30 - 12:10 | Tin for Jest . Sergey Melyukov, Avito
12:15 - 13:00 | DI as a way to scale everything . Alexey Popkov, Yandex
13:00 - 13:30 | Dinner
13:30 - 14:10 | UIKit, which certainly can . Konstantin Lebedev, Mail.Ru
14:15 - 15:00 | Where component libraries grow . Tim Chaptykov, VK
15:00 - 15:15 | Coffee break
15:15 - 16:00 | Platform Team: Application Guide . Alexander Kazachenko, Tinkoff
16:00 - 16:30 | Panel session: “Platform teams - a fairy tale or reality?”
16:30 - Afterparty at ONE MORE PUB

Passwords and appearances

Mitap will begin on August 17 at 11:00. Participation in the event is free, but you need to register . Please indicate your last name and first name as in your passport, and do not forget to take it (or a driver’s license) with you, otherwise you will not be allowed into the office.

Address: Avito office, Lesnaya 7 .

If you can’t come, then connect to the live broadcast on the AvitoTech YouTube channel .

See you!


All Articles