Новое:Talanto осенью: поиск с цифрами, вакансия по шагам и каталог компаний

+1 793новые вакансии за сутки·93 582вакансии открыты сейчас·Новое:Talanto осенью: поиск с цифрами, вакансия по шагам и каталог компаний

Новые вакансии в TelegramРаботодателям
Talanto
Вакансии
Компании7 282
РезюмеAIПодготовкаСтатьи
BoostТарифыBoost
Войти

Не нашли подходящее?

Пусть нужная вакансия найдёт вас сама.

  1. Подборка в TelegramНовые вакансии по вашему фильтру — сразу в бота.Подключить
  2. Мэтчи по резюмеЗагрузите резюме — покажем, где вы подходите лучше всего.Загрузить
  3. Сохранить фильтрНастройте поиск один раз и возвращайтесь к новым вакансиям.Настроить
Что нового на TalantoTalanto осенью: поиск с цифрами, вакансия по шагам и каталог компаний

Для работодателей

Опубликуйте вакансию — отклики придут в ваш кабинет.

  1. Вакансиябесплатно
  2. Откликиконтакты бесплатно
  3. Наймэтапы и интервью

40 компаний публикуют вакансии напрямую · 4 402 кандидата открыты к предложениям

Разместить вакансию

Популярные направления

Все подборки
  • Python16 845
  • Облачные технологии13 177
  • QA вакансии3 434
  • Backend вакансии2 084
  • Инженер данных1 685
  • Продакт-менеджер1 179

Разработка

  • Android1 845
  • iOS1 689
  • Fullstack вакансии960
  • AI вакансии950
  • Frontend вакансии736
  • Mobile вакансии44

По стеку

  • Go8 619
  • Java6 379
  • Node.js1 971
  • .NET1 640
  • Kotlin1 599
  • Rust1 443
  • PHP670
  • C#650
  • C++536

DevOps и инфраструктура

  • Kubernetes7 304
  • DevOps вакансии5 865
  • Linux-инфраструктура5 290
  • Terraform / IaC4 016
  • CI/CD2 991
  • Мониторинг и Observability1 734
  • SRE550
  • Кибербезопасность413

Аналитика и данные

  • Data Scientist1 054
  • Бизнес-аналитик868
  • Аналитик данных834
  • Системный аналитик134

Другие направления

  • Проджект-менеджер534
  • UI/UX дизайн130
  • Ручное тестирование14

По регионам

  • Вакансии в США45 360
  • Вакансии в Европе22 405
  • Вакансии в Канаде4 485
  • Работа в России3 897

По формату

  • Удалённые вакансии75 381
  • Релокация в США45 357
  • Гибридная работа12 010
  • Офисная работа7 029

По уровню

  • Senior вакансии42 335
  • Middle вакансии20 999
  • Junior вакансии6 760

Сейчас нанимают

Все компании
  • Wise194 вакансии
  • Rakuten189 вакансий
  • ASML163 вакансии
  • Grab139 вакансий
  • Celonis40 вакансий
  • Spotify36 вакансий
  • Adyen29 вакансий
  • Infobip28 вакансий
  • Monzo19 вакансий
  • Darktrace17 вакансий

Вакансии из 344 источников: карьерные страницы компаний и джоб-борды.

КомпанииО насНовостиПубличная офертаУсловия использованияПолитика конфиденциальностиПоддержка
←К теме Tailwind CSSВсе вопросы
Tailwind CSSJuniorТеория

Что такое Tailwind CSS и что означает подход «utility-first»?

В закладки
Сначала попробуйте ответить сами30 секунд
Сравнить с ответом ↓

Tailwind CSS — CSS-фреймворк с подходом utility-first: вместо кастомных CSS-классов разработчик применяет атомарные утилиты прямо в HTML (bg-white, p-4, flex, text-lg). Production-бандл маленький (~5–30 KB), так как включаются только используемые утилиты.

Подход utility-first

В традиционном CSS вы пишете семантические классы:

/* Традиционный подход */
.card {
  background: white;
  border-radius: 8px;
  padding: 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  margin-bottom: 16px;
}

.card-title {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 8px;
}

В Tailwind те же стили пишутся через утилитарные классы в HTML:

<!-- Tailwind utility-first -->
<div class="bg-white rounded-lg p-4 shadow-md mb-4">
  <h2 class="text-lg font-semibold mb-2">Заголовок карточки</h2>
  <p class="text-gray-600 text-sm">Описание</p>
</div>

Что такое Tailwind CSS

Tailwind CSS — CSS-фреймворк с подходом «utility-first». Вместо написания собственных CSS-классов с семантическими именами (.card, .btn-primary) разработчик применяет небольшие, однозадачные утилитарные классы прямо в HTML. Каждый такой класс делает ровно одно CSS-свойство: flex, mt-4, text-center, bg-blue-500.

Установка и настройка

# Tailwind CSS v4 (актуальная версия)
npm install tailwindcss @tailwindcss/vite
/* globals.css */
@import "tailwindcss";

@theme {
  --color-brand: #3b82f6;
  --font-sans: 'Inter', sans-serif;
}

Адаптивный дизайн и состояния

<!-- Breakpoints: sm: md: lg: xl: 2xl: -->
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
  <!-- Состояния: hover: focus: active: disabled: -->
  <button class="bg-blue-500 hover:bg-blue-600 active:bg-blue-700
                 text-white font-medium px-4 py-2 rounded-md
                 focus-visible:outline-2 focus-visible:outline-blue-500
                 disabled:opacity-50 disabled:cursor-not-allowed
                 transition-colors duration-200">
    Нажми меня
  </button>
</div>

Произвольные значения

<!-- Квадратные скобки для произвольных значений -->
<div class="w-[342px] h-[200px] bg-[#1a1a2e] mt-[13px]">
  <p class="text-[15px] leading-[1.6] text-[rgb(255,255,255,0.8)]">
    Произвольные значения
  </p>
</div>

Преимущества utility-first

  • Нет роста CSS: все стили уже есть в Tailwind, новые компоненты не добавляют новый CSS — только переиспользуют утилиты.
  • Нет придумывания имён: не нужно называть .card-wrapper-inner-content.
  • Локальность изменений: стили и разметка в одном месте, не нужно переключаться между HTML и CSS файлами.
  • Маленький production-бандл: Tailwind сканирует исходники и включает только используемые утилиты — обычно 5–30 KB.

Подводные камни

  • Длинные строки классов ухудшают читаемость HTML — используйте компоненты (React/Vue) или утилиту clsx/cn для условных классов.
  • Динамические классы (шаблонные строки типа `bg-${color}-500`) не проходят через content-scanner и вырезаются из production-бандла.
  • Без линтера легко написать конфликтующие классы (flex block) — используйте eslint-plugin-tailwindcss или prettier-plugin-tailwindcss для сортировки и проверки.
  • @apply в больших объёмах сводит на нет преимущества utility-first и дублирует специфичность CSS.
  • Tailwind v4 несовместим с конфигурацией v3 (tailwind.config.js) — при обновлении нужна ручная миграция токенов в @theme.
  • Произвольные значения в квадратных скобках стоит избегать — они выпадают из design system и не переиспользуются.
  • Тёмная тема через dark: по умолчанию работает через prefers-color-scheme, а не CSS-класс — для управляемого переключения нужен darkMode: 'class'.
  • Большое количество утилит в базовых компонентах (кнопки, инпуты) нужно абстрагировать в переиспользуемые React/Vue-компоненты, иначе изменение стиля кнопки требует правки во всём проекте.

Частые вопросы на собеседовании

  • Каковы лучшие практики организации Tailwind-классов в больших кодовых базах?
  • Как работает адаптивный дизайн в Tailwind? Объясните префиксы breakpoints (sm, md, lg, xl, 2xl).
  • Что такое массив content в конфигурации Tailwind и почему он важен?
  • В каких типах frontend-проектов Tailwind CSS даёт реальный выигрыш, а где будет избыточен или неудачен?

Типичные ошибки

  • Смешивать «Tailwind CSS и utility-first» с похожим механизмом без критерия выбора.
  • Игнорировать риск: неверно оценить границы применения темы «Tailwind CSS и utility-first» и получить хрупкое решение.
  • Показывать только синтаксис и не объяснять поведение в runtime или сборке.

Что проверяет интервьюер

  • Объясняет сборка интерфейса из маленьких атомарных классов вместо написания большого слоя custom CSS.
  • Показывает на примере, как работает: Tailwind сканирует исходники, находит используемые utility-классы и генерирует только нужный CSS; классы являются API поверх design tokens.
  • Называет production-нюанс и граничный случай для темы «Tailwind CSS и utility-first».

Как вы знаете этот вопрос?

Проверить себя по теме Tailwind CSS →

Источники

  • https://tailwindcss.com/docs/styling-with-utility-classes
  • https://tailwindcss.com/docs/detecting-classes-in-source-files
Следующий вопрос→Каковы лучшие практики организации Tailwind-классов в больших кодовых базах?

Связанные темы

Tailwind CSScss-architecturedesign-systems