Меню

Никогда не поздно стать прогрнаммистом

В жизни бывают случайные встречи, которые заставляют остановиться и посмотреть на пройденный путь. Об одной из таких встреч мне и хочется вам рассказать.
Недавно, на остановке мне встретился дедушка, который никак не мог дозвониться до своих близких, чтобы ему помогли донести яблоки до дома. Настроение было хорошим и я решил помочь ему. Идти нам надо было около 10 минут, и,естественно, мы разговорились. Конечно же, он спросил чем я занимаюсь. Узнав, что я занимаюсь созданием программного обеспечения, количество вопросов касательно работы резко возросло. “Пожилой человек, которому интересна инженерия… Как здорово!” - подумал я. Но оказалось, что он интересовался для своего 31 летнего сына, который не смог найти работу по своей основной специальности (экономист) и который теперь решил стать фронтенд разработчиком. В этот момент я осознал, что на самом деле помогать я буду не дедушке, а его сыну. Поговорив с сыном около 40 минут, я осознал, что просто делюсь опытом и, фактически, занимаюсь мотивацией. Через пару дней я понял, что хочу поделиться со всеми своими соображениеями по поводу того, как же всё-таки стать программистом.

Если вы спросите специалистов в области  можно ли освоить эту профессию самостоятельно, то большинство из них дадут вам утвердительный ответ. А еще добавят, что для нас важен только результат, что является истиной. Однако, у вас могут появиться сомнения. Например:
•    “Смогу ли я?” 
•    “А устроюсь ли я на работу, ведь у меня нет профильного образованиея?”
•    “Достаточно ли у меня знаний в этой сфере?” 
•    “Не слишком ли поздно я решил сменить род деятельности?”

Задавать такие вопросы - нормально! Новичкам в программировании кажется, что вот еще этот язык подучить и этот курс пройти — и уже можно рассылать резюме. На деле такой подход не самый эффективный. Самообразование в программировании — процесс непрерывный, и он не должен отделять вас от получения работы.
В программировании важна ваша способность создавать полезные для других продукты, а этому никогда не поздно научиться. 
 

 

Обязательно ли высшее образование?

proqramçı olmaqПлюсы высшего образования очевидны — оно дает фундаментальное представление о низкоуровневых технологиях: алгоритмах, компиляторах, процессорных командах, работе с памятью. Высшее образование дает входной бонус при найме на работу. Если у вас есть диплом престижного университета, то при первичном фильтре HR-ы отдадут предпочтение вам — но только вначале! Большинство компаний, связанных с разработкой программного обеспечения, не рассматривают высшее образование среди ключевых критериев при приеме на работу. Гораздо важнее опыт создания реальных продуктов, портфолио выполненных проектов. На собеседовании вам придется показывать свой код и свои навыки, а тут дипломы не помогут.
Есть немало примеров классных программистов без высшего образования. Нередки и случаи людей с дипломом инженера-программиста работающих совсем не по специальности. 

 

Из каких профессий можно перейти в программирование?
В программирование приходят в разном возрасте и из разных областей. Одним переход в IT-индустрию дается легче, другим на освоение новых технологий нужно больше времени и усилий. Овладеть программированием может каждый, вопрос лишь в мотивации и готовности учиться новому. Навыки в других областях — это всегда преимущество. Они позволяют шире смотреть на задачи и находить нестандартные решения. 
Переход легче дается тем, кто привык в работе использовать логику, обращать внимание на детали и работать с цифрами. Например, бухгалтерам и аналитикам. Успех зависит от желания и способности к логичному структурированному мышлению. Если же с этим не приходилось сталкиваться — не беда, но предстоит научиться. 

 

Как сделать первые шаги?

После 6 лет обучения в университете у меня за плечами не было ни одного собственного проекта, который не был бы связан с обучением. При этом я всегда хорошо был осведомлен о технологиях, используемых в профессиональной среде. Но год службы в армии отнял у меня и это. Так как IT индустрия развивается очень быстро, за год очень многое изменилось, и я не был в курсе всех последних трендов. У меня был жуткий страх подавать CV на вакансии, ведь к 25 годам у меня не было абсолютно никакого опыта. При этом я интересовался и вдохновлялся стартапами на нашем рынке. И однажды я откликнулся на пост в социальных сетях, в котором двое ребят искали программиста. Так как интервью никто не собирался проводить, мой страх развеялся. Мы просто обсудили продукт, который необходимо было создать, и я взялся реализовать всю техническую часть. Через полгода с небольшим наша команда развалилась, но работа над проектом придала необходимой уверенности, а полученного опыта хватило, чтобы подавать резюме на вакансии, не боясь.
Мой главный совет для тех, кто хочет работать программистом: придумайте себе проект и воплотите в жизнь, завершив его хоть в каком-нибудь виде. Таким образом у вас будет возможность оценить все этапы разработки ПО, и вы будете знать с чем вам предстоит иметь дело. Подготовьте пару-тройку реальных примеров ваших работ, сделанных пусть даже для себя. Это даст вам преимущество в борьбе за самые интересные позиции в IT компаниях. 
На рынке много людей, которые изучили язык программирования по книгам и статьям и рвутся в бой. Опыта работы с реальными проектами у них нет. Они не умеют работать в команде, не умеют поддерживать свой и чужой код, не знают о тех проблемах, которые возникают в IT-индустрии. Джуниорами их назвать сложно, джун уже работал в команде под руководством наставника. 
Изучать разработку самому — это только первый шаг для программиста. Дальше нужно совместно с командой делать реальные и нужные более чем одному человеку проекты. Также важно выкладывать свой код на открытые источники — работодатели смотрят на стиль и алгоритмы. Посещайте конференции и слушайте доклады опытных разработчиков. Ходите на собеседования: даже если вас не возьмут, вы по крайней мере поймете требования работодателей.
 

 

Заключение
Не все приходят в IT-индустрию сразу после института. Кто-то до того, как стать программистом, сменил не один род деятельности. При этом навыки, полученные в других сферах, могут оказаться полезными в программировании и даже дать вам профессиональное преимущество. Помните, что всех курсов не пройдешь и всех книг не прочитаешь.