Профессия программиста неразрывно связана с обучением, которое в силу объективных причин, начинается на старте карьеры и не прекращается до её завершения. В этой статье мы подробно рассмотрим из чего это обучение состоит.
Обучение программиста можно условно разделить на три составляющих:
- Профессиональное образование;
- Обучение в процессе работы;
- Самостоятельное обучение (самообразование).
Профессиональное образование
Это образование, полученное в образовательных учреждениях. В основном на программистов учат в ВУЗах.
Профессиональное образование закладывает фундамент для будущего развития в период работы «на производстве». Оно даёт систематически знания, которые пригодятся практически любому программисту в рамках любого проекта.
Конечно, в некоторых сферах можно работать и без него. Но, ваша позиция без образования всегда будет менее выигрышная (или более проигрышная, как вам больше нравится). Почему?
Во-первых, наличие диплома уже само по себе говорит о том, что вы в этой профессии не случайный человек.
Во-вторых. После ВУЗа вы будете владеть многими вы будете владеть основными элементами computer science (алгоритмы, структуры данных, и т.д.) и технологии разработки программного обеспечения, которые в большинстве книг, которые находятся в продаже даже не упоминаются.
Получать стационарное образование или нет решать вам. Однако, при его отсутствии, если вы столкнётесь с чем-то из вузовской программы, вам придётся копать и разбираться (возможно долго). В тоже время, ваш коллега «с дипломом» уже будет это знать и займётся изучением новых технологий тем самым сохраняя и нередко даже увеличивая отрыв от вас.
Обучение в процессе работы
В основном это ваш опыт, полученный в процессе трудовой деятельности.
Каждый проект, каждая задача это не только очередная победа, но и вклад в сокровищницу вашего профессионального опыта. И чем больше и качественнее будет этот опыт, тем проще вам будет в дальнейшем.
Конечно, есть ещё конференции, курсы повышения квалификации и т.д. Но, на них вас направит не каждый работодатель и делать он это будет скорее всего не так часто, как вам возможно хотелось.
Поэтому в плане повышения квалификации и изучения чего-либо дополнительно вам придётся рассчитывать только на себя.
Самостоятельное обучение (самообразование)
Это то, что вы изучаете самостоятельно в свободное от учёбы или работы время.
Если в ВУЗе вы ограничены рамками учебной программы, а на работе технологическим стеком проекта, над которым вы трудитесь, то здесь вам доступна полная свобода выбора.
Поэтому, расширение кругозора, освоение «параллельных», а часто даже и перспективных, технологий связано именно с самообучением.
Также во многом на основе самообучения строится и повышение квалификации (помните, что было сказано ранее об обучении в процессе работы?) и актуализация имеющихся знаний.
Если вы не можете или не хотите обучаться самостоятельно, то вам будет сложно даже банально остаться на плаву, не говоря уже о росте. И это, к сожалению, не преувеличение.
Любой специалист (не только в сфере разработки ПО) будет востребован до тех пор, пока его навыки являются актуальными. Возможно, в рамках вашего текущего проекта ваши компетенции будут актуальны гораздо дольше, чем на рынке труда, но всё рано или поздно заканчивается.
Поэтому, ваше самообразование это не только ваше успешное настоящее, но и будущее.
Что же главное
После прочтения статьи возможно у вас возникнет вопрос о том, какая из составляющих обучения главная. Этот вопрос задаёте не вы один и на просторах интернета периодически происходят острые дискуссии на эту тему. В основном с целью доказать превосходство той или иной составляющей.
На самом же деле всё гораздо более прозаично. Каждая из этих составляющих играет свою роль в профессиональном развитии программиста и каждая из них по-своему важна. И если исключить что-то одно, то за счёт других это будет сложно или вообще невозможно восполнить.