Тестовое собеседование с подписчиком: JS, Next.js, Nest.js, React.js, Node.js, SQL
Запись тестового собеседования по full-stack JavaScript-стеку с теоретическими вопросами и двумя практическими задачами. Разбираются Node.js, NestJS, SQL, Next.js, React и основы JavaScript.
Автор канала проводит с подписчиком тестовое техническое собеседование, а не реальный найм: обсуждаются Node.js, REST/HTTP, WebSocket, NestJS, SQL, Next.js, React и JavaScript. После теории участник исправляет логику таймера в React-компоненте и пишет функцию проверки палиндрома, затем обсуждает её сложность и различие императивного и декларативного подходов. В финале автор называет охват вопросов уровнем Strong Junior / Weak Middle, отмечает, что TypeScript обсудить забыли, и предлагает при необходимости сделать продолжение по выявленным пробелам.
Подготовить связное объяснение устройства Node.js: роль JavaScript-движка, libuv, однопоточности JavaScript и фаз Event Loop, включая таймеры, I/O и микрозадачи.
Чётко различать REST как архитектурный стиль и HTTP как протокол; отдельно уметь объяснить statelessness, идемпотентность, HTTPS и постоянно открытое WebSocket-соединение.
Повторить NestJS: назначение модулей, контроллеров и сервисов, а также отличия модульного монолита от микросервисной архитектуры.
Практиковать SQL-вопросы о типах данных конкретной СУБД, агрегатных функциях, GROUP BY и хранении структурированных данных; не смешивать JSON как формат и возможности конкретной базы данных.
Разобраться в вариантах рендеринга Next.js: SSR, CSR, SSG и ISR, а также в их различиях для SEO, скорости первой отрисовки и обновления данных.
Для React повторить Virtual DOM, различия классовых и функциональных компонентов, useEffect, очистку setInterval и хранение значений между рендерами.
Для JavaScript освежить примитивы и ссылочные значения, Symbol, bind/call/apply, undefined и null, достижимость объектов для GC, this, замыкания, Map, Set, WeakMap и WeakSet.
Уметь решать простую алгоритмическую задачу на палиндром двумя указателями и обосновывать линейную временную сложность O(n).