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

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

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

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

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

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

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

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

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

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

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

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

Все подборки
  • Python17 131
  • Облачные технологии14 071
  • QA вакансии3 448
  • Backend вакансии2 087
  • Инженер данных1 783
  • Продакт-менеджер1 221

Разработка

  • Android1 862
  • iOS1 700
  • Fullstack вакансии976
  • AI вакансии943
  • Frontend вакансии738
  • Mobile вакансии44

По стеку

  • Go8 685
  • Java6 537
  • Node.js2 024
  • .NET1 723
  • Kotlin1 612
  • Rust1 462
  • C#710
  • PHP682
  • C++574

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

  • Kubernetes7 766
  • DevOps вакансии6 046
  • Linux-инфраструктура5 493
  • Terraform / IaC4 271
  • CI/CD3 241
  • Мониторинг и Observability1 790
  • SRE564
  • Кибербезопасность445

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

  • Data Scientist1 120
  • Бизнес-аналитик913
  • Аналитик данных834
  • Системный аналитик150

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

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

По регионам

  • Вакансии в США43 094
  • Вакансии в Европе23 429
  • Вакансии в Канаде4 376
  • Работа в России3 903

По формату

  • Удалённые вакансии72 764
  • Релокация в США43 097
  • Гибридная работа12 388
  • Офисная работа7 092

По уровню

  • Senior вакансии41 715
  • Middle вакансии20 188
  • Junior вакансии6 560

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

Все компании
  • Wise190 вакансий
  • Rakuten189 вакансий
  • ASML166 вакансий
  • Grab137 вакансий
  • Celonis39 вакансий
  • Spotify37 вакансий
  • Adyen28 вакансий
  • Infobip28 вакансий
  • Monzo20 вакансий
  • Darktrace16 вакансий

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

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

Что такое модуль next/font и почему его рекомендуют использовать?

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

next/font загружает шрифты при билде и отдаёт их с того же домена, автоматически добавляя preload, size-adjust для минимизации CLS и устраняя запросы к внешним CDN вроде Google Fonts.

Два источника: Google Fonts и локальные файлы

// app/layout.tsx — Google Font
import { Inter, Roboto_Mono } from "next/font/google";

const inter = Inter({
  subsets: ["latin", "cyrillic"],
  variable: "--font-inter",
  display: "swap",
});

const robotoMono = Roboto_Mono({
  subsets: ["latin"],
  variable: "--font-mono",
  weight: ["400", "700"],
});

export default function RootLayout({ children }: { children: React.ReactNode }) {
  return (
    <html lang="en" className={`${inter.variable} ${robotoMono.variable}`}>
      <body className="font-sans">{children}</body>
    </html>
  );
}
// Локальный шрифт
import localFont from "next/font/local";

const myFont = localFont({
  src: [
    { path: "../fonts/MyFont-Regular.woff2", weight: "400" },
    { path: "../fonts/MyFont-Bold.woff2", weight: "700" },
  ],
  variable: "--font-custom",
  display: "swap",
});

Модуль next/font

Модуль next/font встраивает шрифты напрямую в процесс сборки. Он загружает файлы шрифтов во время билда, размещает их в /_next/static/media/ и генерирует CSS-переменную, которую вы применяете через className. Никакого запроса на fonts.googleapis.com в браузере не происходит.

Подключение через Tailwind

// tailwind.config.ts
import type { Config } from "tailwindcss";

export default {
  theme: {
    extend: {
      fontFamily: {
        sans: ["var(--font-inter)"],
        mono: ["var(--font-mono)"],
      },
    },
  },
} satisfies Config;

Почему рекомендуют использовать

  • Нет внешних запросов — шрифты отдаются с того же домена, что устраняет DNS-lookup и TLS-handshake к Google.
  • Автоматический size-adjust — Next.js вычисляет size-adjust для fallback-шрифта, чтобы минимизировать layout shift (CLS).
  • font-display: swap — задаётся явно, текст виден сразу с системным шрифтом.
  • Приватность — IP пользователя не передаётся Google.
  • Preload — Next.js автоматически добавляет <link rel="preload"> для нужных начертаний.
  • Subset-контроль — загружается только нужный subset (latin, cyrillic), а не весь файл шрифта.

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

  • Экземпляр шрифта нужно создавать за пределами компонента (на уровне модуля) — иначе он пересоздаётся при каждом рендере и файл шрифта будет дублироваться в бандле.
  • Если указать variable, нужно применять className к <html> или <body>, иначе CSS-переменная не будет доступна дочерним компонентам.
  • Google Fonts требует интернет-доступа во время next build — в CI без доступа к сети сборка упадёт. Для таких сред используйте next/font/local.
  • Опция weight обязательна для шрифтов с несколькими начертаниями (кроме variable fonts) — без неё Next.js загрузит все доступные веса.
  • Параметр display: "optional" полностью предотвращает layout shift, но шрифт может не показаться при медленной сети — аккуратно с выбором стратегии.
  • В Turbopack режиме некоторые edge-случаи с localFont и относительными путями могут давать ошибки — всегда проверяйте путь относительно файла, где объявляется шрифт.
  • Кириллические шрифты из Google нужно явно запросить через subsets: ["cyrillic"] — иначе символы будут рендериться fallback-шрифтом.

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

  • Подключать @font-face в CSS параллельно с next/font
  • Грузить все начертания вместо нужного подмножества
  • Импортировать загрузчик внутри функции компонента
  • Забыть указать кириллический subset для русского текста

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

  • Знает, что шрифты самохостятся
  • Понимает роль display: swap и size-adjust
  • Умеет использовать variable с Tailwind/CSS-vars
  • Выбирает нужные subsets и weight

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

Проверить себя по теме Next.js →

Источники

  • https://nextjs.org/docs/app/api-reference/components/font
  • https://nextjs.org/docs/app/building-your-application/optimizing/fonts
←Предыдущий вопросЧто такое Parallel Routes и Intercepting Routes?

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

Next.jscore-web-vitalsfont-loadingnextjs-optimization

Вакансии с этим навыком

  • Fullstack-разработчик (Middle+ / Senior)
  • Fullstack-разработчик
  • Fullstack Developer (React, Next.js, PHP, AI)
  • Senior Full-stack Engineer | AI
  • Head of SEO & GEO

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

  • Как оптимизировать производительность Next.js-приложения?
  • Что такое React Server Components в Next.js? Чем они отличаются от Client Components?
  • В каких типах frontend-проектов Next.js даёт реальный выигрыш, а где будет избыточен или неудачен?
  • Объясните SSR, SSG, ISR и CSR в Next.js. Когда использовать каждый подход?