Вернуться в видеотеку

Собеседование на Java-разработчика: кодинг-тест, разработка REST API, алгоритмическая задача

Мок-интервью Java-разработчика с одновременным решением live-coding задачи: создание Spring REST API новостной ленты без базы данных. В ролике разбирают Java Core, Spring, структуру приложения, ошибки и итоговый фидбек кандидату.

Источник: ШОРТКАТ — менторская программа

Открыть на YouTube

Таймлайн

Коротко о видео

Это запись мок-интервью Java-разработчика в формате live coding: кандидат Василий проектирует и реализует in-memory REST API для новостной ленты на Spring. До практики он рассказывает о своём опыте с Java, Quarkus, MongoDB, Docker и GitLab CI/CD, затем отвечает на вопросы об ООП, коллекциях, Optional, Spring и обработке ошибок. В финале интервьюер разбирает решение и рекламирует менторскую программу ШОРТКАТ; это не реальное собеседование с конкретной компанией.

Затронутые темы

Что взять на заметку

  • Для подобной задачи полезно сразу превратить ТЗ в контракт: сохранить пост пользователя, получить всю ленту и посты одного пользователя.
  • Кандидат выбрал хранение вида username → список постов; при добавлении обсуждался ConcurrentHashMap и computeIfAbsent для создания списка нового пользователя.
  • На собеседовании ООП проверяли не только определениями, но и через private-поля модели и доступ к ним через getter/setter как пример инкапсуляции.
  • Отдельно разобрали, что результат Stream.toList() неизменяем; если вызывающему коду нужен изменяемый список, следует собирать его через Collectors.toCollection(ArrayList::new).
  • Для REST-слоя обсуждались ResponseEntity, централизованный перехват ошибок через @ControllerAdvice, проверка null и пустых строк, а также различие Optional.of и Optional.ofNullable.
  • Интервьюер отметил, что в production-контроллере лучше не возвращать entity напрямую: нужны DTO и слой маппинга; для собственной in-memory реализации репозитория потребовалась регистрация Spring bean через аннотацию компонента.

Рекомендуем посмотреть