Одни начинают погружаться в IT с детства и достаточно долго ищут работу. А другие — принимают решение перейти в разработку с совершенно иным бэкграундом, но получают оффер за три месяца. Продолжаем рассказывать истории специалистов о том, сколько времени им потребовалось на освоение профессии и поиск первой работы в IT.
Прошел больше четырех курсов и искал работу год
У меня в школе были друзья, которые хорошо разбирались в компьютерах. Однажды они рассказали мне про Цукерберга и то, как он смог самостоятельно выучить язык С++. Тогда я даже не знал, кто это такой, и не имел представления о языке.
Как-то во время летних каникул в 8 классе я вспомнил про этот разговор и решил самостоятельно изучить C++. Скачал по нему учебник, какую-то среду для разработки и начал читать. Дошел до первого примера программы — это был Hello World. Переписал с книжки код в среду, запустил и получил ошибку. Не понимал, как она возникла и как теперь ее устранить. Два дня пытался что-то с этим сделать, но все впустую.
После того раза подумал и решил, что С++ — действительно сложный язык программирования, решил взяться за другой. Остановился на С#. Все повторилось вновь: скачал учебник, если память не подводит, Герберта Шилдта «С# 4.0 — полное руководство», необходимую среду и в тот же день успешно написал Hello World.
В следующий раз к программированию вернулся в лицее, тоже случайно. На Олимпиаду по информатике не хватало людей, а я ее как раз смог выиграть на школьном этапе. В лицее я нашел единомышленников, с которыми мы решали алгоритмические задачи на время. К моменту окончания учебы в лицее я решил продолжить свой путь в IT осознанно.
Я учился на факультете бизнес-информатики ВШЭ в Москве. Материал там давали слабый, поэтому я решил заняться самообразованием. Привлекла тема машинного обучения. Взял курс на Coursera, прошел его наполовину. Дальше не справился, переключился на другие курсы. Прошел еще пару курсов частично и один почти полностью. К этому моменту я уже что-то понимал не только в написании скриптов, но и в «науке» — машинном обучении. Пришло время устраиваться на работу. Пошел на стажировку в Яндекс. В итоге так и остался там работать.
У меня был долгий путь в IT. С момента погружения в машинное обучение до трудоустройства прошел примерно год. Но еще и до университета я потратил около года, решая алгоритмические задачки. С нуля готовиться к собеседованиям мне не пришлось.
Изучил PHP за летние каникулы, чтобы стать помощником программиста
Примерно до третьего курса института я не думал, что буду работать в IT. Я хотел стать ученым-физиком и раскрывать тайны Вселенной. Хотя отец еще со средней школы учил меня программировать. Он организовал что-то вроде небольшого домашнего кружка, куда ходили я и дети друзей семьи, учил нас писать компьютерные игры. К старшим классам я написал небольшую пошаговую космическую стратегию, в которую сам не всегда мог выиграть у собственной программы. В институте сделал сайт для своей группы ради интереса и «потому что могу».
После третьего курса я понял, что наука — занятие хоть и интересное, но не очень оплачиваемое, и стал подрабатывать в интернет-магазине. Сначала просто работать с базой товаров. В какой-то момент директор узнала, что я умею программировать, и сказала: «Освоишь PHP — возьмем помогать нашему программисту». Я вооружился самоучителем и за летние каникулы на море узнал достаточно, чтобы осенью начать работать. Так и завертелось. Веб-разработка меня захватила, и я развивался в ней следующие восемь лет, от джуна до руководителя отдела. А потом решил сменить профессию.
Дело в том, что мне попалась книга про алгоритмы обработки данных и машинное обучение, после нее захотелось освежить знания математической статистики (институт дал хорошую базу). И вообще увлекла идея, что математику можно использовать для развития бизнеса. За полгода я прошел несколько курсов по статистике, аналитике и машинному обучению на Coursera, стал продавать идеи использования ML у себя в компании. Но не смог увлечь этим руководство и решил найти место, где мог бы развиваться в этой области, не потеряв слишком сильно в зарплате. В Авито в тот момент как раз искали человека в отдел аналитики, который мог бы заняться оптимизацией программатик-продаж рекламы. Эта задача как раз на стыке математики и веб-технологий. Поэтому мы хорошо совпали, и я начал профессиональное путешествие в мир аналитики данных, которое продолжается до сих пор.
Начал работать сразу после университета, но долго привыкал к корпоративной среде
Я начал работать в IT сразу после университета. Рекрутеры из Google нашли мои профили на сайтах соревнований по программированию. После семи собеседований я начал работать младшим разработчиком в команде бэкенда для процессинга персональных данных в Цюрихе.
Сам процесс собеседования дался мне легко, так как у меня был огромный опыт участия в Олимпиадах, а в Google просят решать на собеседованиях именно такие задачи.
Большим испытанием для меня оказалась работа в корпоративной среде. Сложнее всего было эффективно коммуницировать в большой распределенной команде. Например, в первом проекте, для которого мне нужно было сделать дизайн распределенной системы, участвовало четыре команды. Когда я опубликовал дизайн-документ, то на первой итерации получил около 60 комментариев / замечаний от разных членов этих четырех команд. Некоторые комментарии противоречили друг другу. Будучи младшим инженером без опыта работы в больших командах, я абсолютно не понимал, что мне делать с этими разными мнениями. Казалось, что дизайна, который все одобрят, не существует. В той ситуации мне сильно помог менеджер. Он каким-то неведомым тогда для меня способом отделил важные мнения от неважных. В итоге оказалось, что существенные изменения и не нужны.
Стал интернет-маркетологом в IT за 3 месяца
Я работал в оффлайн-продажах. В один момент я понял, что не вижу перспектив в этом деле. Хотел уйти в онлайн-продажи, но не знал, куда именно. Мой друг посоветовал мне пройти обучение по интернет-маркетингу и работе с Яндекс Директом. После курсов я смог устроиться на позицию младшего интернет-маркетолога в небольшой стартап. В резюме я указал большой опыт в продажах и успешное прохождение курса. Этого оказалось достаточно, чтобы попасть на собеседование. Компания была действительно небольшая, поэтому собеседовал меня непосредственно руководитель. По его мнению, у меня не было всех технических навыков, необходимых для работы. Но в итоге он вынес вердикт: «Всему можно научиться. Главное — ваш характер подходит для этой работы».
Так за три месяца я попал в IT без опыта и формального образования в этой сфере. Далее я работал в международной рекламной компании, затем — в компании, разрабатывающей мобильные приложения. И постепенно пришел к работе над своими проектами.
Учился программированию в институте, на курсах, но продолжает учиться до сих пор
В детстве я не задумывался о «входе в IT-индустрию», в моде была профессия юриста. Еще все вокруг хотели стать нефтяниками и госслужащими. Но мне очень нравились математика и физика. В основном благодаря увлеченным своим делом учителям по этим предметам. Сейчас я понимаю, что это и определило мое будущее как айтишника.
Мечты научиться программированию тоже не было. Все началось с того, что знакомый родителей помог мне написать простенький сайт в блокноте. Меня поразило, что с помощью таких простых средств может получиться что-то настолько волшебное, как целый сайт. В школе я самостоятельно учился создавать игры на Flash. Там были элементы программирования, которые заложили некоторое понимание алгоритмов.
После этого я поступил в технический университет с минимальным изучением программирования. Помню, что пытался пройти дополнительные курсы по Java. Без понимания, зачем я это делаю, было сложно воспринимать информацию. На курсах было много теории и мало практики. Можно сказать, что все обучение прошло мимо.
Имея какие-то основные представления о том, как программировать, я устроился на работу стажером-исследователем. Здесь я смог общаться с людьми, которые действительно разбираются в программировании и имеют практический опыт. Я постоянно задавал им вопросы и много экспериментировал с языком С++, постепенно стал разбираться во все большем количестве айтишных вопросов.
С основами одного языка программирования можно научиться любому количеству других языков. Я быстро изучил Python и стал экспериментировать с веб-проектами, перешел к освоению машинного обучения и стал «дрейфовать» в сторону менеджмента IT-проектов. Так я закрепился в мире IT, но продолжаю учиться до сих пор.