Internationalization (i18n) на собеседовании системного аналитика
Карьерник — Duolingo для аналитиков: 10 минут в день тренируй SQL, Python, A/B, статистику, метрики и ещё 3 темы собеса. 1500+ вопросов в Telegram-боте. Бесплатно.
Содержание:
Зачем спрашивают на собесе SA
Multi-language applications — стандарт. На собесе SA: «как реализовать», «как handle plurals».
i18n vs l10n
i18n (Internationalization). Подготовка кода для multi-language. Один код — many languages.
l10n (Localization). Конкретный перевод и культурная адаптация для locale.
i18n — engineering. l10n — content.
Locale
Combination language + region + variant.
en-US — English (United States)
en-GB — English (United Kingdom)
ru-RU — Russian
de-CH — German (Switzerland)
zh-Hans-CN — Chinese (Simplified, China)Влияет на:
- Translation choice.
- Date format.
- Number / currency format.
- Plurals.
- RTL / LTR direction.
Переводы
Translation files — typically JSON / YAML / .po.
{
"welcome": "Welcome",
"goodbye": "Goodbye"
}{
"welcome": "Добро пожаловать",
"goodbye": "До свидания"
}Tools:
- gettext (.po files) — Linux classic.
- i18next — JS standard.
- Phrase, Lokalise, Crowdin — translation management platforms.
Plurals и interpolation
Plurals варьируются по языкам.
English. «1 item», «N items» — 2 forms.
Russian. «1 item, 2-4 items, 5+ items» — 3 forms ((один, несколько, много)).
Arabic. 6 forms.
ICU MessageFormat — стандарт.
{count, plural,
one {# элемент}
few {# элемента}
other {# элементов}
}# = count.
Interpolation. Подстановка values:
"hello": "Привет, {{name}}!"Даты, числа, валюты
Дата.
- US:
5/7/2026(M/D/Y). - РФ:
07.05.2026(D.M.Y). - ISO:
2026-05-07— universal.
Числа.
- US:
1,234.56. - РФ:
1 234,56.
Валюты.
- $1,234.56 (USD)
- 1 234,56 ₽ (RUB)
- ¥1,235 (JPY, no decimals)
Tools: Intl.NumberFormat, Intl.DateTimeFormat в JS. ICU в backend.
RTL languages
Arabic, Hebrew — text идёт right-to-left.
CSS:
[dir="rtl"] .container { ... }Mirroring. Не только текст — UI elements (icons, layouts) тоже mirror.
Связанные темы
- Acceptance Criteria для SA
- User Stories и Acceptance Criteria для SA
- Виды тестирования для SA
- SLA SLO SLI для SA
- Подготовка к собесу системного аналитика
FAQ
Hard-code text — почему плохо?
Невозможно перевести без code change. Translation extraction — стандарт.
Это официальная информация?
Нет. Статья основана на материалах W3C / ICU / Unicode CLDR.
Тренируйте системный анализ — откройте тренажёр с 1500+ вопросами для собесов.