×

Пара шагов к любви с wannameet

При создании клиентского кода для WannaMeet я ловил себя на мысли, что свежая романтика напоминает сборку прошивки: одна не­верная инструкция — и симпатия зависает. Поэтому решил описать краткий, но чёткий маршрут, по которому приложение доводит двоих до первого кофе без лишних экранов.

Сигналы и алгоритмы

Матч-мотор внутри WannaMeet строится на взвешенной графовой модели. Узлы — пользователи, рёбра — взаимное любопытство. Вес ребра вычисляет модуль Batchflux, где к схематичной информации о возрасте и геолокации добавляется микролог похожих музыкальных треков, темп лайков, редукция токсичности по шкале Perspective API. Получается барометр симпатии, отклонение которого выше 0,73 уже считывается как «пора знакомить».

Профиль-капсула — ещё один слой точности. Вместо обязательных романов длиной в абзац предлагаем три микро­истории. Каждая заполняется через шаблон DSL, знакомый разработчику: объект, действие, настроение. Набор превращается в вектор, пригодный для обработчика FastText, минимизирует разночтения при машинном переводе, оставляя живую интонацию владельца аккаунта.

Скорость и приватность

Бэкенд обрабатывает каждый свайп под нагрузкой в 120 RPS. Для ускорения используется bloom-фильтр «Отрицание двойников»: адреса счётчиков шифруются при помощи алгоритма SipHash, после чего ненужные совпадения гаснут ещё до обращения к базе. Холодные данные архивируются в формате ZSTD-Seeker, стремительный дескриптор которого извлекает порцию истории за 15 мс.

Приватность держится на трёхслойной системе. Первый слой — анонимация трёх габаритных полей (имя, номер, почта) через token-пул STOB (Secure Token On Boarding). Второй — «обратный диффузор» граф-БД, который перемешивает метаданные, оставляя валидными только минимальные служебные координаты. Третий слой — time-lock-шифр: сообщение хранится в зашифрованном виде до подтверждённого открытия, снятого отпечатком лица или пальца.

Два клика — встреча

Интерфейс сознательно сжат. Первый клик фиксирует симпатию, второй — дату и час встречи. Уведомление у приёмника открывается раздвижным баннером с контрастной надписью «Кофе?» либо «Прогулка?». Фрейм с предложением содержит карту с изохроной пяти минут пешком. Под картой — генератор ice-breaker-фразы. Он использует небольшой set-предиктор, генерируя один остроумный заход без клипов «привет, как дела». Генератор опирается на литературный корпус Опояз 1922-1930 гг., отчего фразы звучат чуть футуристично и липнут к памяти.

Хаптик-отклик вшит в каждой микро­реакции. При долгом тапе на фото PAL-привод вибромотора выделяет сердце лёгким двойным пунктиром, модель тактильного кода позаимствована у азбуки Морзе. Разработчики считают, что ток живого прикосновения должен чувствоваться даже через стекло Gorilla Glass.

Физика стука двух сердец измеряется через PulseBridge — новаторскую надстройку над HealthKit и Google Fit. Синхронизация частоты сердечных сокращений у обоих участников трактуется как точка кульминации. Когда HR-кривые входят в фазу резонанса плюс-минус 5 уд/мин, приложение советует выйти офлайн, завершая цифровую часть знакомства.

Краткий эпилог

Инженер смотрит на любовь без мифов: датчики, графы, криптография. При должной калибровке WannaMeet менztn хаотичную ленту лиц на точно настроенный механизм, где два шага на экране логично приводят к живой беседе за реальным столиком.