Как ответить
Читать и править чужой код вручную — это не просто обязательная часть работы, а один из основных способов учиться и расти как разработчик. Если вы считаете, что ваша работа ограничивается только написанием своего кода, вы сильно сужаете себе возможности. На практике junior-разработчик тратит на чтение и рефакторинг чужого кода не меньше времени, чем на написание своего.
Вот почему это важно:
- Понимание кодовой базы. Вы не сможете написать новую фичу, если не понимаете, как устроен существующий код. Чтение чужого кода — это как чтение документации, только документация часто врет, а код — никогда. Начните с чтения тестов и небольших модулей, чтобы понять архитектуру.
- Code review — это часть вашей ответственности. Даже если вы junior, на code review вы должны смотреть на код коллеги. Не для того, чтобы найти ошибки (хотя и это важно), а чтобы задавать вопросы: «Почему здесь выбран такой подход?», «А что будет, если передать null?». Это развивает критическое мышление.
- Рефакторинг — это не «просто почистить код». Это умение сделать код более читаемым, убрать дублирование, улучшить тестируемость. Например, если вы видите функцию на 200 строк с пятью уровнями вложенности, это повод не просто «поправить», а подумать, как разбить её на несколько маленьких функций. Пример: вместо
лучше написатьif (user != null && user.isActive() && user.getRole() != null && user.getRole().equals("admin"))
и вынести проверку в отдельный метод.if (isActiveAdmin(user)) - Учитесь на чужих ошибках. Читая старый код, вы увидите, какие решения привели к багам или сложностям в поддержке. Это дешевле и безопаснее, чем совершать их самому.
Практический совет: начинайте с малого. В первый месяц работы выберите один небольшой модуль, который вам не нравится, и попробуйте его отрефакторить. Покажите результат тимлиду — он оценит инициативу. Не бойтесь задавать вопросы: «Почему здесь использован синглтон, а не DI?» — это нормально.
Итог: чтение и правка чужого кода — это не опциональная активность, а обязательный навык. Без него вы не станете хорошим разработчиком.