Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Вениамин Тамбурин
Search
FrontFest
November 21, 2017
Programming
280
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Вениамин Тамбурин
FrontFest
November 21, 2017
More Decks by FrontFest
See All by FrontFest
Тим Чаптыков
frontfest
0
1.2k
Егор Банщиков
frontfest
0
900
Jose M. Perez
frontfest
0
760
Алексей Иванов
frontfest
0
1.4k
Екатерина Пригара
frontfest
0
720
Léonie Watson
frontfest
0
790
Кирилл Чернышев
frontfest
0
770
Виктор Грищенко
frontfest
0
660
Игорь Алексеенко
frontfest
0
510
Other Decks in Programming
See All in Programming
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
240
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
360
The Rails Doctrine Decade
koic
2
430
SREの越境 / SRE Collaboration
y0hgi
2
290
AGENTS.md Is Not Enough:Build Skills, Don't Download Them
lx_t
0
130
SONY CISC-NEWS NWS-1750 + NWB-225 フレームバッファの NetBSD/news68k ドライバ実装 / OSC2026Hiroshima
tsutsui
0
160
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
3.1k
Turning Architecture into Unit Tests in the AI Era (NSSpain XIV)
steliosf
PRO
1
120
Heart of Swift Concurrency
koher
0
1.1k
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
280
JAWS-UG 東京支部が始める、JAWS-UG支部コラボ / JAWS-UG lunchtime LT Collaboration
y0hgi
0
170
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
360
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
A designer walks into a library…
pauljervisheath
211
25k
AI: The stuff that nobody shows you
jnunemaker
PRO
10
1.1k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
500
Art, The Web, and Tiny UX
lynnandtonic
304
22k
How STYLIGHT went responsive
nonsquared
100
6.3k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
58k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
340
Git: the NoSQL Database
bkeepers
PRO
432
67k
Typedesign – Prime Four
hannesfritz
42
3.2k
Transcript
Как мы пишем фронтенд в Букинге Вениамин Тамбурин
None
None
Booking.com работает более чем в 220 странах на 43 языках
В чем заключается роль разработчика интерфейсов?
None
None
Локализация Эксперименты Мониторинг Производительность Ответственность команды Инновации
Локализация и интернационализация
43 языка 50 валют 2000+ комбинаций
None
None
Верстка HTML и CSS всегда должна работать
None
None
None
None
Английский Русский Болгарский Китайский Арабский
None
Мы должны понимать язык и культуру наших пользователей
два варианта на одном экране
None
None
Говоря с человеком на том языке, который он понимает, ты
говоришь с его головой. Если ты говоришь с человеком на его родном языке, ты говоришь с его сердцем — Нельсон Мандела
Эксперименты
None
Buy now Buy now vs
Buy now Buy now ! if track(experiment)
Buy now Buy now Logged in/out Language/currency Country of origin
Browser/OS/Device Visited products Navigation flow Search criteria Validation errors Customer’s city/state Payment type Customer service calls Cancellations Page load time Wallclock/CPU Number of queries Server/client-side errors
Buy now Buy now Продолжительность: 14 дней Посетители: 45140 (22570
на вариант) Transactions Average price 407 (1.8%) $ 42,00 $ 42,84 339 (1.5%) +20% +2%
Что бы мы ни делали, мы делаем через A/B эксперименты
Но новый макет очевидно лучше старого! Мы можем обойтись без
эксперимента! — большинство дизайнеров
Какой вариант лучше? Поднимите правую руку ✋ Не поднимайте руку,
если нет разницы Поднимите левую руку
Какой вариант лучше? Поднимите правую руку ✋ –1.7% отказов
Какой вариант лучше? Поднимите правую руку ✋ Не поднимайте руку,
если нет разницы Поднимите левую руку
Какой вариант лучше? Поднимите левую руку +203% CTR
Какой вариант лучше? Поднимите правую руку ✋ Не поднимайте руку,
если нет разницы Поднимите левую руку
Какой вариант лучше? Поднимите левую руку +43.4% покупок
Какой вариант лучше? Поднимите правую руку ✋ Не поднимайте руку,
если нет разницы Поднимите левую руку
Какой вариант лучше? Ни один вариант не показал значимых изменений
Buy now Buy now vs Net conversion Click-through rates Validation
errors больше слова про то, что мы тестируем и тезнологии, не только кнопки
vs Net conversion Page load time Validation errors jQuery 1.11
jQuery 3.0
vs Time to render Net conversion (per UA) Page load
time Virtual DOM morphdom
Задача — не увеличить конверсию, но быть лучше для наших
пользователей
Мониторинг
Каждая часть приложения покрыта метрикой
None
Каждое событие создает Event
{ action => ’hotel’, referrer => ’http://booking.com’, country => ’us’,
ip => ’222.222.2.22’, git_tag => ’20160625-120178’, node => ’xx555-33’, browser => ’chrome’, version => ’49’, js_error => { file => ’hotel.js’, error => ’undefined B is not a function’, stack => ’...’, line_number => 337 }, js_data => { first_load => 4343, first_paint => 1200 } is_robot => 0, … } Event
Мы можем быстро реагировать на любые проблемы
None
Производительность
Пользователь должен иметь возможность забронировать отель где бы он ни
находился
Первый DOM Content Ready Первый onLoad Средний DOM Content Ready
Средний onLoad Размер страницы Wallclock CPU Память
Service Workers Critical rendering path Asynchronous assets and templates Assets
pre-fetching
Любое улучшение производительности пройдет через эксперимент
Ответственность и автономность команд
Каждый дизайнер и разработчик может выдвинуть идею и воплотить ее
в жизнь
Идея Обсуждение Дизайн и разработка Тестирование Релиз Создание A/B эксперимента
Анализ результата Выводы и новые идеи
Все в равной мере ответственны за принятые решения и результаты
Инновации
Booking.com продолжает расти более 20 лет
Мы делаем редизайн и рефакторинг с большой осторожностью
None
ценность для пользователей польза компании радость разработчикам
Как же мы делаем фронтенд для 224 стран и 40
языков?
Локализация. Мы стараемся быть ближе к пользователям и говорить с
ними на одном языке
Эксперименты. Мы не доверяем интуиции, но принимаем решения на основе
точных данных
Мониторинг. Мы быстро реагируем на возникающие проблемы
Мы ответственны за все принимаемые решения
Мы следим за новостями рынка и технологий
None
Любите не инструменты, но продукт и вызовы
Пользователь — мера всего
Dank jullie wel! Спасибо!