В детстве мне страшно нравились компьютеры. Но на вступительных экзаменах в колледж я не набрал достаточно баллов, чтобы попасть в IT-сферу. Потому я занялся горным делом.
После особенно плохого семестра, когда завалил несколько предметов, летом я решил подработать охранником. В итоге, подработка стала моей карьерой. Вам не надо обладать особым умом, чтобы работать охранником в Испании. Люди, окружающие вас, начинают испытывать пониженные ожидания от вас, а через некоторое время их чувствуете и вы сами. Вы перестаете работать над собой как личностью. Но с охранником в моем случае произошло нечто иное.
Я работал на своем 400 событии на Campus Madrid Google после года карьеры в качестве охранника. Несколькими месяцами ранее моя жена родила сына. На кампусе меня окружили амбициозные предприниматели. Я видел как они делают важные шаги и идут на риск. Но я чувствовал себя в ловушке безнадежной работы, пытающийся свести концы с концами и обеспечить свою растущую семью.
На сцену поднялся спикер. Я стоял рядом и слушал каждое слово. Тогда он произнес предложение, которое изменило мою жизнь навсегда:
Любой может научиться программировать и работать разработчиком.
Сперва это заявление вызвало у меня скепсис: ивент имел отношение к дорогому буткемпу для разработчиков. К тому же, в Испании профессии, требующие интеллектуального труда, отведены людям с университетским дипломом. Но спикер сказал, что из-за высокого спроса работодатели идут на исключения. Он утверждал, что все, что необходимо для работы в разработке ПО, – пробиться через заграждение задач по программированию и интервью в процессе собеседования.
Я помню тот конкретный момент, когда закончил изучать все его заявления. Для меня стало откровением, что его слова не были просто маркетингом, а имели корни в экономике нашего времени. Тогда я принял решение. Я собирался стать разработчиком. Чего бы мне это не стоило.
В поиске курсов
У меня не было времени бездельничать, поэтому я решил воспользоваться лучшим способом обучения программированию. Я начал с расспрашивания друзей-разработчиков в Campus Madrid вроде Карлоса Эрнандеза, СЕО Gamify. Он порекомендовал начать с сайтов вроде Codecademy, а затем ставить конкретные цели и достигать их в его приложении. Я продолжал поиски онлайн, прыгая с одного ресурса на другой. День за днем я пробовал каждый из курсов, который находил.
Затем я поговорил с Даниелем Мери, основателем локального митапа по Haskell. Он был уверен, что я могу научиться программировать бесплатно, использую opensource-ресурсы. Я послушался его совета – попробовал freeCodeCamp. И мне понравилось.
Вкратце, магия freeCodeCamp это:
- у вас есть четкий пошаговый путь;
- проблемы достаточно сложные. Здесь вас не держат за ручку, как на многих других ресурсах. Они дают вам пространство, чтобы совершать свои ошибки;
- у вас есть доступ к глобальному сообществу, которое готово поддержать вас 24/7;
- вы создаете реальные проекты быстро и последовательно;
- вы можете писать код, который помогает реальным общественным организациям.
Мои ошибки
Я бы хотел сказать, что с этого момента я принимал лучшие решения и воспользовался кратчайшим путем к должности разработчика. Но, правда в том, что я совершал ошибки. Главной из них было то, что я не заканчивал то, что начинал.
Когда я начал учиться программировать, я продвигался очень быстро. Начало медового месяца с программированием было прекрасным. Я чувствовал себя царем горы. Поэтому, когда я сталкивался с проблемой, которую не мог быстро решить в голове, я не старался найти для нее программное решение. Я хотел продолжать двигаться быстрее, поэтому я шел дальше, изучая все больше и больше. Как результат, у меня было множество наполовину решенных проблем и незавершенных проектов.
В конце концов я понял горькую правду: эти нерешенные проблемы не исчезнут, а будут только возвращаться, чтобы кусать меня. Мне нужно было научиться “ползать” прежде, чем “учиться” ходить. Реальность в том, что лучше иметь один завершенный проект, чем тысячи неготовых.
Еще одна ошибка – я постоянно терял ФОКУС. Когда я искал решение своей проблемы, я мог заинтересоваться какой-то другой темой. А потом еще одной и еще одной… и прежде чем я успевал опомниться, день подходил к концу, а моя изначальная проблема оставалась нерешенной. Годом позже я услышал, как Пабло Альмуние описывал этот феномен как «охоту за белками». Вспоминайте эту сцену каждый раз, когда отвлекаетесь:
Следующий шаг
Мое внимание переключалось каждый день. Я позволял интернету искушать меня все новыми и новыми блестящими курсами, яркими языками и невероятными фреймворками. Я начал чувствовать, что никогда не стану достаточно квалифицированным, чтобы получить работу разработчика. Возможно, программирование было для меня слишком глубоким озером и я мог в нем утонуть.
Но я подумал про своего сына. Я подумал о будущем, которое хочу для него. О примере, который хотел ему показать, не сдавшись.
Тогда я встретил разработчика по имени Улис Гаскон. Он посоветовал закончить проекты, которые я начал. Он даже предложил помощь. Поэтому, я вернулся к “легким” вещам, которые забросил. Сделав это, я начал задавать новые вопросы и сталкиваться с новыми вызовами.
Советы Гаскона и Эрнандеса сыграли ключевую роль в моем обучении. Поэтому, я с уверенностью могу сказать, что следующим шагом для меня стало то, что я попросил помощи у друзей.
Вхождение в сообщество
Мое обучение ускорялось. Я заканчивал все больше проектов и хотел строить новые, но понятия не имел над чем поработать.
Кто-то посоветовал пойти на мероприятия сообщества и искать вдохновения там. Но большинство событий в моем городе были лекциями, нацеленными на крутых разработчиков и фокусировались на суперсовременных технологиях.
Я же хотел создавать вещи с профессионалами всех уровней, но подходящего сообщества не было. Именно в этот момент я начал размышлять как настоящий программист. Если у тебя нет подходящего инструмента… сделай его сам! Поэтому я поговорил с друзьями, помогавшими мне ранее, и вместе мы основали Open Source Weekends.
После долгих недель тяжелой работы, спонсоров, которые отказывались от участия в последний момент, множества вложенных времени и денег, мы смогли сделать наш первый ивент. Спустя семь месяцев Open Source Weekends выиграл Open Award за лучшее открытое сообщество. В итоге, участие в жизни сообщества стало для меня критичным шагом. Это помогло мне улучшить социальные навыки и стать не просто “парнем, который учиться программировать”.
Первая работа
После 11 месяцев обучения программированию, множества провалов и все новых попыток, основания opensource-комьюнити, я получил письмо через рассылку нашего Open Source Weekends.
Компания Kubide искала backend-разработчика. Я решил сфокусироваться именно на back-end всего пару месяцев назад. Мне не слишком понравилась frontend-разработка, но я с удовольствием проводил часы за решением проблем в back-end. Kubide прислали мне тестовое задание: клон Twitter API. Это было сложно, но не катастрофически.
Затем я попал на собеседование с СЕО компании. Его больше интересовали мои навыки в обучении, чем успехи в разработке. Он также хотел нанять человека, с которым познакомился через сферу стартапов, а я для него ассоциировался с Campus Madrid (хоть я и был просто охранником).
Спустя три дня после встречи я получил звонок с предложением работы. Не могу передать свои чувства в тот момент. Все вокруг были так рады за меня. Наконец вся тяжелая работа, которую я вложил в обучение, была вознаграждена.
Мои первые впечатления от работы
Обычно такого рода истории заканчиваются на этапе хэппиэнда. Но я хочу рассказать вам о том, как это, когда вы попали на свою первую работу разработчика. Уверен, это поможет вдохновить вас на успех.
Вначале всегда страшно. Но это начало было и захватывающим. Вы проходите через эмоциональные русские горки. Сперва чувствуете себя изгоем. Кажется, что у вас нет необходимых навыков, чтобы писать новый код с нуля. Но вы стараетесь изо всех сил.
Пробуйте, пробуйте и снова пробуйте. Когда вам кажется, что вы испробовали все, продолжайте пытаться. После, можно обратиться за помощью к более опытным коллегам, которые смогут направить вас на верный путь. В этот момент вы начнете чувствовать себя лучше, потому что будете заканчивать некоторые из задач.
Однажды вы увидите кого-то, решающего проблему, на которую вам требовался день, за минуту. Вы снова почувствуете себя изгоем. Но через некоторое время вы сами поможете кому-то решить проблему и снова почувствуете себя лучше. В конце концов, вы поймете сами или вам скажет руководитель, что вас наняли не за навыки, которые у вас были. Вас взяли на работу за навыки, которым вы могли научиться. Потому что лучшая стратегия – нанимать людей, которые умеют учиться и страстно хотят этого.
“Самое опасное препятствие – вы сами”, – Анхель Луис Кесада.
Как только вы поймете это, вы почувствуете себя лучше. Вы станете быстрее развиваться. Вы будете расти вместе с партнерами. Вы будете любить работу сильнее и сильнее и вы будете счастливы.
В заключение:
- Помните, зачем вы начали учиться программированию.
- Не гоняйтесь за белками.
- Заканчивайте проекты.
- Будьте упорны.