Добрый день!
Хочу поделиться с вами небольшой историей о том, как я стал программистом. Вообще, у меня ещё со школьных лет была тяга к компьютерам и к программированию. Уроки информатики в школе и в институте давались мне без труда, и делал я даже больше, чем задавали. Но это всё были простые учебные языки программирования, которые не дают реального умения писать программы, а лишь могут показать, насколько вам это интересно. Когда пришло время выбирать профессию, я выбрал другую область.
В колледже и в институте я учился на механика. Во время учёбы работал станочником, после — ремонтником станков с ЧПУ. Поднялся до начальника ремонтного отдела. Так и остался бы там, если бы не столкнулся с непробиваемым нежеланием руководства «разоряться» на обучение меня и моих сотрудников. А учиться мне хотелось. Я вообще придерживаюсь мнения, что если человек не развивается, значит деградирует. Тогда-то я и вспомнил о своих детских увлечениях.
Понимая, что ни Pascal, ни Basic, изученные в школе, не пригодятся мне в работе, я выбрал Си. Прочитав учебник и порешав олимпиадные задачи, я так и не понял, куда мне двигаться дальше. Прикладных задач сам себе найти я не мог, для сложных мне не хватало знаний и умений, а лёгкие не позволяли мне развиваться. Это ситуация и послужила толчком для выбора курсов.
К моему удивлению, курсов по Си практически нет. Но это меня не остановило, и я стал проходить курсы на разные темы: от основ программирования до написания драйверов. Некоторые были слишком лёгкие, я для них был уже на уровень выше. Некоторые дали мне знания, которыми я никогда не воспользуюсь. Но ни один курс не был лишним. Во-первых, всегда стоит вернуться на шаг назад, и с высоты своего опыта посмотреть на те вещи, которые были незаметны в начале пути. Во-вторых, общение с преподавателем очень ценно: стоит знать мнение профессионала, даже если вы сами разобрались с этим вопросом. В-третьих, каждый преподаватель даёт не только то, что написано в учебниках. А именно, опыт — свои навыки, свои наработки.
Плюсов в обучении много! Но так или иначе, в процессе обучения встаёт следующая проблема – трудоустройство. Тут мне повезло, меня взяли на полставки. Я совмещал старую работу, стажировался и продолжал обучение. На работе я понял, что сначала мне не придётся оттачивать полученные знания. Надо было ещё научиться контролю версий, уметь пользоваться траком, таскменеджером и прочими технологиями, которые применялись в компании. Но не боги горшки обжигают!
Теперь я работаю программистом на полной ставке, продолжаю обучаться новым технологиям и фичам. Моя работа не даёт мне скучать. В программировании всегда есть, чем заняться, что подучить, куда стремиться. И конечно же обучение уже не раз себя окупило!
P.S. На GeekDay я слышал вопросы: «Cтоит ли идти в институт?», «Могу ли я работать без высшего образования?» и т. п. Хочу на них ответить. Работать-то вы можете, программированию можно достаточно быстро и легко обучиться. Но если вы хотите писать, например, игры, задайте себе вопрос: «Что для этого надо знать?». Программирование? Компьютер? Базы данных? Нет! Надо знать физику, механику, историю, мифологию и многое другое. Только тогда вы сможете писать реалистичные игры с захватывающим сюжетом. Программирование лишь инструмент, а без хорошего образования — это микроскоп для забивания гвоздей.
Желаю всем не терять свой путь и каждый день идти к своей цели!