# HeadHunter RU

267 статей от авторов компании hh.ru

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Investigating Redis Client Failures After a Node Loss at hh.ru

DevFeed: [Investigating Redis Client Failures After a Node Loss at hh.ru](<https://devfeed.tech/articles/redis-30674.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1074194/>)

Author: nicholasgribanov (hh.ru)

Published: 2026-08-26T05:30:49Z

Content type: article

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [Redis](<https://devfeed.tech/topics/redis.md>)

Tags: [consul](<https://devfeed.tech/tags/consul.md>), [downtime](<https://devfeed.tech/tags/downtime.md>), [java](<https://devfeed.tech/tags/java.md>), [jedis](<https://devfeed.tech/tags/jedis.md>), [redis](<https://devfeed.tech/tags/redis.md>), [sre](<https://devfeed.tech/tags/sre.md>), [tag-1d4e49052118](<https://devfeed.tech/tags/tag-1d4e49052118.md>), [tag-68e701e78517](<https://devfeed.tech/tags/tag-68e701e78517.md>), [tag-b0a411324cb6](<https://devfeed.tech/tags/tag-b0a411324cb6.md>), [tag-b92bf5906bbd](<https://devfeed.tech/tags/tag-b92bf5906bbd.md>), [tag-dfac9042ce7b](<https://devfeed.tech/tags/tag-dfac9042ce7b.md>), [timeout](<https://devfeed.tech/tags/timeout.md>)

### AI overview

A Platform team at hh.ru investigates incidents in its internal Redis client, including a 57-minute outage after a Redis node was lost. The team used controlled-load testing, Jedis updates, timeout and pool experiments, new metrics, and logs to trace the failures to a code issue and improve client stability.

### Source excerpt

Пару лет назад мы устроили настоящее расследование серии инцидентов в поисках скрытого дефекта нашего Redis-клиента. Команда воспроизводила сбои под контролируемой нагрузкой, проверяла одну гипотезу за другой, обновляла Jedis, экспериментировала с таймаутами и размерами пулов -- но ничего не помогало. А помогли новые метрики и логи, настойчивость команды, ночные эксперименты и готовность разбирать поведение системы до последнего соединения. Получилась история с неожиданными поворотами, ложными следами и одной лишней строчкой кода в роли главного подозреваемого -- а её итогом стал Redis-клиент, который оказался устойчивее, чем был до начала расследования. Меня зовут Коля Грибанов, я тимлид команды "Платформа" в hh.ru. В статье расскажу, почему потеря одной ноды Redis вызывала шторм из десятков тысяч соединений, и как мы шаг за шагом искали причину инцидентов. Читать далее

## Инференс LLM: от KV-кэша до продакшен-деплоя

DevFeed: [Инференс LLM: от KV-кэша до продакшен-деплоя](<https://devfeed.tech/articles/llm-kv-30672.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1062318/>)

Author: a\_ryzhov (hh.ru, Конференции Олега Бунина (Онтико))

Published: 2026-07-27T05:30:45Z

Content type: tutorial

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [Large Language Model](<https://devfeed.tech/topics/llm.md>), [Caching](<https://devfeed.tech/topics/caching.md>), [on-prem](<https://devfeed.tech/topics/on-prem.md>), [genai](<https://devfeed.tech/topics/genai.md>), [MLOps](<https://devfeed.tech/topics/mlops.md>), [sglang](<https://devfeed.tech/topics/sglang.md>), [vllm](<https://devfeed.tech/topics/vllm.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [compute](<https://devfeed.tech/tags/compute.md>), [genai](<https://devfeed.tech/tags/genai.md>), [http](<https://devfeed.tech/tags/http.md>), [inference](<https://devfeed.tech/tags/inference.md>), [kv-cache](<https://devfeed.tech/tags/kv-cache.md>), [llm](<https://devfeed.tech/tags/llm.md>), [mlops](<https://devfeed.tech/tags/mlops.md>), [on-prem](<https://devfeed.tech/tags/on-prem.md>), [sglang](<https://devfeed.tech/tags/sglang.md>), [sram](<https://devfeed.tech/tags/sram.md>), [vllm](<https://devfeed.tech/tags/vllm.md>)

### AI overview

This Russian-language developer article explains how LLM inference behaves in on-premises production environments in 2026. It argues that GPU memory management is the main efficiency constraint, describes how KV caching shifts decoding from compute-bound to memory-bandwidth-bound work, and introduces vLLM and SGLang as ways to address the problem.

### Source excerpt

Привет! Я Саша Рыжов, MLOps-инженер в hh.ru, уже три года занимаюсь развитием инфраструктуры для искусственного интеллекта. Компании, которые развивают GenAI, рано или поздно приходят к задачам по запуску LLM на собственном железе. В статье я расскажу, как обстоят дела с движками инференса в 2026 году и как запустить on-prem-прод и не изобрести при этом велосипед. Читать далее

## Reducing LLM token costs in a code-coverage analysis bot

DevFeed: [Reducing LLM token costs in a code-coverage analysis bot](<https://devfeed.tech/articles/llm-30671.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1057108/>)

Author: iBljad (hh.ru)

Published: 2026-07-16T07:25:30Z

Content type: tutorial

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [Large Language Model](<https://devfeed.tech/topics/llm.md>), [ci](<https://devfeed.tech/topics/ci.md>), [Java](<https://devfeed.tech/topics/java.md>)

Tags: [ci](<https://devfeed.tech/tags/ci.md>), [java](<https://devfeed.tech/tags/java.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [llm](<https://devfeed.tech/tags/llm.md>), [python](<https://devfeed.tech/tags/python.md>), [qa](<https://devfeed.tech/tags/qa.md>), [qa-automation](<https://devfeed.tech/tags/qa-automation.md>), [qa-testing](<https://devfeed.tech/tags/qa-testing.md>), [sonarqube](<https://devfeed.tech/tags/sonarqube.md>), [tag-ad8c0a243366](<https://devfeed.tech/tags/tag-ad8c0a243366.md>), [tag-bc4e97082857](<https://devfeed.tech/tags/tag-bc4e97082857.md>)

### AI overview

The article describes how hh optimized prompts for an LLM-powered bot that analyzes test coverage. The approach reduces token use by skipping unchanged, trivial, and very short methods, prioritizing more important code, and applying additional cost-saving practices.

### Source excerpt

При анализе кода с помощью LLM всегда есть соблазн закинуть в модель всё сразу -- и пусть сама разбирается. Но на больших объёмах кода стоимость и время такого "пусть разбирается" быстро приводят нас в чувства и заставляют искать пути более экономной траты токенов. Привет, меня зовут Андрей, я занимаюсь автоматизацией тестирования в hh. В этой статье расскажу, как мы оптимизировали запросы нашего бота, который анализирует тестовое покрытие с помощью LLM, чтобы получить максимум пользы при минимальных затратах. Антоним токенмаксинга - токенпожарскинг токенминнинг? Читать далее

## Навигация в Jetpack Compose без магии: что на самом деле делают библиотеки навигации

DevFeed: [Навигация в Jetpack Compose без магии: что на самом деле делают библиотеки навигации](<https://devfeed.tech/articles/jetpack-compose-30670.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1052310/>)

Author: karenkov\_id (hh.ru)

Published: 2026-07-01T08:20:40Z

Content type: tutorial

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [Compose](<https://devfeed.tech/topics/compose.md>), [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Android](<https://devfeed.tech/topics/android.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [compose](<https://devfeed.tech/tags/compose.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [lifecycle](<https://devfeed.tech/tags/lifecycle.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [modo](<https://devfeed.tech/tags/modo.md>), [remembersaveable](<https://devfeed.tech/tags/remembersaveable.md>), [saveablestateholder](<https://devfeed.tech/tags/saveablestateholder.md>), [tag-08a48a9394c3](<https://devfeed.tech/tags/tag-08a48a9394c3.md>), [tag-f538878e20ff](<https://devfeed.tech/tags/tag-f538878e20ff.md>), [viewmodel](<https://devfeed.tech/tags/viewmodel.md>)

### AI overview

This article explains why naïve screen-list navigation is insufficient in Jetpack Compose and examines how the Modo navigation library addresses screen state isolation, navigation-graph persistence, lifecycle and resource cleanup, and instance stability.

### Source excerpt

Вы когда-нибудь задумывались, зачем нужны библиотеки для навигации в Jetpack Compose? Почему мы не можем просто взять mutableStateOf со списком экранов и переключаться между ними? Оказывается, если мы попробуем реализовать такой наивный подход, то столкнёмся с рядом проблем: rememberSaveable не работает, ViewModel не очищаются после ухода с экрана, Lifecycle не работает корректно и многое другое. В статье разберём, как работают библиотеки навигации в Jetpack Compose и какие задачи они решают на примере библиотеки навигации Modo. Читать далее

## LLM-судья для нейроразбора резюме на hh

DevFeed: [LLM-судья для нейроразбора резюме на hh](<https://devfeed.tech/articles/llm-hh-30669.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1050174/>)

Author: Mentalitet (hh.ru)

Published: 2026-06-22T05:31:17Z

Content type: article

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [Large Language Model](<https://devfeed.tech/topics/llm.md>), [Machine learning](<https://devfeed.tech/topics/machine-learning.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [ai-quality](<https://devfeed.tech/tags/ai-quality.md>), [eval](<https://devfeed.tech/tags/eval.md>), [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [hr](<https://devfeed.tech/tags/hr.md>), [llm](<https://devfeed.tech/tags/llm.md>), [llm-10b5a83db3c5](<https://devfeed.tech/tags/llm-10b5a83db3c5.md>), [llm-as-a-judge](<https://devfeed.tech/tags/llm-as-a-judge.md>), [llm-as-judge](<https://devfeed.tech/tags/llm-as-judge.md>), [quality-assurance](<https://devfeed.tech/tags/quality-assurance.md>), [tag-61cd5a476b1d](<https://devfeed.tech/tags/tag-61cd5a476b1d.md>), [tag-a939ae104bb0](<https://devfeed.tech/tags/tag-a939ae104bb0.md>), [tag-b6914c0b0244](<https://devfeed.tech/tags/tag-b6914c0b0244.md>), [tag-d96e238f1419](<https://devfeed.tech/tags/tag-d96e238f1419.md>), [tag-e7e38deac50c](<https://devfeed.tech/tags/tag-e7e38deac50c.md>)

### AI overview

This article describes how hh.ru designed an LLM judge for its resume-analysis feature in an AI assistant. It explains why reliable evaluation requires its own rubrics, datasets, quality metrics, operating-cost considerations, and controls for hallucinations and interpretation errors. The system assesses candidates against criteria relevant to a specific position, which may be extracted from a vacancy or defined by an employer.

### Source excerpt

Создать LLM-судью легко. Гораздо сложнее сделать так, чтобы его оценкам можно было доверять. Мы убедились в этом на практике при разработке нейроразбора резюме для ИИ-помощника hh.ru. Быстро выяснилось, что хороший LLM-судья -- это отдельный продукт со своими рубриками, датасетами, метриками качества и стоимостью эксплуатации. Меня зовут Женя Орлов, я LLM Eval Lead. В этой статье расскажу, как мы проектировали систему оценки для нейроразбора резюме, почему отказались от наивных подходов и какие выводы сделали по ходу разработки. Читать далее

## Измерь меня, если сможешь: как проводить ревью работы команды через призму метрик

DevFeed: [Измерь меня, если сможешь: как проводить ревью работы команды через призму метрик](<https://devfeed.tech/articles/article-30668.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1046399/>)

Author: Xanderblinov (hh.ru, Конференции Олега Бунина (Онтико))

Published: 2026-06-16T05:30:14Z

Content type: opinion

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [lead time](<https://devfeed.tech/topics/lead-time.md>), [Spring Boot](<https://devfeed.tech/topics/spring-boot.md>)

Tags: [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [lead-time](<https://devfeed.tech/tags/lead-time.md>), [spring-boot](<https://devfeed.tech/tags/spring-boot.md>), [tag-1fa41e7deaba](<https://devfeed.tech/tags/tag-1fa41e7deaba.md>), [tag-3aa328ccc6ec](<https://devfeed.tech/tags/tag-3aa328ccc6ec.md>), [tag-4e7e01a57307](<https://devfeed.tech/tags/tag-4e7e01a57307.md>), [tag-b92bf5906bbd](<https://devfeed.tech/tags/tag-b92bf5906bbd.md>), [tag-c607c3dc8776](<https://devfeed.tech/tags/tag-c607c3dc8776.md>), [tag-c6d5400b7d88](<https://devfeed.tech/tags/tag-c6d5400b7d88.md>)

### AI overview

A technical lead at hh.ru explains how the company reviews team performance through metrics. Using a misleading productivity dashboard as an example, the article discusses problems caused by inconsistent feature definitions, differing task sizes, and irrelevant work items in the data.

### Source excerpt

Привет, Хабр! Я Александр Блинов -- технический руководитель B2C-направления в hh.ru (та самая часть, которую знают все соискатели). В статье расскажу о том, как мы работаем с метриками, поделюсь своим подходом к ним и приведу пример нескольких незаурядных метрик, которые вы сможете использовать в своих проектах. Читать далее

## Как мы мигрируем навигацию на Compose в Android-приложениях с 400+ экранами

DevFeed: [Как мы мигрируем навигацию на Compose в Android-приложениях с 400+ экранами](<https://devfeed.tech/articles/compose-android-400-30667.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1044842/>)

Author: horseunnamed (hh.ru)

Published: 2026-06-09T08:00:40Z

Content type: article

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [Compose](<https://devfeed.tech/topics/compose.md>), [Android](<https://devfeed.tech/topics/android.md>), [ui](<https://devfeed.tech/topics/ui.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-development](<https://devfeed.tech/tags/android-development.md>), [compose](<https://devfeed.tech/tags/compose.md>), [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [migration](<https://devfeed.tech/tags/migration.md>), [mobile-development](<https://devfeed.tech/tags/mobile-development.md>), [modo](<https://devfeed.tech/tags/modo.md>), [navigation](<https://devfeed.tech/tags/navigation.md>), [refactoring](<https://devfeed.tech/tags/refactoring.md>), [tag-08a48a9394c3](<https://devfeed.tech/tags/tag-08a48a9394c3.md>), [tag-ae979152fd5d](<https://devfeed.tech/tags/tag-ae979152fd5d.md>), [tag-f538878e20ff](<https://devfeed.tech/tags/tag-f538878e20ff.md>), [ui](<https://devfeed.tech/tags/ui.md>), [vj](<https://devfeed.tech/tags/vj.md>)

### AI overview

An Android tech lead at hh.ru describes the ongoing migration of two Android applications from Fragment-based navigation toward a Compose-first approach. The article explains the scale of the migration, the hierarchy of navigation containers, nested navigation flows, and multistack navigation between main application sections.

### Source excerpt

Привет, Хабр! Меня зовут Константин Дубинко, я -- Android-техлид в hh.ru. Сейчас мы заканчиваем большой переезд навигации в двух Android-приложениях -- для соискателей и работодателей. В этой статье я покажу, как у нас там устроена навигация, почему мы решили отказаться от Fragment-навигации и как превратили хаотичную миграцию с "островками" новой архитектуры в управляемый процесс с метриками и понятным планом работ. Заодно расскажу, какие решения сработали, какие -- нет, и что я сделал бы иначе, если бы начинал заново. Читать далее

## Бэклог болей: как hh работает с тем, что не нравится пользователям

DevFeed: [Бэклог болей: как hh работает с тем, что не нравится пользователям](<https://devfeed.tech/articles/hh-30666.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1039168/>)

Author: daaaniel (hh.ru)

Published: 2026-05-26T05:31:12Z

Content type: opinion

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [User experience (UX)](<https://devfeed.tech/topics/ux.md>)

Tags: [hh](<https://devfeed.tech/tags/hh.md>), [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [tag-0323c1c6735a](<https://devfeed.tech/tags/tag-0323c1c6735a.md>), [tag-52c7ae1e39c6](<https://devfeed.tech/tags/tag-52c7ae1e39c6.md>), [tag-8e9a901cca08](<https://devfeed.tech/tags/tag-8e9a901cca08.md>), [tag-d749bb423e1e](<https://devfeed.tech/tags/tag-d749bb423e1e.md>), [tag-edd540e19eb5](<https://devfeed.tech/tags/tag-edd540e19eb5.md>), [usability](<https://devfeed.tech/tags/usability.md>), [ux](<https://devfeed.tech/tags/ux.md>)

### AI overview

A product research lead at hh.ru explains how the team uses a backlog of user pain points to process feedback and improve products within realistic business and resource constraints. The article contrasts research for future interface changes with work on problems from previous launches, including a case study involving the redesign of the employer homepage.

### Source excerpt

Всем привет! Меня зовут Данила Максишко, я руковожу командой продуктовых исследователей в hh.ru. В статье расскажу, как мы работаем с обратной связью через важный инструмент -- бэклог болей пользователей. Это текст от исследователя для исследователей. Если вы строите или масштабируете ресёрчи у себя, наш опыт поможет избежать части ошибок и быстрее выстроить рабочую систему. Читать далее

## hh.ru's Test Framework Experiments for Handling Flaky Tests

DevFeed: [hh.ru's Test Framework Experiments for Handling Flaky Tests](<https://devfeed.tech/articles/flaky-30665.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1031996/>)

Author: yzhanov (hh.ru)

Published: 2026-05-07T07:10:11Z

Content type: article

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [Jenkins](<https://devfeed.tech/topics/jenkins.md>), [Job](<https://devfeed.tech/topics/job.md>), [ui](<https://devfeed.tech/topics/ui.md>)

Tags: [flaky](<https://devfeed.tech/tags/flaky.md>), [hh](<https://devfeed.tech/tags/hh.md>), [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [jenkins](<https://devfeed.tech/tags/jenkins.md>), [job](<https://devfeed.tech/tags/job.md>), [qa](<https://devfeed.tech/tags/qa.md>), [qa-automation](<https://devfeed.tech/tags/qa-automation.md>), [qa-automation-engineer](<https://devfeed.tech/tags/qa-automation-engineer.md>), [qa-engineer](<https://devfeed.tech/tags/qa-engineer.md>), [qa-management](<https://devfeed.tech/tags/qa-management.md>), [qa-mobile](<https://devfeed.tech/tags/qa-mobile.md>), [qa-testing](<https://devfeed.tech/tags/qa-testing.md>), [retry](<https://devfeed.tech/tags/retry.md>), [tag-4adf7d504f34](<https://devfeed.tech/tags/tag-4adf7d504f34.md>), [tag-95a52fc82d81](<https://devfeed.tech/tags/tag-95a52fc82d81.md>), [tag-b7f0358ac141](<https://devfeed.tech/tags/tag-b7f0358ac141.md>), [tag-e34f6dec12c4](<https://devfeed.tech/tags/tag-e34f6dec12c4.md>), [tag-e932065bc8da](<https://devfeed.tech/tags/tag-e932065bc8da.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

An hh.ru engineer describes experiments in the test framework to reduce the impact of flaky tests on release automation. One experiment allowed repeated retries until the queue emptied; it added about three minutes to build time and was not adopted in production.

### Source excerpt

Привет, Хабр! Меня зовут Юра Жанов, я занимаюсь автоматизацией тестирования в hh.ru. Про flaky-тесты написано много, борьбу с ними не прекращаем и мы. Но сегодня немного о другом -- хочу поделиться нашим опытом минимизации неприятностей, которые наносят такие тесты. Для этого мы провели ряд экспериментов со стороны тестового фреймворка. Читать далее

## Как измерить лидерство: история модели компетенций тимлида в hh.ru

DevFeed: [Как измерить лидерство: история модели компетенций тимлида в hh.ru](<https://devfeed.tech/articles/hh-ru-30663.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1016034/>)

Author: Xanderblinov (hh.ru, Конференции Олега Бунина (Онтико))

Published: 2026-04-15T09:00:32Z

Content type: opinion

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [тимлид](<https://devfeed.tech/topics/tag-1d4e49052118.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [github](<https://devfeed.tech/tags/github.md>), [hh](<https://devfeed.tech/tags/hh.md>), [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [tag-1d4e49052118](<https://devfeed.tech/tags/tag-1d4e49052118.md>), [tag-1fa41e7deaba](<https://devfeed.tech/tags/tag-1fa41e7deaba.md>), [tag-3aa328ccc6ec](<https://devfeed.tech/tags/tag-3aa328ccc6ec.md>), [tag-6a9361e4e24b](<https://devfeed.tech/tags/tag-6a9361e4e24b.md>), [tag-c607c3dc8776](<https://devfeed.tech/tags/tag-c607c3dc8776.md>), [tag-c6d5400b7d88](<https://devfeed.tech/tags/tag-c6d5400b7d88.md>), [teamlead](<https://devfeed.tech/tags/teamlead.md>)

### AI overview

The article describes hh.ru's seven-year effort to develop and use a competency model for evaluating and improving team-lead management maturity. It covers the shift from selecting leads based mainly on coding speed to structured assessment using RACI, competency levels, GitHub reviews, 360-degree feedback, and management grades.

### Source excerpt

Семь лет назад тимлидом в hh.ru становился тот, кто быстрее всех пишет код и катит его на прод. Спойлер: этого оказалось недостаточно. Так началась история создания модели компетенций, которая пережила десятки команд, несколько волн роста компании и до сих пор влияет на то, как мы понимаем лидерство. Привет, Хабр! Меня зовут Александр Блинов, я технический руководитель B2C направления в hh.ru. В моей зоне ответственности 14 команд и более 80 сотрудников. Эта статья выросла из моего доклада для TeamLead Conf, и в ней я поделюсь нашим опытом оценки управленческой зрелости тимлида в крупной продуктовой компании. В hh.ru мы прошли путь от хаотичных обсуждений в Google Docs до живой модели компетенций с GitHub-ревью, оценкой 360 и управленческими грейдами. Я поделюсь, какие уроки мы извлекли, какие шишки набили, что делать стоит, а что точно обречено на неудачу. Читать далее

## UX-интервью: почему пользователи не становятся респондентами?

DevFeed: [UX-интервью: почему пользователи не становятся респондентами?](<https://devfeed.tech/articles/ux-30664.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1020828/>)

Author: ExKito (hh.ru)

Published: 2026-04-09T05:01:24Z

Content type: article

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [User experience (UX)](<https://devfeed.tech/topics/ux.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [b2b](<https://devfeed.tech/tags/b2b.md>), [tag-0b0c14b94a92](<https://devfeed.tech/tags/tag-0b0c14b94a92.md>), [tag-30f6cb6f96d1](<https://devfeed.tech/tags/tag-30f6cb6f96d1.md>), [tag-3f810a35cf10](<https://devfeed.tech/tags/tag-3f810a35cf10.md>), [tag-8218763b4414](<https://devfeed.tech/tags/tag-8218763b4414.md>), [tag-9369990d5d97](<https://devfeed.tech/tags/tag-9369990d5d97.md>), [tag-edd540e19eb5](<https://devfeed.tech/tags/tag-edd540e19eb5.md>), [tag-f46aa72a3732](<https://devfeed.tech/tags/tag-f46aa72a3732.md>), [ux](<https://devfeed.tech/tags/ux.md>)

### AI overview

The hh.ru team analyzes why users decline or fail to complete UX interviews. A survey found that only about one-third of job seekers and employers are willing to provide feedback, while lack of time and limited understanding of UX interviews are major barriers.

### Source excerpt

Привет! Мы -- команда hh.ru: Андрей Панкратов, исследователь пользовательского опыта, Регина Насибулина и Лиза Спицына, специалисты по рекруту респондентов. Мы на регулярной основе проводим интервью с пользователями, чтобы лучше понимать их опыт и быть на связи с соискателями и работодателями. Важный момент: в этих беседах мы ищем не новых сотрудников в компанию, а именно тех людей, которые готовы поделиться опытом использования нашего сервиса. Рекрут респондентов в hh.ru ведётся двумя способами: через опросы на сервисе и с помощью целевого обзвона аудитории. По итогам 2025 года из 10 согласившихся поучаствовать до интервью доходят только 7. Остальные отказываются прямо перед встречей или просто перестают выходить на связь. Мы проанализировали причины отказов участвовать, чтобы найти точки роста и повысить мотивацию пользователей. Читать далее

## Инженер против попугая: пишем промпты для больших продакшен-сервисов

DevFeed: [Инженер против попугая: пишем промпты для больших продакшен-сервисов](<https://devfeed.tech/articles/article-30662.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1015896/>)

Author: polina\_belokrys (hh.ru)

Published: 2026-03-31T05:00:57Z

Content type: tutorial

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [genai](<https://devfeed.tech/topics/genai.md>), [Machine learning](<https://devfeed.tech/topics/machine-learning.md>), [программирование](<https://devfeed.tech/topics/tag-2c039dce53be.md>)

Tags: [genai](<https://devfeed.tech/tags/genai.md>), [llm](<https://devfeed.tech/tags/llm.md>), [ml](<https://devfeed.tech/tags/ml.md>), [tag-055aee430837](<https://devfeed.tech/tags/tag-055aee430837.md>), [tag-2c039dce53be](<https://devfeed.tech/tags/tag-2c039dce53be.md>), [tag-61cd5a476b1d](<https://devfeed.tech/tags/tag-61cd5a476b1d.md>), [tag-86b843454893](<https://devfeed.tech/tags/tag-86b843454893.md>), [tag-8ad48733f33c](<https://devfeed.tech/tags/tag-8ad48733f33c.md>), [tag-c8d154c0a625](<https://devfeed.tech/tags/tag-c8d154c0a625.md>), [tool](<https://devfeed.tech/tags/tool.md>)

### AI overview

A prompt engineer at hh.ru explains how prompting for production services differs from everyday chatbot use. Production prompt systems combine multiple prompts, structured data, tool calling, constraints, testing, and structured design to produce predictable, safe responses across diverse user scenarios.

### Source excerpt

Привет, Хабр! Меня зовут Полина Белокрыс, я промпт-инженер в hh.ru. Моя команда развивает ИИ-ассистента для работодателей, который берёт на себя рутинные задачи и помогает бизнесу сосредоточиться на главном -- внимательной работе с подходящими кандидатами. В этой статье расскажу, как на самом деле устроен промптинг в продакшене -- и почему написать промпт сложнее, чем просто поболтать с ChatGPT. Статья будет полезна промпт-инженерам, начинающим ML-инженерам и инженерам GenAI, которые работают с языковыми моделями и хотят лучше понимать, как пишутся промпты для продуктовых систем. Читать далее

## Как мы управляем арсеналом из 500 тестовых стендов: инфраструктурный опыт hh.ru

DevFeed: [Как мы управляем арсеналом из 500 тестовых стендов: инфраструктурный опыт hh.ru](<https://devfeed.tech/articles/500-hh-ru-30660.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1009596/>)

Author: wlpnnn (hh.ru)

Published: 2026-03-13T05:10:00Z

Content type: article

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [Testing](<https://devfeed.tech/topics/testing.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [nginx](<https://devfeed.tech/topics/nginx.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [Redis](<https://devfeed.tech/topics/redis.md>), [Ubuntu](<https://devfeed.tech/topics/ubuntu.md>), [Ansible](<https://devfeed.tech/topics/ansible.md>)

Tags: [ansible](<https://devfeed.tech/tags/ansible.md>), [docker](<https://devfeed.tech/tags/docker.md>), [e2e](<https://devfeed.tech/tags/e2e.md>), [iac](<https://devfeed.tech/tags/iac.md>), [jira](<https://devfeed.tech/tags/jira.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [nginx](<https://devfeed.tech/tags/nginx.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [qa](<https://devfeed.tech/tags/qa.md>), [redis](<https://devfeed.tech/tags/redis.md>), [tag-7b800b2da0b8](<https://devfeed.tech/tags/tag-7b800b2da0b8.md>), [tag-9653a3ac62a2](<https://devfeed.tech/tags/tag-9653a3ac62a2.md>), [tag-b3a2b40e0fa4](<https://devfeed.tech/tags/tag-b3a2b40e0fa4.md>), [testing](<https://devfeed.tech/tags/testing.md>), [ubuntu](<https://devfeed.tech/tags/ubuntu.md>)

### AI overview

A QA engineer at hh.ru describes the company's infrastructure for managing 500 test stands. The article explains personal and specialized environments, deployment profiles, isolated Ubuntu-based virtual machines, Docker containers, Kubernetes namespaces, and automated testing workflows linked to Jira.

### Source excerpt

Привет! Меня зовут Карина, я QA-инженер в hh.ru. Наша компания растёт, а вместе с ней -- число команд, вовлечённых в разработку и функционал. Появляются новые сервисы, базы данных, очереди. Каждый компонент требует слаженной работы и надёжной поддержки на тестовых стендах. Сегодня мы работаем с гибкой тестовой средой, которую можно настроить под любую задачу. В статье расскажу, как вся эта сложная система выглядит изнутри. Читать далее

## 16 лет в деле: Разбор вступительных в Школу программистов hh.ru

DevFeed: [16 лет в деле: Разбор вступительных в Школу программистов hh.ru](<https://devfeed.tech/articles/16-hh-ru-30659.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/1004174/>)

Author: tapo4ki (hh.ru)

Published: 2026-02-27T03:02:38Z

Content type: tutorial

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [алгоритмы](<https://devfeed.tech/topics/tag-6faff4be08e9.md>)

Tags: [hh](<https://devfeed.tech/tags/hh.md>), [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [it-9232f08ba2b8](<https://devfeed.tech/tags/it-9232f08ba2b8.md>), [tag-5afe23e1e03c](<https://devfeed.tech/tags/tag-5afe23e1e03c.md>)

### AI overview

An hh.ru development lead introduces a review of entrance tasks for the company's programming school and describes the program's practical training format. Applicants are expected to know basic algorithms and data structures and use Python, Java, or JavaScript.

### Source excerpt

Мы проводим Школу программистов hh уже в 16-й раз. За это время через программу прошли сотни студентов, 115 выпускников в итоге стали частью команды hh и продолжают с нами работать. Формат Школы остается практичным и прозрачным: три месяца теории и четыре месяца командного проекта под руководством наших инженеров -- реальная работа над продуктом с ментором из компании, а не сухие учебные примеры. Преподаватели -- наши сотрудники, практикующие разработчики, менеджеры и дизайнеры, которые делятся своим богатым опытом. Целевая аудитория Школы -- студенты и начинающие специалисты, готовые показать свои знания и сделать первые серьёзные шаги в профессии. Конкурс высокий: ежегодно мы получаем тысячи заявок, но в финал проходят лишь самые мотивированные и подготовленные. В этой статье я проведу традиционный разбор вступительных заданий в нашу Школы программистов, которая для многих становится реальным шансом попасть в hh.ru. Читать далее

## How hh.ru used research to improve its employer homepage

DevFeed: [How hh.ru used research to improve its employer homepage](<https://devfeed.tech/articles/hh-ru-30698.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/993714/>)

Author: daaaniel (hh.ru)

Published: 2026-02-09T05:30:44Z

Content type: article

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [User experience (UX)](<https://devfeed.tech/topics/ux.md>)

Tags: [hh](<https://devfeed.tech/tags/hh.md>), [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [tag-0323c1c6735a](<https://devfeed.tech/tags/tag-0323c1c6735a.md>), [tag-8e9a901cca08](<https://devfeed.tech/tags/tag-8e9a901cca08.md>), [tag-9f373c50e261](<https://devfeed.tech/tags/tag-9f373c50e261.md>), [tag-a939ae104bb0](<https://devfeed.tech/tags/tag-a939ae104bb0.md>), [usability](<https://devfeed.tech/tags/usability.md>), [ux](<https://devfeed.tech/tags/ux.md>)

### AI overview

A hh.ru product research leader describes how the company studied employer needs and used the findings to improve its employer homepage, a key registration entry point. The article also discusses mini-workshops used to redesign an earlier marketing landing page.

### Source excerpt

Привет, Хабр! Меня зовут Данила Максишко, я руковожу отделом продуктовых исследований и клиентского опыта в hh.ru. В статье я хочу поделиться историей ресёрча, который многое дал компании. Речь пойдёт о главной странице hh.ru для работодателей, которую мы успешно обновили с помощью исследователей. Этот кейс наглядно показывает, как ресёрчи помогают понять потребности пользователей, осмысленно доработать продукт и принести пользу бизнесу. Буду рад, если, читая о нашем опыте, вы вспомните также свои важные проекты и вместе со мной немножко порефлексируете. Читать далее

## Когда данных от Apple недостаточно: собираем метрики производительности UI

DevFeed: [Когда данных от Apple недостаточно: собираем метрики производительности UI](<https://devfeed.tech/articles/apple-ui-30697.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/988322/>)

Author: hurmavbatone (hh.ru)

Published: 2026-01-26T14:02:45Z

Content type: tutorial

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [iOS](<https://devfeed.tech/topics/ios.md>), [SwiftUI](<https://devfeed.tech/topics/swiftui.md>), [ui](<https://devfeed.tech/topics/ui.md>)

Tags: [apple](<https://devfeed.tech/tags/apple.md>), [fps](<https://devfeed.tech/tags/fps.md>), [ios](<https://devfeed.tech/tags/ios.md>), [swiftui](<https://devfeed.tech/tags/swiftui.md>), [tag-b92bf5906bbd](<https://devfeed.tech/tags/tag-b92bf5906bbd.md>), [tag-c6d5400b7d88](<https://devfeed.tech/tags/tag-c6d5400b7d88.md>), [tag-cb5ff012b3f0](<https://devfeed.tech/tags/tag-cb5ff012b3f0.md>), [ui](<https://devfeed.tech/tags/ui.md>), [uikit](<https://devfeed.tech/tags/uikit.md>)

### AI overview

An iOS developer from hh.ru describes building custom UI performance metrics collection after Apple's default data proved insufficient for investigating user-reported freezes and slowdowns. The article discusses the company's SwiftUI- and UIKit-based applications and metrics such as Hitch Rate, Hang Rate, and FPS.

### Source excerpt

Привет, Хабр! Меня зовут Виталий Барабанов, я iOS-разработчик в hh.ru. Недавно мы столкнулись с проблемой: пришёл фидбэк от пользователей о тормозах и фризах в мобильном приложении. Но чтобы установить их причину, нам не хватило данных, которые по дефолту собирает Apple. Что делать в такой ситуации? А запилить собственный сбор метрик: с какой угодно фильтрацией, сбором любой информации, интеграцией со своей аналитикой и наблюдением в дебаг-панели! В статье я хочу поделиться с Хабром, как мы это сделали, сколько времени потратили и как интерпретировали результаты. Читать далее

## How Faster Screen Loading Affected Product Metrics in the hh.ru Mobile App

DevFeed: [How Faster Screen Loading Affected Product Metrics in the hh.ru Mobile App](<https://devfeed.tech/articles/hh-30696.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/977376/>)

Author: alektas (hh.ru)

Published: 2025-12-17T05:50:44Z

Content type: article

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [SRE](<https://devfeed.tech/topics/sre.md>), [Android](<https://devfeed.tech/topics/android.md>), [iOS](<https://devfeed.tech/topics/ios.md>)

Tags: [ab-d64cb2e3f30f](<https://devfeed.tech/tags/ab-d64cb2e3f30f.md>), [android](<https://devfeed.tech/tags/android.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [ios](<https://devfeed.tech/tags/ios.md>), [site-reliability](<https://devfeed.tech/tags/site-reliability.md>), [site-reliability-engineering](<https://devfeed.tech/tags/site-reliability-engineering.md>), [sre](<https://devfeed.tech/tags/sre.md>), [tag-b92bf5906bbd](<https://devfeed.tech/tags/tag-b92bf5906bbd.md>), [tag-d1a8ff602d37](<https://devfeed.tech/tags/tag-d1a8ff602d37.md>), [tag-f538878e20ff](<https://devfeed.tech/tags/tag-f538878e20ff.md>), [tag-fa773991fb10](<https://devfeed.tech/tags/tag-fa773991fb10.md>), [ux](<https://devfeed.tech/tags/ux.md>)

### AI overview

An hh.ru development team shares the preparation and interpretation of an A/B experiment that optimized one mobile-app screen, accelerated content loading, and examined the effect on product metrics. The article also discusses applying SRE practices to mobile development.

### Source excerpt

Привет! Меня зовут Саша Тотилас и я руковожу командой разработки в hh.ru. Хочу поделиться с Хабром результатами A/B-эксперимента: при оптимизации одного из экранов нашего приложения мы ускорили загрузку контента и выяснили, как это влияет на продуктовые метрики, а также собрали интересные инсайты. Я не буду глубоко погружаться в технические детали, а сосредоточусь на подготовке эксперимента и интерпретации результатов. Статья будет полезна не только для мобильных разработчиков, но и для аналитиков и продактов. Читать далее

## Using Stencil Templates for Code Generation in iOS Development

DevFeed: [Using Stencil Templates for Code Generation in iOS Development](<https://devfeed.tech/articles/stencil-30695.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/973028/>)

Author: CleverDevilV (hh.ru)

Published: 2025-12-04T09:45:15Z

Content type: tutorial

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [iOS](<https://devfeed.tech/topics/ios.md>), [Swift](<https://devfeed.tech/topics/swift.md>), [Figma](<https://devfeed.tech/topics/figma.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [JSON](<https://devfeed.tech/topics/json.md>), [Sublime Text](<https://devfeed.tech/topics/sublime-text.md>), [Visual Studio Code](<https://devfeed.tech/topics/visual-studio-code.md>), [Xcode](<https://devfeed.tech/topics/xcode.md>)

Tags: [figma](<https://devfeed.tech/tags/figma.md>), [filter](<https://devfeed.tech/tags/filter.md>), [ios](<https://devfeed.tech/tags/ios.md>), [ios-92ecabba3495](<https://devfeed.tech/tags/ios-92ecabba3495.md>), [join](<https://devfeed.tech/tags/join.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [split](<https://devfeed.tech/tags/split.md>), [swift](<https://devfeed.tech/tags/swift.md>), [tag-3383f6fe7741](<https://devfeed.tech/tags/tag-3383f6fe7741.md>), [tag-e95ee8b94dca](<https://devfeed.tech/tags/tag-e95ee8b94dca.md>), [text](<https://devfeed.tech/tags/text.md>), [vscode](<https://devfeed.tech/tags/vscode.md>), [xcode](<https://devfeed.tech/tags/xcode.md>)

### AI overview

A tutorial introducing Stencil, a template language used to automate code and file generation in iOS development. It explains the language's syntax, data structures, filters, and tags, and describes applications involving Swift, Figma-exported design-system data, analytics events, Kotlin files, JSON input, and editor support.

### Source excerpt

Что любят все разработчики? Конечно, автоматизировать рутинные повторяющиеся действия! Я расскажу, как в этом может помочь язык Stencil, широко известный в узких кругах iOS-разработчиков. Читать далее

## Неделя вайбкодинга в hh.ru: зачем мы это сделали

DevFeed: [Неделя вайбкодинга в hh.ru: зачем мы это сделали](<https://devfeed.tech/articles/hh-ru-30694.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/968600/>)

Author: martyshev (hh.ru)

Published: 2025-11-21T08:15:35Z

Content type: opinion

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Large Language Model](<https://devfeed.tech/topics/llm.md>), [Code](<https://devfeed.tech/topics/code.md>), [Claude Code](<https://devfeed.tech/topics/claude-code.md>), [cursor](<https://devfeed.tech/topics/cursor.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [claude](<https://devfeed.tech/tags/claude.md>), [claude-code](<https://devfeed.tech/tags/claude-code.md>), [code](<https://devfeed.tech/tags/code.md>), [cursor](<https://devfeed.tech/tags/cursor.md>), [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [llm](<https://devfeed.tech/tags/llm.md>), [replit](<https://devfeed.tech/tags/replit.md>), [tag-13e2af703774](<https://devfeed.tech/tags/tag-13e2af703774.md>), [tag-2c039dce53be](<https://devfeed.tech/tags/tag-2c039dce53be.md>), [tag-41e9f0e0da78](<https://devfeed.tech/tags/tag-41e9f0e0da78.md>), [tag-7c29fef020e9](<https://devfeed.tech/tags/tag-7c29fef020e9.md>), [tag-a3309a813b61](<https://devfeed.tech/tags/tag-a3309a813b61.md>), [tag-c3c3fb790538](<https://devfeed.tech/tags/tag-c3c3fb790538.md>), [tag-e25a4d9facd9](<https://devfeed.tech/tags/tag-e25a4d9facd9.md>)

### AI overview

An account of how hh.ru used an internal vibe-coding hackathon to promote AI tools and LLM-assisted development among employees. The event involved more than 300 participants and produced 42 completed projects, some considered ready for workplace implementation.

### Source excerpt

Привет. Я Паша Мартышев, CTO hh.ru. Хочу поделиться тем, как мы применяем LLM в разработке и внедряем нейросети в работу коллег, разработчиков и не только. Недавно у нас неплохо получилось сделать это с помощью Вайбатона - внутреннего хакатона по вайбкодингу, и рассказ я построю на его материале. Вообще интеграция нейросетей в работу сейчас в тренде и будет в тренде ещё долго, тут мы не оригинальны. Но у нас получилось успешно популяризовать AI-инструменты среди коллег с помощью внутреннего хакатона - мы вовлекли больше 300 человек, получили 42 завершенных проекта, некоторые из которых можно сразу внедрять в работу. Это наглядный эффект. А также интересный способ через вайбкодинг познакомить с AI сотрудников, которые им не очень активно пользуются. Надеюсь, наш опыт будет полезен читателям. Читать далее

## Snapshot-тесты для дизайн-системы hh.ru

DevFeed: [Snapshot-тесты для дизайн-системы hh.ru](<https://devfeed.tech/articles/snapshot-hh-ru-30693.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/962420/>)

Author: McDee (hh.ru)

Published: 2025-11-05T06:00:10Z

Content type: tutorial

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [iOS](<https://devfeed.tech/topics/ios.md>), [ci](<https://devfeed.tech/topics/ci.md>)

Tags: [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [ios](<https://devfeed.tech/tags/ios.md>), [qa](<https://devfeed.tech/tags/qa.md>), [snapshot](<https://devfeed.tech/tags/snapshot.md>), [snapshot-3ed662e946eb](<https://devfeed.tech/tags/snapshot-3ed662e946eb.md>), [tag-4adf7d504f34](<https://devfeed.tech/tags/tag-4adf7d504f34.md>), [tag-f538878e20ff](<https://devfeed.tech/tags/tag-f538878e20ff.md>)

### AI overview

The article explains snapshot testing and hh.ru's renewed effort to apply it to design-system components rather than frequently changing application screens. It discusses the reasons for adoption and practical questions such as library choice, coverage, flakiness, runtime, and snapshot storage.

### Source excerpt

Привет! Меня зовут Андрей Максимкин. Я iOS-разработчик в hh.ru. В своих статьях (тут, тут и не только) мы уже не раз говорили о большой любви к тестам и их важной роли в нашем процессе разработки. В этой статье хочу поделиться опытом использования snapshot-тестов, начиная с этапа внедрения. Статья будет полезна для QA и iOS-разработчиков разных уровней. Обсудим не только теорию, но и напишем реальный snapshot-тест -- как в нашей практике. Вместо вступления Сначала расскажем про snapshot-тесты и для чего они нужны. Snapshot тесты -- это метод тестирования, который используется для защиты внешнего вида компонентов и интерфейсов от незапланированных изменений. Они позволяют зафиксировать эталонное состояние компонента и в дальнейшем использовать как образец. Это помогает выявлять изменения в пользовательском интерфейсе, которые могут возникнуть в результате обновлений кода. В hh.ru мы активно разрабатываем нашу собственную дизайн-систему (ДС). Дело в том, что компоненты ДС могут иметь широкий набор свойств: цвета, размеры, скругления. Проверять корректность, например, цветов обычным ручным тестировщикам на длинной дистанции невозможно, поэтому возникла потребность автоматизировать проверки. Кроме того, при рефакторинге кода некоторые компоненты могут сломаться -- хотелось бы находить такие проблемы сразу. Snapshot-тесты показались лучшим решением этих проблем. Когда-то давно в hh.ru уже были snapshot-тесты. На тот момент они были написаны на экраны приложения. Эти экраны часто меняли свой дизайн, тесты вели себя нестабильно и падали, поэтому их приходилось переписывать. В итоге от snapshot-тестов отказались. Так что в своей новой попытке внедрения snapshot-тестов решили не писать тесты для экранов, а только для ДС. Читать далее

## Extracting a Chat Microservice from a Monolith: Lessons from hh.ru

DevFeed: [Extracting a Chat Microservice from a Monolith: Lessons from hh.ru](<https://devfeed.tech/articles/15-30692.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/956102/>)

Author: Ilrahil (hh.ru)

Published: 2025-10-14T10:00:26Z

Content type: article

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [Back end](<https://devfeed.tech/topics/backend.md>), [event driven](<https://devfeed.tech/topics/event-driven.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [Java](<https://devfeed.tech/topics/java.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [Kafka](<https://devfeed.tech/topics/kafka.md>), [elasticsearch](<https://devfeed.tech/topics/elasticsearch.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [elasticsearch](<https://devfeed.tech/tags/elasticsearch.md>), [event-driven](<https://devfeed.tech/tags/event-driven.md>), [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [highload-plus-plus](<https://devfeed.tech/tags/highload-plus-plus.md>), [java](<https://devfeed.tech/tags/java.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [tag-1e4ee1f65f5a](<https://devfeed.tech/tags/tag-1e4ee1f65f5a.md>), [tag-75f84211cab4](<https://devfeed.tech/tags/tag-75f84211cab4.md>), [tag-bfc1a5037c9b](<https://devfeed.tech/tags/tag-bfc1a5037c9b.md>), [tag-c2e9e71d738f](<https://devfeed.tech/tags/tag-c2e9e71d738f.md>), [tag-d4be1d74f775](<https://devfeed.tech/tags/tag-d4be1d74f775.md>)

### AI overview

A backend developer at hh.ru describes the staged extraction of a chat microservice from the Negotiations monolith. The article covers separating modules, monolith dependencies, SQL joins, transactions, asynchronous API delays, and the final service extraction, using event-driven architecture, data-model redesign, and an integration layer.

### Source excerpt

Про выделение микросервисов из монолита рассказывали много, но у каждого свой путь - в статье расскажем про наш. От простейшего выделения сервиса в модуль в начале до решения проблем разрыва транзакций, SQL Join-запросов, задержек асинхронного API и непосредственно выделения нового сервиса. Использование event-driven архитектуры, редизайна модели данных и интеграционного слоя как основных подходов в процессе выделения. Читать далее

## Трейсинг в hh.ru: как мы выросли от 1 тысячи до 1 миллиона событий в секунду без семплирования

DevFeed: [Трейсинг в hh.ru: как мы выросли от 1 тысячи до 1 миллиона событий в секунду без семплирования](<https://devfeed.tech/articles/hh-ru-1-1-30690.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/939754/>)

Author: Heruvimka (hh.ru, Конференции Олега Бунина (Онтико))

Published: 2025-09-16T09:00:45Z

Content type: article

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [observability](<https://devfeed.tech/topics/observability.md>), [telemetry](<https://devfeed.tech/topics/telemetry.md>), [SRE](<https://devfeed.tech/topics/sre.md>), [Kafka](<https://devfeed.tech/topics/kafka.md>), [nginx](<https://devfeed.tech/topics/nginx.md>), [Apache Cassandra](<https://devfeed.tech/topics/cassandra.md>), [OpenTelemetry](<https://devfeed.tech/topics/opentelemetry.md>), [RabbitMQ](<https://devfeed.tech/topics/rabbitmq.md>)

Tags: [cassandra](<https://devfeed.tech/tags/cassandra.md>), [devops](<https://devfeed.tech/tags/devops.md>), [jaeger](<https://devfeed.tech/tags/jaeger.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [nginx](<https://devfeed.tech/tags/nginx.md>), [observability](<https://devfeed.tech/tags/observability.md>), [opentelemetry](<https://devfeed.tech/tags/opentelemetry.md>), [operational-intelligence](<https://devfeed.tech/tags/operational-intelligence.md>), [rabbitmq](<https://devfeed.tech/tags/rabbitmq.md>), [request](<https://devfeed.tech/tags/request.md>), [sre](<https://devfeed.tech/tags/sre.md>), [tag-1e4ee1f65f5a](<https://devfeed.tech/tags/tag-1e4ee1f65f5a.md>), [tag-68e701e78517](<https://devfeed.tech/tags/tag-68e701e78517.md>), [tag-73eb9b712998](<https://devfeed.tech/tags/tag-73eb9b712998.md>), [tag-75f84211cab4](<https://devfeed.tech/tags/tag-75f84211cab4.md>), [tag-8f8626975338](<https://devfeed.tech/tags/tag-8f8626975338.md>), [tag-9abb13e52060](<https://devfeed.tech/tags/tag-9abb13e52060.md>), [tag-b92bf5906bbd](<https://devfeed.tech/tags/tag-b92bf5906bbd.md>), [tag-d9df843a1803](<https://devfeed.tech/tags/tag-d9df843a1803.md>), [tag-dfac9042ce7b](<https://devfeed.tech/tags/tag-dfac9042ce7b.md>), [tracing](<https://devfeed.tech/tags/tracing.md>)

### AI overview

This Russian developer article describes how hh.ru built and rebuilt its tracing and observability architecture as its data volume increased. The supplied text states that the system handles 24,000 RPS, one million spans per second, and 5,000 service instances, and introduces a log-based tracing design using Request-Id propagation.

### Source excerpt

В каждой компании есть необходимость выстроить систему observability. В hh.ru мы перестраивали архитектуру под большее количество данных несколько раз -- сейчас имеем на входе 24к RPS, 1 миллион спанов в секунду, 5к инстансов сервисов. Если вы -- инженер, который находится в процессе построения или перестройки собственной системы трейсинга, этот доклад -- для вас. Привет, Хабр! Я -- Александр Казанцев, уже более десяти лет в разработке. Когда-то был инженером на пивзаводе и могу рассказать, из чего делают пенное; но сегодня -- о другом. Читать далее

## От свалки ссылок к базе знаний: как мы оживили UX-архив

DevFeed: [От свалки ссылок к базе знаний: как мы оживили UX-архив](<https://devfeed.tech/articles/ux-30689.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/932832/>)

Author: ExKito (hh.ru)

Published: 2025-08-07T08:00:08Z

Content type: article

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [User experience (UX)](<https://devfeed.tech/topics/ux.md>), [jira](<https://devfeed.tech/topics/jira.md>)

Tags: [hh](<https://devfeed.tech/tags/hh.md>), [hh-ru](<https://devfeed.tech/tags/hh-ru.md>), [jira](<https://devfeed.tech/tags/jira.md>), [tag-41e9f0e0da78](<https://devfeed.tech/tags/tag-41e9f0e0da78.md>), [tag-52ec2a2e2e67](<https://devfeed.tech/tags/tag-52ec2a2e2e67.md>), [tag-8e9a901cca08](<https://devfeed.tech/tags/tag-8e9a901cca08.md>), [tag-9d8cf70dc46c](<https://devfeed.tech/tags/tag-9d8cf70dc46c.md>), [ux](<https://devfeed.tech/tags/ux.md>), [ux-479c532c198e](<https://devfeed.tech/tags/ux-479c532c198e.md>), [ux-59292584722d](<https://devfeed.tech/tags/ux-59292584722d.md>), [ux-66917e6a12c0](<https://devfeed.tech/tags/ux-66917e6a12c0.md>)

### AI overview

The article describes how hh.ru transformed an inconvenient UX research archive into a more usable knowledge base. It explains the problems with scattered files and poor search, compares approaches for improving access to research findings, and discusses the tools and process used.

### Source excerpt

Привет! Меня зовут Андрей, я исследую клиентский и пользовательский опыт в hh.ru. В статье расскажу, как нашей команде удалось вовлечь компанию в рисёчи и тем самым повысить их полезность. Читать далее

## Как улучшить прогоны автотестов при помощи карантина

DevFeed: [Как улучшить прогоны автотестов при помощи карантина](<https://devfeed.tech/articles/article-30687.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/hh/articles/923964/>)

Author: iBljad (hh.ru)

Published: 2025-07-02T07:20:43Z

Content type: tutorial

Language: ru

Sources: [HeadHunter RU](<https://devfeed.tech/sources/headhunter-ru.md>)

Topics: [CI/CD](<https://devfeed.tech/topics/cicd.md>), [jira](<https://devfeed.tech/topics/jira.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [ci-cd](<https://devfeed.tech/tags/ci-cd.md>), [http](<https://devfeed.tech/tags/http.md>), [jira](<https://devfeed.tech/tags/jira.md>), [qa](<https://devfeed.tech/tags/qa.md>), [qa-automation](<https://devfeed.tech/tags/qa-automation.md>), [qa-management](<https://devfeed.tech/tags/qa-management.md>), [qa-strategy](<https://devfeed.tech/tags/qa-strategy.md>), [retry](<https://devfeed.tech/tags/retry.md>), [tag-23c525fe15c9](<https://devfeed.tech/tags/tag-23c525fe15c9.md>), [tag-4adf7d504f34](<https://devfeed.tech/tags/tag-4adf7d504f34.md>), [tag-7b800b2da0b8](<https://devfeed.tech/tags/tag-7b800b2da0b8.md>), [tag-acbe600f392f](<https://devfeed.tech/tags/tag-acbe600f392f.md>), [tag-e34f6dec12c4](<https://devfeed.tech/tags/tag-e34f6dec12c4.md>)

### AI overview

The article describes how hh.ru introduced a quarantine system for unstable automated tests to reduce release interruptions and improve delivery speed. It explains the problem of flaky tests, the role of retries, and a design using a database table with an HTTP API accessed by a custom test runner.

### Source excerpt

Привет, меня зовут Андрей и я автоматизатор (остальные в кругу хлопают в знак сочувствия) в hh.ru. В статье расскажу, как мы ввели карантин автотестов, повысив стабильность релизов и скорость доставки. Читать далее

[Next page](<https://devfeed.tech/sources/headhunter-ru.md?cursor=WyIyMDI1LTA3LTAyVDA3OjIwOjQzKzAwOjAwIiwgImI1YTA4NzFiLWVmZGUtNDNlNi1iMzJjLTAxMzQ4OGU5ODBiNyJd>)