Я никогда не хотел быть программистом. Информатику я сдавал в качестве одного из выпускных экзаменов в школе, так как этот предмет был для меня несложным и мог позволить поступить в какой-нибудь более-менее приличный вуз. В то время я склонялся к учебе в Санкт-Петербурге, выбирая между Университетом связи, Политехническим университетом Петра Великого и Санкт-Петербургским государственным университетом.

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

Мои первые шаги в программировании

К началу второго года обучения мне стали приходить в голову здравые идеи, и я решил подумать, чем бы мне подзаработать, чтобы и мне было интересно. Я вспомнил времена, когда у меня были экзамены в школе, и вспомнил, какой предмет я на самом деле брал и где я на самом деле учился в то время. Поэтому я осмелился заняться программированием. Я купил несколько книг по программированию на знакомые темы (Java, микроконтроллеры) и попытался разобраться в этом дерьме. Я долго пытался постигнуть азы объектно-ориентированного программирования на Java и практически безрезультатно, так как было сложно понять, как реализовать все это на реальных задачах, и мне было совершенно не у кого спросить, как на самом деле осваивать программирование. В конце концов, я бросил это и перестал думать об этом в течение месяца.

Как я познакомился с Ruby on Rails

После всего этого несчастного месяца я получил сообщение от моего бывшего одноклассника. Это было что-то вроде «Эй, ты не хочешь быть программистом? Ты не дурак или что-то в этом роде, ты знаешь. У нас есть команда, и было бы неплохо иметь стажера. Я помогу со всем, что непонятно». Я согласился на предложение, так как условия были неплохие: удаленная работа, обучение, реальные деньги за задачи из расчета 100 рублей в час. И так началось мое обучение. Обычно это было ночью или ранним утром. В общей сложности я учился около 20 часов. Потом мне дали первое задание, которое я должен был выполнить за 3 часа, но сделал за 10. В голове возникли мысли, что это не для меня, я начал халтурить и к концу ноября я даже не думал о программировании снова.

моя первая работа

Через какое-то время я поискал в сети, пытаясь найти другую подработку в IT (в то время я прокладывал оптоволоконный кабель, но это было тяжело и мало оплачивалось). Там я нашел вакансию Junior Rails разработчика/стажера. В описании была строчка «Если у вас нет опыта, но огромное желание, мы тоже готовы с вами пообщаться». Я думал, что это правильно обо мне, поэтому я решил попробовать.

Я поступил в Университет ИТМО, зашел в их бизнес-инкубатор, зашел в офис и… Я оказался в самом центре программирования, разработки сайтов и стартап-атмосферы. Руководитель команды пытался взять у меня интервью, задавая несколько вопросов о Ruby и о логике в целом. Я хорошо помню, что ответила только на 2 вопроса из 7. Тимлид (мой тебе привет, Рома) сказал, что хватит, и я подумал: «Ну, я подучусь и вернусь позже». Но когда я спросила у Ромы, как у меня дела, он, к огромному удивлению для меня, сказал, что все в порядке, и просто снова повернулся к экрану.

Когда я спускался вниз, я поговорил с менеджером проекта. Он спросил меня, сколько денег я хотел бы иметь, и я застенчиво промямлил что-то вроде 15000 рублей. Руководитель проекта согласился и предложил начать в понедельник. Я до сих пор понятия не имел, что только что произошло, поэтому просто пошел домой. Вот так я, собственно, и устроился на свою первую работу программистом стажёром Ruby on Rails с окладом 15000 рублей. Меня это абсолютно устраивало, так как моя предыдущая работа была тяжелее, с той же зарплатой и бесперспективной, а программирование было явно более перспективным.

Здесь и сейчас

Прошло много времени с тех пор, как я устроился на свою первую работу. С тех пор я несколько раз увеличил свою зарплату и полностью оправдал собственные ожидания, связанные с обучением программированию. У меня были свои взлеты и падения в то время, как и у всех нас. Я получил платежи через 3 месяца после того, как они должны были быть, наткнулся на обанкротившиеся стартапы, которые все еще должны мне деньги, но больше не поддерживают со мной контакт, и много-много приятных встреч. Самое странное, что в продвижении по карьерной лестнице мне больше всего помогли мои социальные навыки. В работе программиста нет ничего особенного, нужно просто решиться, попробовать и потом пожинать плоды своего невообразимого успеха.

Наставничество

С самого начала моей карьеры я был рад поделиться с кем-то материалом, над которым работал. Я пытался научить свою девушку кодить, помочь своим одногруппникам и показать им, что в конце концов нет ничего сложного. Поэтому, когда я наткнулся на должность ментора на mkdev, я не долго думая подал на нее заявку. Делиться своими знаниями с людьми — это здорово, и также здорово, что еще больше людей смогут зарабатывать себе на жизнь и, возможно, изменить свою жизнь к лучшему.

Профиль наставника Ивана на mkdev можно найти здесь.

Вопросы

Можете ли вы дать совет, который обычно считается спорным?

Я думаю, что в сфере программирования важны не ваши программные способности, а социальные навыки, работа в команде, умение спрашивать, если что-то непонятно, и аргументированно аргументировать свою точку зрения, когда это необходимо. И, конечно же, признание собственных ошибок.

Как вы поддерживаете свои навыки, чтобы быть актуальными? Как вы растете и становитесь лучше как разработчик?

Если есть возможность, я обычно выбираю какие-то нестандартные пути решения задач (новый язык, новый фреймворк и т.д.), время от времени лазаю по exercism.io и, естественно, читаю.

Ваши лучшие 3 книги для новичка?

Честно говоря, я прочитал всего несколько книг по программированию, то же самое касается и книг по Ruby. Так что я упомяну тот, который будет полезен наверняка. Гибкая веб-разработка на Rails | Сэм Руби. И, очевидно, rubyonrails.org, там можно найти ответы на 95% начальных вопросов о Rails.

Ваши 3 лучших сайта/новостных бюллетеней/источников информации, которые должен прочитать каждый разработчик?

Не скажу про всех, но я слушаю rwpod.com, читаю некоторые другие источники и подписываюсь на некоторых известных разработчиков в Twitter.

Некоторые смешанные источники:

Твиттер:

Фото вашего рабочего места

Это статья mkdev, написанная Иваном Такарликовым. Вы можете нанять Ивана в качестве личного наставника RoR.