Talanto
For recruiters
PlansCV Review
Login

Categories

  • All articles
  • Job Search
  • Resume & CV
  • Cover Letters & Applications
  • Interviews
  • Salary & Offers
  • Job Reviews & Roundups
  • Remote Work
  • Career
  • Career Growth
  • Market Trends
  • Onboarding
  • Tips

Related articles

  • Как отвечать на вопрос о зарплатных ожиданиях

    57d ago

  • Тестовое задание при найме: как оценить объём, выполнить и представить результат

    57d ago

  • Как ответить на вопрос «Почему вы хотите работать у нас?»

    57d ago

  • Как рассказать о сильных сторонах на собеседовании

    57d ago

  • Как говорить о слабых сторонах на собеседовании

    57d ago

Looking for a job?

IT roles with remote and relocation options.

Browse jobs
  1. Articles
  2. Interviews

Live coding: как решать задачи и думать вслух

Что оценивают на live coding, алгоритм прохождения, как готовиться и что делать, если застрял.

9 min readJuly 17, 2026137 views

On this page
  1. Что оценивают — и чего не оценивают
  2. Алгоритм прохождения, который можно повторять на любой задаче
  3. Как звучит думание вслух — не лекция и не шёпот
  4. Разбор 1. Пара с суммой target — процесс, не «секретный трюк»
  5. Разбор 2. Идемпотентная обработка событий — ближе к backend
  6. Редактор, язык, время — практические мелочи
  7. Если застряли
  8. Как готовиться без бесконечного контеста
  9. Частые вопросы
  10. Что сделать сейчас

Live coding пугает сильных инженеров не потому, что они «не умеют кодить». Пугает формат: чужой смотрит, таймер идёт, IDE без привычных подсказок, задача сформулирована хуже, чем в тикете. Проверяют здесь не олимпиадный трюк за пять минут. Проверяют, умеете ли вы прояснить условие, выбрать простой рабочий путь, говорить, что делаете, и не замирать, когда упёрлись.

Ниже — что реально оценивают, алгоритм прохождения, два разобранных прохода (не «слив уникальных LeetCode», а процесс на типовых постановках) и протокол, если застряли. Формат чаще встречается на backend и fullstack middle-слотах — это видно по backend-вакансиям. Общий каркас интервью — вопросы на собеседовании. Английский техэкран — те же шаги плюс фразы из интервью на английском.

Коротко:

  • Сначала условие, крайние случаи и ограничение по данным — уже часть оценки, не «трата времени».
  • Назовите наивное решение и почему его может не хватить. Потом пишите.
  • Код инкрементально: рабочий каркас, потом детали. Комментируйте вслух.
  • Прогоните 2–3 примера, включая пустой ввод и дубли.
  • Молчание хуже наивного кода. Если застряли — скажите, где затык, и сузьте шаг.

Что оценивают — и чего не оценивают

Ход мысли, уточнения, структура, умение проверить себя. Чистота синтаксиса на третьем месте. Идеальный O(n) с первого удара не нужен, если вы не объяснили, зачем. Списывание «я такое видел, вот трюк» без понимания ломается на follow-up «а что если дубли».

Не оценивают скорость печати как добродетель. Не оценивают знание редкого метода стандартной библиотеки, если вы можете написать цикл. Не оценивают молчаливого гения: интервьюер не телепат. На международном слоте ещё и то, можете ли вы вести этот разговор на рабочем английском — ясность важнее артикля.

Алгоритм прохождения, который можно повторять на любой задаче

  1. Прочитать вслух и пересказать своими словами. «Нужно вернуть индексы двух чисел, сумма которых равна target» — уже проверка, что вы не решили соседнюю задачу.
  2. Спросить ограничения. Размер входа, отрицательные, дубли, нужен ли стабильный порядок, можно ли менять массив, что вернуть если решения нет, лимит памяти и времени на пальцах.
  3. Примеры. Один счастливый, один крайний, один «решения нет». Лучше придумать их вместе, чем сразу писать.
  4. Наивное решение вслух. Два цикла, почему O(n²), для каких n это ещё живое.
  5. Улучшение или отказ от него. Хеш, сортировка, два указателя — с ценой. Если n крошечный, скажите, что останетесь на наивном.
  6. Писать маленькими шагами. Сигнатура, пустой возврат, основной путь, крайние случаи.
  7. Прогон. Те же примеры вслух, пальцем по коду. Потом сложность ещё раз одной фразой.

Не пропускайте пункт 2 из стыда «как будто не понял». Непонятое условие — главный источник красивого неверного кода.

Как звучит думание вслух — не лекция и не шёпот

Короткие фразы. Что сейчас делаете. Какая гипотеза. Что проверяете. Не извиняйтесь за каждую строку. Не читайте код как диктор. Пример ритма:

Перескажу: дан массив чисел и target, вернуть любые два индекса с суммой target. Если пары нет — что вернуть? Пустой массив ок? Дубли значений разрешены? Можно ли одно и то же число дважды, если оно стоит на одном индексе — нет, нужны два индекса.

Наивное: два цикла, O(n²). Для n до пары тысяч, если не сказали иное, это ещё можно показать как baseline. Дальше словарь значение → индекс, один проход: для каждого x смотрю, видел ли уже target − x. Осторожно с тем, чтобы не взять тот же индекс дважды.

Пишу сигнатуру и пустой возврат. Сначала основной путь на примере [2, 7, 11], target 9. Потом проверю [3, 3] и target 6, и пустой массив.

Это и есть продукт раунда: интервьюер может вмешаться, сузить, подсказать. Если вы молчите, вмешаться некуда, остаётся смотреть на курсор.

Разбор 1. Пара с суммой target — процесс, не «секретный трюк»

Постановка типичная для скрининга. Не заучивайте её как уникальную задачу с лидерборда. Заучите разговор вокруг неё. Вход: список целых, target. Выход: два индекса или сигнал, что пары нет. Предположите, что достаточно одной пары.

Уточнения, которые стоит задать: отрицательные; дубли; гарантирована ли пара; нужен ли лексикографически первый ответ; ограничение по памяти. Если интервьюер говорит «считайте, что пара всегда есть» — зафиксируйте это вслух, чтобы потом не гадать.

Наивное: для i по массиву, для j > i, если сумма равна target — вернуть. Сложность по времени квадратичная, по памяти константа. Скажите, при каком n это уже плохо. Улучшение: словарь уже увиденных чисел. Идя слева направо, для текущего числа ищете дополнение. Если нашли — готово. Если нет — кладёте число в словарь. Ошибка, которую ловят: положить число до проверки и случайно сматчить само с собой, когда 2x = target и элемент один.

Пишу сначала наивный двойной цикл, прогоняю [2, 7, 11, 15], target 9 — индексы 0 и 1. Затем [3, 3], target 6 — если я положу 3 в карту до поиска дополнения, могу ткнуть в один индекс дважды. Поэтому сначала ищу, потом записываю. Пустой ввод — сразу пустой ответ. Если пары нет — пустой ответ, не исключение, если не просили иное.

Сложность одного прохода: время линейное от длины, память линейная в худшем случае. Если нельзя тратить память — могу отсортировать пары (значение, старый индекс) и сжать двумя указателями, но потеряю простоту и должен аккуратно вернуть исходные индексы. Для скрининга оставлю словарь, если память не запретили.

После кода не молчите. Спросите: «хотите обработать случай нескольких ответов или достаточно любого». Это выглядит как инженер, а не как человек, который закрыл задачку и выдохнул.

Разбор 2. Идемпотентная обработка событий — ближе к backend

Частый прод-флейвор без олимпиады: «есть поток событий с id, обработчик могут вызвать повторно, нужно выполнить полезную работу один раз». Это не секретная задача с контеста. Это тот же навык, что на вопросах про платежи в интервью backend.

Уточните: события приходят по одному или пачкой; id глобально уникален; можно ли хранить все увиденные id в памяти; нужен ли TTL; что считать «обработал» — успешный побочный эффект или запись в журнал; порядок гарантирован или нет.

Перескажу: функция process(event), повтор с тем же id не должен второй раз списывать / слать письмо / менять статус. Наивное: множество seen в памяти процесса. Это ломается на двух инстансах и после рестарта — скажу это сразу, не буду притворяться, что set закрывает прод.

Для раунда в одном процессе: перед работой проверяю id в set, если есть — возвращаю already processed. Если нет — делаю работу, потом добавляю id. Опасный порядок: добавить id до работы — потеряем событие при падении посередине. Добавить после — при падении после работы, но до записи, будет повтор. Для учебного кода скажу этот компромисс вслух. В проде ключ идемпотентности живёт в базе с уникальным индексом в одной транзакции с побочным эффектом или с outbox.

Прогон: первое событие id=A — работа плюс запись. Второе A — ранний выход. id=B — снова работа. Пустой id — ошибка входа, не тихий skip, если контракт не говорит иное. Если попросят TTL — очередь с временем, не бесконечный set, и отдельно обсудим часы и рассинхрон.

Интервьюер здесь смотрит, видите ли вы границу учебного решения. Человек, который написал set и сказал «готово к горизонтальному масштабу», проигрывает человеку с наивным set и честной оговоркой про два инстанса.

CV review

How does your resume look to a recruiter?

Upload a PDF or DOCX. In 1–2 minutes you get a score across 7 sections and fixes in order of impact.

AKAnna KovalevaFrontend · Middle
46

The best result is buried at the end

Worked on developing new features and fixing bugs. Took part in moving the cart to Next.js, after which conversion grew from 2.1% to 2.8%.

Rewrite

Moved the cart to Next.js with the team, lifting conversion from 2.1% to 2.8%.

Review my resumePDF or DOCX · 1–2 minutes

Редактор, язык, время — практические мелочи

Тренируйтесь в том, в чём будете писать: CoderPad, Google Doc, пустой файл, иногда общая доска. Выключите автоимпорты на тренировке, если на интервью их не будет. Заведите пальцами for, map, словарь, очередь — без гугления сигнатуры каждую минуту.

Часы: 35–45 минут типичны. Если 10 минут ушло на условие — это не провал, если условие реально дырявое. Если 10 минут ушло на молчание — провал. Оставьте 5 минут на прогон. Скажите вслух: «я оставляю время на тесты». Это дисциплина, не слабость.

Язык выбирайте тот, которым пишете каждый день, не «более олимпиадный». На английском раунде те же шаги; фразы переспроса — в разговорных шаблонах.

Если застряли

Не смотрите в камеру молча. Назовите слой затыка: не понял условие, не вижу структуру данных, вижу баг в уже написанном, не помню синтаксис. Для синтаксиса можно сказать «я напишу псевдоцикл, потом поправлю имя метода» — обычно разрешают.

Я застрял на том, как не взять тот же индекс дважды, не на самой идее словаря. Вернусь к примеру [3, 3], target 6 и пройду его руками. Если идея словаря всё ещё путается, оставлю двойной цикл, прогоню тесты, и если останется время — вернусь к одному проходу. Можете сказать, какой крайний случай вам важнее закрыть сейчас?

Вернуться к наивному — нормальная стратегия, не капитуляция. Интервьюер часто сам предлагает сузить. Попросить подсказку один раз после своего хода мысли лучше, чем десять минут гордого тупика. Паника с переписыванием всего с нуля на 32-й минуте почти всегда хуже рабочего O(n²) с тестами.

Как готовиться без бесконечного контеста

  • 3–4 раза в неделю по 40 минут: одна задача, вслух, в простом редакторе, с таймером.
  • Типы: массивы и словари, строки, два указателя / сортировка, очередь, простой граф «посетил / очередь», если в вакансии это светится.
  • После решения — двухминутный пересказ: условие, наивное, финальное, сложность, где врал бы в проде.
  • Один mock с человеком, который молчит меньше, чем вам комфортно. Карточки общего интервью — в подготовке к интервью; live coding туда же, только с редактором.

Не заменяйте этим SQL и свой сервис, если в вакансии нет явного алго-раунда. Тогда live coding может быть коротким куском на 20 минут, а основной вес — в базах и отказах.

Частые вопросы

01Нужно ли решать с оптимальной сложностью?

Сначала корректность и объяснение. Оптимум — если успеваете и понимаете цену. Немой «оптимальный» трюк без прогона часто слабее ясного квадратичного с тестами.

02Можно ли гуглить на интервью?

Спросите в начале. Часто нельзя. Не стройте привычку, которая на звонке запрещена. Документацию языка иногда разрешают — уточните.

03Что, если задача совершенно новая?

Алгоритм тот же. Пересказ, примеры, наивное. «Не видел эту формулировку» — нормальная фраза. Дальше маленькие шаги. Не изображайте узнавание.

04Писать тесты отдельными функциями?

Если среда позволяет — да, два-три вызова. Если нет — прогон вслух по строкам. Главное, чтобы проверка была, не обязательно фреймворк.

05Как быть с опечатками и не компилирующимся кодом?

Скажите, что сейчас подчистите. Не начинайте новую архитектуру из-за скобки. Интервьюер отличит нервный синтаксис от путаницы в идее.

06Junior без такого формата в вакансии — готовить?

Коротко да: одна задача вслух в неделю, чтобы не онеметь, если формат внезапно появится. Не вместо проекта и письма. Входные слоты — в junior-вакансиях.

Что сделать сейчас

Сегодня возьмите одну простую задачу на массив и словарь. Поставьте таймер на 35 минут. Решайте вслух, по алгоритму выше, в редакторе без подсказок. Запишите голос. Послушайте, где вы молчали дольше десяти секунд — это места, которые надо заполнить фразой, не «ускорить печать».

На этой неделе повторите второй разбор: идемпотентная обработка. Свяжите его с тем, как вы рассказываете свой сервис на backend-интервью. Живой mock — один, с перебиванием. Каркас остальных вопросов не бросайте: live coding редко бывает единственным этапом. Самопрезентацию и вилку держите отдельно — рассказ о себе и ожидания по зарплате — не вшивайте их в код на доске.

Next step

Try this article's advice on your own resume

The review highlights the lines where recruiters lose interest and suggests what to write instead.

  • A score out of 100 across 7 sections
  • Ready-made rewrites for weak lines
  • How well you fit a specific vacancy
Review my resumePDF or DOCX · 1–2 minutes
Sample reviewFrontend · Middle
46

Was 46
Now 87 / 100

  • Summary3 → 9
  • Experience4 → 9
  • Skills5 → 9

On this page

  1. Что оценивают — и чего не оценивают
  2. Алгоритм прохождения, который можно повторять на любой задаче
  3. Как звучит думание вслух — не лекция и не шёпот
  4. Разбор 1. Пара с суммой target — процесс, не «секретный трюк»
  5. Разбор 2. Идемпотентная обработка событий — ближе к backend
  6. Редактор, язык, время — практические мелочи
  7. Если застряли
  8. Как готовиться без бесконечного контеста
  9. Частые вопросы
  10. Что сделать сейчас

Categories

  • All articles
  • Job Search
  • Resume & CV
  • Cover Letters & Applications
  • Interviews
  • Salary & Offers
  • Job Reviews & Roundups
  • Remote Work
  • Career
  • Career Growth
  • Market Trends
  • Onboarding
  • Tips

Related articles

  • Как отвечать на вопрос о зарплатных ожиданиях

    57d ago

  • Тестовое задание при найме: как оценить объём, выполнить и представить результат

    57d ago

  • Как ответить на вопрос «Почему вы хотите работать у нас?»

    57d ago

  • Как рассказать о сильных сторонах на собеседовании

    57d ago

  • Как говорить о слабых сторонах на собеседовании

    57d ago

Looking for a job?

IT roles with remote and relocation options.

Browse jobs
AboutPublic OfferTerms of ServicePrivacy PolicySupport
AboutPublic OfferTerms of ServicePrivacy PolicySupport

By Region

  • Jobs in Europe
  • Jobs in USA
  • Jobs in Canada
  • Jobs in Russia

By Format

  • Remote Jobs
  • Relocation to USA
  • Hybrid Jobs
  • Office Jobs

By Experience Level

  • Junior Jobs
  • Middle Jobs
  • Senior Jobs