К сожалению не могу пройти и не вставить свои пять копеек.
Первое что хотелось бы уточнить, что в вакансии которую мы обсуждаем, ребята ищут разработчика уровня junior+. Лично в моем понимании это разработчик имеющий от 1 года опыта коммерческой разработки. Или очень сильный бэкграунд в CS. То есть это точно не трейни, который полгода назад начал учить с 0 программирование, не задумываясь об основах CS.
Согласитесь было бы очень шоколадно, не имея представления о программировании я учу 6 месяцев программирование и иду на вакансию с окладом в 150 тыс. руб
Так вот о чем я, я бы выделил два вида начинающих программистов. На тех которые пришли ради денег и тех которым действительно интересно что-то создавать, которыми движет интерес.
Всем, я так думаю, будет понятно что первые дай бог на 2-3 год обучения/работы разработчиком будут задумываться: «надо бы посмотреть какие есть общепринятые практики построения архитектуры», а на митингах буду сидеть и молчать в то время как другие коллеги увлечённо обсуждают, спорят, предлагают архитектурные решения.
Вторые же, напротив, будут стараться развиваться как можно быстрей в свои первые годы работы программистом. И именно эти Джуниоры как раз таки будут принимать участие в дискуссиях и, возможно, влиять на архитектурные решения.
По итогу что хочется сказать. Не всегда на собеседовании можно выяснить уровень разработчика и первые несомненно найдут себе работу, но что действительно обидно, что вторые будут претендовать на такие же условия как и первые. Согласен, что если, человек показывает результаты его можно и в процессе работы поощрять, но найти таких ребят становится все сложнее, потому что большинство людей пришли в IT ради денег и хотят получить их с минимальным вложением сил.
Все выше сказанное имеет лишь мое личное, оценочное суждение и не претендует на истину.