tgoop.com/code_and_travel/79
Last Update:
Кто ты? Junior, Middle or Senior?
Со всех сторон звучат фразы должностей: джуниор, миддл, сеньор… В чем проходит грань между ними и как понять, кто ты?
Начнем, с самой первой. Стажер-разработчик. Стажер - этот тот, кто знает синтаксис языка, на котором будет писать. И понимает азы популярного фрейморка (React для frontend, Spring для backend). Он готов начать писать, но очень мало знает в программировании. Смотрит примеры других людей и копирует код, не осознавая, зачем и почему это делается именно так.
Junior-разработчик решает простые задачи самостоятельно, без помощи коллег. Но если задача выбивается из привычного круга знаний, без помощи джуну не обойтись. Он может сделать тупой баг и не понимать, что именно запрогал не так. А также целую неделю решать задачу, которую middle- или senior выполнит за час. Junior-разработчик только начинает читать про качество кода, паттерны и старается применять их повсеместно.
Middle-разработчик уже прочитал про рефакторинг, понимает, как сделать код читаемым. Он способен решить большинство проблем самостоятельно. Исследует несколько причин бага, тестируя разнообразные гипотезы. Middle более разумно понимает, где и какие best practice использовать. Осознает, почему код может корректно работать у него локально, но приносить кучу багов на продакшене.
Senior-разработчик - уровень, при котором программист множество задач решает с ходу. Встречаясь с новой задачей, он припоминает все потенциальные решения и моментально выбирает среди них наилучшее. Гораздо лучше middle понимает качество кода и понятно объясняет коллегам, почему в этом случае стоит писать так, а не иначе.
Конечно же, middle и senior должны понимать запросы бизнеса. Они программируют не только потому, что им это нравится, то и для решения конкретного функционала. Они могут видеть идеальное решение, программировать которое придется целый месяц. Но выбирать функциональный вариант, который делается за неделю. Им нужно понимать, как разработать масштабируемую систему, способную выполнять новые поступающие требования от бизнеса. Например, выносить функционал в отдельные компоненты, подлежащие переиспользованию.
Стоит понимать, что в целом шкала стажер/junior/middle/senior абстрактная и зависит от конкретной компании. Как правило, в каждой из них вырабатывается собственный стандарт, по которому они собеседуют кандидата. При этом на него сильно влияют компетенции проводящих интервью. Так что границы стажер/junior/middle/senior - это не заранее определенные лейблы, а стадии развития разработчика.
BY Code&Travel

Share with your friend now:
tgoop.com/code_and_travel/79