Ответ вслух Middle Код-ревью спрашивают часто обновлено

Как ты проводишь код-ревью

Вопрос

Как ты проводишь код-ревью? На что смотришь в первую очередь?

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Сначала читаю описание и задачу, чтобы понимать, что PR должен сделать, и при необходимости запускаю его локально.

Что должно прозвучать в ответе

  • Сначала понимаю задачу и читаю описание PR

  • Порядок: корректность и краевые случаи, безопасность, архитектура, производительность, читаемость, тесты

  • Стиль оставляю линтеру и форматтеру

  • Комментарии про код, а не про человека, с объяснением почему и предложением

  • Помечаю важность: блокирующее или nit

  • Отмечаю удачные решения, отвечаю быстро

Что могут спросить следом

  • Сколько времени уходит на ревью?
  • Что делаешь, если не согласен с архитектурой всего PR?

Разбор

Сначала читаю описание и задачу, чтобы понимать, что PR должен сделать, и при необходимости запускаю его локально. Дальше иду от важного к мелкому: корректность и краевые случаи вроде пустых данных, ошибок сети и двойных кликов, потом безопасность, потом встраивание в архитектуру, производительность, читаемость и тесты. Стиль не обсуждаю, это работа линтера и Prettier. Комментарии пишу про код: «здесь возможна гонка, если ответ придёт позже, предлагаю AbortController», а не «ты забыл». Помечаю, что блокирует мерж, а что nit. Хвалю хорошие решения. Если обсуждение затянулось на несколько реплик, предлагаю созвониться. А если не согласен с подходом целиком, лучше обсудить это до написания кода, поэтому прошу короткий дизайн для больших задач.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.