Предлагаю определить Junior, Middle, Senior следующим образом, чтобы было понятно, куда двигаться:
- Junior - вы только-только начали ориентироваться (в языке или , может быть, в предметной области, в которой работает компания), поэтому вам говорят что делать и как это делать. Вы задаёте вопросы "почему так, а не вот так?" и получаете ответы (иногда ищете сами). Для вашей работы готовы все необходимые каркасы,
вы делаете то, что для остальных очевидно. Вы с удовольствием фигачили бы код килобайтами, но пока много не знаете/не понимаете, поэтому основное время проводите в изучении: статей в интернет, мануалов по языку, чужого кода
- Middle - вы хорошо ориентируетесь (в язые или, может быть, в предметной области, понимаете употребляемый окружающими жаргон и можете поддержать беседу, рассказать о том, что узнать про это в интернете или конференциях), поэтому самостоятельно решаете как делать то, что вам говорят сделать, иногда оспаривая те или иные решения и предлагаю свои. Вы фигачите код килобайтами и даже мегабайтами и решаете не только стоящие перед вами задачи, но и учитесь делать что-то неизвестное ранее. Порой даже уговариваете менеджеров соглашаться на нереальные сроки и работаете по вечерам допоздна, лишь бы попробовать какую-то новую технологию/фреймворк/язык/etc
- Senior - вы свободно ориентируетесь (и в языке, и в предметной области, и в имеющемся в компании коде, вводите в обиход новые жаргонные словечки, которые подхватывают все), поэтому самостоятельно решаете как сделать и что сделать на основании целей и проблем, описанных руководством/заказчиком, иногда отговариваете их делать что-то ради того, чтобы сфокусировать команду и себя на важных вещах. Основная масса кода, который значится за вами в репозиториях сделаны в одном из первых коммитов, и включает в себя настройку подключенных фреймворков и создание каркаса для наполнения его силами Middle и Junior разработчиков. Вы отговариваете и убеждаете всех вокруг не делать то, чего делать не нужно, присматриваете за тем, чтобы Junior'ы (в большей степени) и Middle'ы (в меньшей степени) действовали согласовано и трактовали заложенный в проект каркас так, как вы это подразумевали.