Техстратегия и архитектура highload-проекта на примере ВКонтакте / Александр Тоболь (ВКонтакте, VK)

YOUTUBE · 01.12.2025 04:40

Ключевые темы и таймкоды

Введение

0:05
  • Александр, технический директор ВКонтакте, рассказывает о своем умении выходить из трудных ситуаций.
  • Он планирует обсудить, как не попадать в такие ситуации.

Представление ВКонтакте

0:39
  • ВКонтакте имеет дневную аудиторию более 50 миллионов в России, что составляет 85% аудитории Рунета.
  • Проект потребляет более 10 миллиардов постов в сутки и обрабатывает 2 миллиона запросов в секунду.
  • Александр рассказывает о себе: призер студенческих олимпиад, 20 лет в разработке, 17-й раз выступает на конференции.

Ошибка выжившего

1:44
  • Александр объясняет, что не рассказывает о своей работе на конференциях, чтобы избежать ошибки выжившего.
  • Он подчеркивает важность критического мышления и опыта ошибок.

План доклада

3:27
  • Доклад изначально был техническим, но Александр решил рассказать о своей работе.
  • План включает обсуждение стратегии, провальных и успешных стратегий, паттернов и технологической стратегии ВКонтакте.

Роль технического директора

4:56
  • Роль технического директора зависит от стадии жизни компании.
  • В стартапах директор занимается написанием кода и управлением процессами.
  • В крупных компаниях директор отвечает за бюджет, задачи и техническую стратегию.

Личный опыт

5:52
  • Александр рассказывает о своем пути в разработке, начиная с сервиса видео в Одноклассниках.
  • В ВКонтакте он столкнулся с задачей создания технической стратегии.

Определение стратегии

7:33
  • Александр обсуждает, что такое стратегия и как ее отличить от тактики.
  • Он приводит примеры из консалтинговых компаний и объясняет, что стратегия должна быть формализована.

Важность стратегии

9:12
  • Стратегия включает понимание текущего состояния и целей компании.
  • Она должна создавать ценность для всех стейкхолдеров и быть измеримой.
  • Стратегия необходима, когда рынок становится менее конкурентным и компании начинают сокращать сотрудников.

Технологическая стратегия

10:12
  • Рынок изменился, и старые методы больше не работают.
  • Технологическая стратегия связана с продуктом и его целями.
  • Важно понимать, когда и почему внедрять технологии.

Ошибки в технологической стратегии

10:50
  • Не стоит слепо копировать технологии лидеров.
  • Важно учитывать рыночные изменения и не внедрять ненужные технологии.
  • Технологическая стратегия должна быть направлена на достижение конкретных целей.

Примеры неудачных стратегий

12:38
  • Nokia: ошибка индукционного мышления и следование за лидером.
  • Win Mobile: хорошая операционная система, но рынок был занят.
  • ЦСКА: неудачный выход на рынок устройств.

Провалы в технологиях

14:26
  • Motorola: проект Starlink не был запущен вовремя.
  • Важно вовремя прекратить инвестиции в неэффективные проекты.
  • Консалтинговая матрица помогает определить, когда нужно прекратить инвестиции.

Ошибки крупных компаний

17:04
  • Google: закрытие проекта Stadia из-за технических проблем.
  • Meta: закрытие проектов, таких как Clubhouse и Bitcoin.
  • Важно вовремя остановиться и понять причины провалов.

Удачные примеры

19:26
  • Spotify: успешная музыкальная платформа благодаря технической поддержке.
  • Airbnb: успешная компания благодаря безопасности и доступности.

Фокус на данных и метриках

20:37
  • Компании собирают максимум данных и строят метрики для оценки успеха экспериментов.
  • Это позволяет командам внутри компании творить и оценивать результаты по метрикам.
  • Пример: Airbnb, который не позволяет устраивать вечеринки в квартирах, чтобы не нарушать покой соседей.

Стратегия Netflix

21:36
  • Netflix столкнулся с проблемами масштабирования и поддержки железа.
  • Переход на веб-сервисы и использование сетей доставки контента.
  • Внедрение машинного обучения для удержания рынка и поиска новых точек роста.

Важность стратегии

22:29
  • Стратегия не гарантирует успех, но определяет развитие компании.
  • Анализ провалов полезен для улучшения стратегий.
  • Поддержка продукта важна для успешной реализации стратегии.

Паттерны стратегии

23:02
  • Проторианство и ресурсная стратегия.
  • Пример: сервис коротких видео, где команда и технологии сочетаются с трендом.
  • Успешные сценарии включают ресурсы и тренды.

Анализ рынка и технологий

24:38
  • Анализ рынка, сильных и слабых сторон компании.
  • Выбор направления для инвестиций и определение метрик.
  • Пример: искусственный интеллект и квантовые технологии.

Внедрение технологий

26:17
  • Внедрение технологий, таких как искусственный интеллект и квантовые компьютеры.
  • Важность взвешенного подхода к внедрению технологий.
  • Пример: использование автокода и машинного обучения для улучшения процессов.

Продуктовая стратегия

29:13
  • Продуктовая стратегия должна быть измеримой и конкретной.
  • Пример: рост нагрузки и использование механизмов деградации для масштабирования.
  • Важность готовности к росту и использованию технологий для достижения целей.

Свод-анализ

30:04
  • Свод-анализ - недооцененный механизм в стратегии.
  • Включает внутренние факторы: команда, ресурсы, аудитория.
  • Внешние факторы: возможности, угрозы, конкуренты.
  • Важно коррелировать сильные и слабые стороны с рынком.

Декомпозиция продукта

31:01
  • Декомпозиция продукта на модули с метриками.
  • Паттерн взаимоисключения: блоки должны быть непересекающимися и всеобъемлющими.
  • Пример: Clubhouse не уделил внимание рекомендациям, что привело к проблемам.

Метрики и команды

32:37
  • Метрики для каждого направления: стриминг, рекомендации, поиск.
  • Команды работают над улучшением продукта по этим направлениям.
  • Важность метрик для технического директора.

Теория решения изобретательских задач

34:08
  • Теория Генриха Альшулера: анализ патентов в физике.
  • Уникальные решения, применяемые в тысячах патентов.
  • Пример с быстрым катером: решение во времени для эффективного использования ресурсов.

Инновации и противоречия

36:17
  • Решение противоречий в системе для инноваций.
  • Пример экраноплана: быстрое движение по воде без соприкосновения.
  • Постоянное нахождение и решение противоречий для создания уникальных продуктов.

Противоречия в рекомендательных системах

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

Противоречия в звонках

38:21
  • Задержка в 50 миллисекунд между Москвой и Хабаровском вызывает дискомфорт.
  • Используются алгоритмы для минимизации задержек и восстановления пакетов.
  • В гейминге и метавселенной требуются минимальные задержки, что требует новых технологий.

Противоречия в видеохостингах

42:02
  • Противоречие между сжатием видео для экономии трафика и быстрым доступом к контенту.
  • Решение: использование технологий для улучшения качества видео на лету.
  • В ВКонтакте видео доступно сразу после загрузки, без нарезки.

Противоречия в контентных сервисах

44:06
  • Противоречие между популярностью известных лиц и новичков.
  • Решение: инвестиции в популярность, использование дипфейка или создание контента с его применением.
  • В ВКонтакте пользователи могут снимать клипы с использованием технологий дипфейка.

Стратегии и метрики

45:39
  • Определение противоречий в системе и их креативное решение.
  • Использование методик ТРИЗ для решения задач.
  • Важность выбора метрик для оценки продукта и его улучшения.

Технологическая стратегия

46:58
  • Цель компании: заменить интернет и обеспечить постоянное присутствие пользователей.
  • Важность перфоманса и устойчивости в разработке продуктов.
  • Выбор метрик для оценки производительности и их мониторинг для улучшения продукта.

Важность скорости ответа приложения

48:30
  • Пользователи предпочитают приложения, которые быстро отвечают.
  • Если ответ занимает более 1.8 секунды, аудитория уходит.
  • Мониторинг показал, что проблемы с ответом приводят к потере аудитории.

Ускорение доставки контента

49:20
  • В разных регионах скорость ответа может сильно различаться.
  • В Санкт-Петербурге и Петропавловске-Камчатском ситуация разная.
  • Инвестиции в скорость доставки контента и ускорение бэк-энда.

Внедрение новых технологий

49:45
  • Внедрение новых технологий, таких как QUIC и HTTP/3.
  • Поддержка асинхронного ответа в браузерах.
  • Улучшение времени ответа бэк-энда через параллелизм и кэширование.

Локализация данных и устойчивость

50:49
  • Локализация данных пользователей внутри дата-центра.
  • Важность устойчивости и качества продукта.
  • Мониторинг и улучшение метрик для улучшения продукта.

Мониторинг и анализ метрик

52:08
  • Мониторинг множества метрик для отслеживания состояния системы.
  • Использование сложных систем для контроля и анализа данных.
  • Важность инструментов для разбора инцидентов и устранения проблем.

Скорость разработки и компиляторы

54:07
  • Инвестиции в скорость разработки и компиляторы.
  • Использование компилятора для ускорения работы кода.
  • Уникальное решение для распределенной сборки.

Рекомендации и метрики

56:20
  • Важность рекомендаций и метрики NPS.
  • Корреляция между рекомендациями и временем ответа.
  • Проверка полезности рекомендаций через рандомизацию.

Техническая стратегия и внедрение

57:41
  • Важность технической стратегии и ее измерения.
  • Решение противоречий и получение патентов.
  • Влияние профиля, рынка и времени на результаты внедрения стратегий.

Заключение и благодарности

59:40
  • Призыв к сотрудничеству и фидбеку.
  • Важность измерения NPS и работы над тайм-спенттом.
  • Благодарность участникам и организаторам конференции.