Мой долгий путь ... в программирование

Если вы заглянете в моё резюме, то увидите, что я закончил университет в 2003 со специальностью инженер-строитель. Может возникнуть вопрос, почему же я тогда не работаю по специальности, ведь сейчас это востребованная профессия, а пытаюсь попасть в программирование, в котором 1000 соискателей на одну вакансию? Если честно, я и сам не раз задавался этим вопросом.

Наверное, одна из причин, что я поступал в иститут без особого интереса. Мне была более интересна тема электроники, но туда было сложнее поступить, а на строительный было поступить гораздо проще, поэтому поступил туда. И так как я не видел себя в стрительства, то учёба была для меня больше как продолжение школы. Как оказалось, поступить туда было гораздо проще, чем учиться потом, поэтому в итоге из группы была отчислена где-то половина студентов. Тем не менее, я благополучно доучился. И, наверное, главный навык, который усвоил в университете - это умение быстро учиться. Проведя шалтай-болтай пол семестра (так как учиться было не интересно), ближе к сессии приходилось брать себя в руки и быстро навёрстывать всё упущенное, делать куросвые, проекты, здавать зачёты и экзамены.

Закончив университет, я пошёл работать по специальности. И проработал проектировщиком в строительстве около 6 лет.

Казалось бы, проектировщик в строительстве тоже программист. Чертежи - это тот же набор инструкций, что и компьютерная программа, просто выполняют эту программу не машина, а строители. И работа похожая: тоже сидишь за компьютером и нажимаешь на кнопочки :) В общем, я пришёл к выводу, что мне не хватало динамики, видимости своего результата. Ведь, какой основной результат деятельности конструктора? Правильно - чтобы дом не упал. Любое движение: деформация, крен, трещины - это уже проблема. Лучший результат - отсутствие какого-либо движения в течении как можно большего промежутка времени. Это понятно и это правильно - но не интересно.

В программировании по-другому. Здесь, наоборот, всё динамично: нажал на кнопку, что-то происходит. Можно много экспериментировать с обрушением программы и это даже хорошо, тем самым ты находишь её проблемные места и можешь улучшить. Конечно, я утрирую: какой-нибудь баг в программе атомной станции тоже не очень хорошо.

Проработав около 6 лет в проектировании зданий и сооружений, проектировании железобетонных конструкция я отправился на поиски своего интереса, желаемой работы, переехал в небольшой городок. Работал на разных работах: простым строителем, оператором на заводе, пробовал какие-то варианты удалёнки, но всё не то. И как-то общался с коллегой на заводе и, оказалось, что он параллельно работе ещё и увлекается программированием. Я вспомнил, что и мне когда-то была интересна эта тема и решил попробовать себя в этой теме.

С чего прощё начать в программировании? Конечно же начать с HTML, CSS и JS, и попробовать создать свой первый сайт, получить заветное “Hello, world!”. Затем добавить какой-нибудь бекэнд. Я начал с php, там же появляется и необходимость в базе данных - MySQL. Параллельно нужно был учить ещё и английский язык (иишек ещё не было, а каждый раз кидать текст в google translate долго и неудобно, да ещё же и видео, в основном, на английском). Как оказалось, учить иностранный язык гораздо проще, если есть к этому мотивация. И учить его проще всего на технической литературе, так как там мало каких-то литературных выражений и многие слова часто повторяются. Поэтому я изучал JS по w3schools переводя и запоминая отдельные слова.

Так как денег свободных было не много, то я сознательно не покупал платные курсы, тем самым я мог дольше изучать программирование самостоятельно. Но затем мне попалась вакансия, в которой предлагалось (после тестового задания) пройти бесплатный курс по JS - просто давались задания и нужно было самостоятельно их изучать. Там я полностью прошёл учебник learn.javascript, изучал React, Nest, TS - это стало моей базой (ulbi TV - респект).

Продолжение следует...