Я жалею, что в то время, когда я ещё только учился писать код, никто не дал мне один совет: не читать статьи в духе «Как я стал разработчиком за столько-то месяцев». Поэтому теперь хочу сам дать этот совет другим. Хватит читать эти дурацкие статьи.
Уверен, что вышесказанное у многих вызовет протест – и в первую очередь у тех, кто пишет эти тексты. Поэтому сразу оговорюсь: я просто выражаю своё мнение. Если такое чтение доставляет вам удовольствие, читайте и не слушайте меня. Однако для начинающих разработчиков было бы лучше обходить их стороной или, по крайней мере, воспринимать с изрядной долей скепсиса. Сейчас объясню почему.
«Раз я уложился в такой короткий срок, значит, и у тебя всё получится!»
Одним из самых серьёзных вызовов в моей карьере стала необходимость круто её переменить. Уйти в другую профессию – дело не из лёгких. Это нельзя сделать по прихоти и в два счёта. Придётся в течение долгого времени осваивать огромное количество информации с предельной концентрацией. Само собой, это будет отнимать у вас много ресурсов – и финансовых, и эмоциональных.
Начинающим разработчиком я быстро понял одну вещь: чтобы добиться успеха, нужен определённый баланс между целями и надеждами. Чем грандиознее цели, тем больше надежды потребуется, чтобы преодолеть сложные периоды. Однако здесь необходимо выдерживать хрупкое равновесие: ведь за какой-то чертой цели станут нереалистичными, а надежды – ложными.
Лично я узнал, где проходит эта черта, на собственном горьком опыте. Видите ли, я начинал своё обучение программированию с абсолютного нуля. У меня вообще не было никакого опыта работы с кодом. Ни HTML, ни CSS, ни даже кастомизации страниц на MySpace.
Но у меня была бесперспективная работа, и я мечтал о профессии, которая давала бы возможность продвижения вверх. Я прочитал одно исследование, которое показывало, что программисты вдобавок к хорошим зарплатам отличаются высоким уровнем удовлетворённости своей работой. Это послужило тем толчком, который мне требовался, чтобы начать глубже интересоваться этой профессией.
Вместе с тем, я осознавал, что многие обстоятельства будут играть не в мою пользу. Мне было уже около двадцати пяти, и я начинал свой путь в IT совсем зелёным новичком. Я точно не знал, насколько реально будет найти работу, и даже примерно не представлял, на какую именно работу разумнее всего было бы рассчитывать.
К счастью, один-единственный запрос в Google открыл для меня целую сокровищницу историй успеха разработчиков. Новичку вроде меня это не могло не ударить в голову. Именно такие заголовки я и хотел увидеть:
- «Как я научился писать код за полгода и устроился в Google»
- «Как я стал разработчиком-самоучкой за семь месяцев – это под силу каждому»
- «Как я проделал путь от новичка до разработчика за девять месяцев, работая полный день»
Я глотал такие статьи пачками, потому что они давали мне именно то, в чём я нуждался – надежду. Я считал себя неглупым парнем. Если на свете в самом деле есть люди, которые за полгода-год выходят на должность программиста, то я вполне могу стать одним из них. В конце концов, многие авторы прямым текстом говорили: «Раз я смог, то и вы сможете». Эта надежда и подстегнула меня сделать рывок в IT-индустрию.
Дипломов по информатике: 0
Дней самостоятельных занятий: 116
Недель в буткемпе: 12
Самоотдачи: огромное количество
Я смог, и вы сможете!
Неприглядная реальность не замедлила показать себя. Для тех, кто не в курсе, шесть месяцев – это довольно короткий срок. Я не успел и оглянуться, как уже провёл за своими занятиями полгода, с очень и очень скромными результатами. Ну да, я уже знал основы HTML, CSS и JavaScript, мог сварганить статический сайт. Но до устройства на работу мне было ещё очень далеко.
Все эти статьи с заголовками вроде «Как я нашёл свою первую работу в IT за шесть месяцев», в которых я раньше черпал утешение, теперь обернулись для меня кошмаром наяву. Чем больше месяцев отсчитывал календарь, тем сильнее меня преследовали мысли об этих людях. Вот уже прошёл полный год с начала моих попыток, а письма работодателям так и оставались без ответа. Теперь я стал думать не «Раз они смогли, то и у меня всё получится!», а «Как им удалось? Может, это просто не моё?». Я уже практически расстался с мечтой стать следующим в этой череде историй успеха.
И только когда я решил, что больше не буду читать тексты такого рода, мне немного полегчало. Трудно побороть желание сравнивать себя с другими, но пора было выбросить это из головы и сосредоточиться на своём собственном пути. Получилось не сразу, но сейчас я уже не участвую в крысиных бегах. Мне удалось поразмыслить над своим личным опытом и усвоить из него несколько истин.
Хотя до сих пор я говорил только от своего лица, я не единственный, кого посещают или посещали подобные мысли. С каждым годом в IT приходит всё больше и больше людей. Мне часто случается общаться с начинающими разработчиками, и чувства, которые вызывают у них эти статьи, во многом перекликаются с моими собственными.
Спасибо, что написал это! Я тоже из тех, кто читал эти статьи и чувствовал себя неудачником. С тех пор, как стал встречать откровенных людей, таких, как ты, которые не боятся говорить о тех сторонах процесса, которые «не заводят», мне стало проще принять, что у каждого свой путь.
Скажу вам то, что обычно говорю этим разработчикам.
Эти тексты не отражают ту реальность, с которой сталкивается большинство.
Истина проста: большей части разработчиков начального уровня не удастся найти работу в ближайшие полгода или даже год. Немалая доля разработчиков-профессионалов имеет диплом университета, а для его получения требуется около четырех лет. Даже если вычеркнуть университеты и ограничиться буткемпами, мы увидим, что немногие из их выпускников устраиваются в IT-компании по истечению года.
Если взглянуть на статистику по трудоустройству от Fullstack Academy, известного и уважаемого нью-йоркского буткемпа, можно увидеть, что в 2019 году в течение шести месяцев после завершения курса на работу устроились 52% выпускников. Но если принимать в расчёт только тех, кто нашёл работу по специальности и на полный день, их число сократится до 35%.
Продолжительность курса составляет семнадцать недель (тринадцать недель занимают занятия и ещё четыре – подготовка). Можно предположить, что все учащиеся какое-то время осваивали программирование своими силами, прежде чем записаться в буткемп – от нескольких недель до нескольких месяцев. Таким образом, лишь у трети или около того выпускников Fullstack Academy от первых шагов в программировании до трудоустройства проходит менее года.
И такие результаты не специфичны для Fullstack Academy. Вы можете сами изучить данные по трудоустройству от других буткемпов и провести сравнение. Говоря откровенно, результаты очень неплохие, принимая во внимание все обстоятельства. Но если сравнить эту небольшую группу с ландшафтом сообщества начинающих разработчиков во всей его полноте – дипломированные программисты, выпускники буткемпов, самоучки – получается весьма скромная прослойка.
Реальность такова, что тем, кто подумывает о карьере программиста, вероятно, понадобится не меньше года на обучение. В моём случае прошло больше двух лет, прежде чем я сумел устроиться на работу. И ничего особенного в этом нет.
Программирование – это сложно. Одно то, что людям удаётся попадать в эту сферу без аттестации, экономя и время, и деньги на университетском дипломе, уже немалого стоит. Не нужно создавать себе дополнительные трудности, устанавливая выдуманные на пустом месте сроки. В конце концов…
Мы не повелеваем временем
Однажды мне попалось видео от «карьерного консультанта для разработчиков», который раздавал советы начинающим. Один из советов, на который он особенно напирал, звучал так:
«Дайте себе срок в один год. Ровно через год, день в день, начинайте рассылать резюме».
Это глупый и вредный совет. Вы никак не можете повлиять ни на скорость, с которой будете усваивать новую информацию, ни на время, которое займут поиски работы. Может показаться, что дедлайн будет мотивировать, но никакие дедлайны не заставят ваш мозг постигать JavaScript в ускоренном темпе. Согласно закону Хофштадтера, задавая себе сроки, вы обрекаете себя на то, чтобы их проваливать. Учебный процесс занимает столько, сколько занимает.
Но когда читаешь такие статьи глазами новичка, легко проникнуться мыслью, что временем повелевать можно. Многие авторы этих руководств превозносят до небес свою трудоспособность и с гордостью показывают миру своё выгорание.
Перевод
В среднем я проводил в этом кафе по 8-12 часов.
*
Не буду приукрашивать: я уже много месяцев держу темп в 50 часов обучения и написания кода в неделю и на текущий момент поставил на карту всё, чтобы получить работу в одном из самых дорогих и городов в США с бешеной конкуренцией.
*
Если учитывать и SSP, и программу погружения на Hack Reactor, я в течение четырех месяцев писал код по 12 часов в день, до шести дней в неделю. Я отточил навыки решения проблем, углубил своё понимание JavaScript, изучил фреймворки для фронтенда и бэкенда и попрактиковался в совместной работе с другими программистами.
*
7:00 – подъём, тренировка. В течение часа на велодорожке я смотрел лекции по программированию и выступления экспертов по Javascript.
До работы я добирался на электричке и, пока ехал, старался найти в Твиттере как можно больше специалистов по Javascript, подписывался на них и начинал задавать вопросы.
9:00 – 17:00 – работа. Признаюсь, вернувшись домой, позволял себе немного покурить травки.
18:00 – 3:00 – занятия по программированию
И так каждый день.
*
Не буду приукрашивать: я уже много месяцев держу темп в 50 часов обучения и написания кода в неделю и на текущий момент поставил на карту всё, чтобы получить работу в одном из самых дорогих и городов в США с бешеной конкуренцией.
*
Если учитывать и SSP, и программу погружения на Hack Reactor, я в течение четырех месяцев писал код по 12 часов в день, до шести дней в неделю. Я отточил навыки решения проблем, углубил своё понимание JavaScript, изучил фреймворки для фронтенда и бэкенда и попрактиковался в совместной работе с другими программистами.
*
7:00 – подъём, тренировка. В течение часа на велодорожке я смотрел лекции по программированию и выступления экспертов по Javascript.
До работы я добирался на электричке и, пока ехал, старался найти в Твиттере как можно больше специалистов по Javascript, подписывался на них и начинал задавать вопросы.
9:00 – 17:00 – работа. Признаюсь, вернувшись домой, позволял себе немного покурить травки.
18:00 – 3:00 – занятия по программированию
И так каждый день.
Всё это наталкивает на мысль, что если так же работать на износ и жертвовать сном, то получишь те же результаты. Однако исследования показывают, что временные затраты не пропорциональны продуктивности.
Вероятность получить работу в IT-компании складывается из целого ряда факторов. У разных людей имеются разные преимущества:
- Опыт написания кода в прошлом
- Диплом по специальности
- Проживание рядом с IT-хабом
- Наставники, советчики
- Круг общения в социальных сетях
- Умение подать себя на собеседованиях
Эти и многие другие переменные имеют свой вес и могут повысить шансы. Даже наличие компьютера и выделенного интернет-соединения можно назвать преимуществом – у кого-то и этого нет.
Вот как у меня обстояли дела четыре года назад. Ни телефона, ни ноутбука, зато огромное желание писать код! Я брал телефон у дяди, переписывал материалы с W3Schools, изучал их и практиковался, когда удавалось попасть за компьютер. Своего компьютера у меня нет до сих пор, но теперь я работаю фронтенд-разработчиком!
К сожалению, немногие авторы упоминают об обстоятельствах, которые сыграли в их пользу, создавая у читателя впечатление, что всё, что нужно – это вкалывать, вкалывать и вкалывать. Не ведитесь на это. Щадите себя. Трудоголизм и выгорание – и так достаточно острые проблемы в IT-сфере. Ни к чему приносить им в жертву ещё больше людей.
И напоследок
В том, чтобы писать статьи в духе «Как я стал разработчиком» нет ничего плохого. Я и сам писал нечто подобное, так что прекрасно понимаю, по каким причинам люди это делают.
Пробить себе дорогу в IT – огромное достижение, которому нужно отдавать должное, в том числе и документированием. Вспоминая и описывая свой опыт, можно освободиться от груза эмоций. К тому же нельзя отрицать, что подобные статьи пользуются популярностью – на них кликают, их читают. Люди никогда не перестанут писать на эту тему, да и правильно.
Нам как читателям важно помнить одно: это только частные истории, рассказы об опыте конкретных людей. Это не туториалы, и нередко такие статьи представляют ошибку выжившего. Очень немногим удастся воспроизвести описанные автором результаты. На каждого человека, который занял должность разработчика спустя шесть месяцев, найдётся дюжина таких, которым на это потребовались годы. Но их историй вы не прочтёте, потому что «Как я стал разработчиком за двадцать четыре месяца» — как-то не звучит.
Неважно, сколько времени вам понадобилось, чтобы освоить профессию разработчика: полгода, два года, больше. Пробиться в индустрию – это только начало. Гораздо важнее то, как вы будете действовать, когда в ней обоснуетесь.