Будучи зрителем, вы не получите того опыта и навыков, о которых говорите. Только практика принесет плоды. По-моему, идеальный вариант, это сделать все, чтобы попасть в более-менее серьезную компанию Junior-разработчиком. Компанию, в которой сложились хорошие практики программирования, налажены процессы производства и взаимодействия людей внутри команды.
В этом есть плюсы для вас:
— Само собой, опыт;
— Знание о хороших практиках и паттернах;
— Наличие опытных людей вокруг.
В этом есть плюсы для работодателя:
— Вряд ли вы будете просить высокую ЗП на начальных этапах;
— Если вы пришли в компанию не как на перевалочный пункт, то для работодателя вы инвестиция. То есть взращенный сотрудник, которого не нужно отучать от плохих практик, с которым можно работать и который находится в контексте проекта;
—Очень быстро вы сможете освободить других разработчиков от каких-то рутинных задач, который делать надо, но делать никому не хочется.
Но есть некоторые тонкости. Чтобы обучение в такой команде проходило максимально быстро, не стоит просто отсиживаться и ждать конца рабочего дня. Придется тормошить опытных разработчиков постоянно, спрашивать, просить code-review. Каждый день стараться делать что-то новое, стараясь также избегать рутины. Приходить домой и снова писать код, читать статьи, пробовать и т.д.