Привет! Меня зовут Арсен Григорян, я студент курса «Python-разработчик» в Яндекс Практикуме. В апреле 2022 года я решил заняться программированием — прямо как хотел в юности, а в декабре получил своё первое предложение о работе. Звучит как лёгкая история успеха, но на деле этому предшествовали сотни откликов в пустоту и больше тысячи часов учёбы.

В этой истории я расскажу, как стал разработчиком после 14 лет в сфере продаж и насколько важны две вещи: удача и трудолюбие.

Работа в продажах: от сим-карт до автомобилей и систем для очистки воды

Я занимался продажами с 18 лет. Начинал с сотовых телефонов и сим-карт, потом работал в автомобильном бизнесе — продавал «ауди» и «мерседесы». Это было интересно, но быстро надоело.

Со времён работы в автомобильном бизнесе осталась только такая фотография
Со времён работы в автомобильном бизнесе осталась только такая фотография

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

Веду тренинг по продажам в своей компании
Веду тренинг по продажам в своей компании

Потом я открыл своё дело по водоочистке и начал работать на себя: сам закупал, продавал, устанавливал системы. У меня даже сайт до сих пор работает!

Сайт бизнеса, который я открывал. Сейчас я сделал бы сайт себе сам, но тогда пришлось заказывать
Сайт бизнеса, который я открывал. Сейчас я сделал бы сайт себе сам, но тогда пришлось заказывать

Вскоре я понял, что не тяну свой бизнес. Даже не то что не тяну. Это просто не то, что мне надо. Есть мнение, что все успешные люди должны прийти к своему делу и открыть бизнес. Так вот, я проверил — это не так. Никакого кайфа, та же самая работа, только в одиночку. В итоге я вернулся в ту же компанию, в которой работал, снова на позицию менеджера по продажам.

Начало: как я решил стать программистом и чем понравился Python

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

Сначала думал про Java. Даже не знаю почему, просто название языка было на слуху. Посмотрел что-то в интернете и ничего не понял. Сейчас я думаю, что, наверное, просто открыл какой-то сложный проект и испугался. Стал искать дальше и случайно наткнулся на Python. Кажется, это была какая-то статья на Хабре. Я увидел код, и мне сразу понравилось! Мне показалось прикольным, что это будто просто текст на английском. Читаю по строчке и понимаю, что происходит. Меня это, конечно, зацепило. Открыл какие-то видеокурсы для детей, написал свой первый Hello, world! — и всё, затянуло.

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

Как я учился сам: основы языка и первая программа для работы

Всё началось с видеокурсов для детей и решения каких-то простых задачек из интернета. Потом открыл для себя платформу Stepik — там есть бесплатные курсы по Python и Django. Параллельно смотрел видео про разработку, например, на канале у Алексея Корепанова.

Я даже смог использовать Python в работе — когда у меня был бизнес в сфере водоочистки, я генерировал штрихкоды с помощью бота в Телеграме, которого написал самостоятельно. Я давал ему номер товара, наименование и артикул, а он выдавал штрихкод и помещал его с названием и артикулом на картинку 6 × 4 см в формате JPEG.

Сейчас я вижу, что код не очень красивый и правильный, но тогда у меня было меньше навыков
Сейчас я вижу, что код не очень красивый и правильный, но тогда у меня было меньше навыков

А дальше было сложно. Я не понимал, куда мне развиваться и что учить дальше. Django большой, его можно осваивать бесконечно. Мне не хватало структуры и практики. Понял, что нужно идти учиться.

Учёба: почему выбрал Практикум и сколько времени посвящал коду

Яндекс для меня всегда был авторитетной компанией. Наверное, поэтому долго и не думал, где учиться. Конечно, смотрел отзывы на Ютубе — ребята записывали видео, как проходили курс. Мне всё подошло. Особенно понравилось, что никто не обещал трудоустройства. Сразу доверия, что ли, больше. Понятно же, что такое нельзя гарантировать.

Сначала прошёл бесплатную пробную часть курса. Чтобы пройти его полностью, почти пришлось взять кредит. Уже подал заявку, и мне её одобрили, но что-то меня застопорило: в мире неспокойно, да и ещё один кредит брать не хотелось. Сначала решил подождать, а потом узнал, что у государства есть программа финансирования обучения (была актуальна в 2022 году). Нужно было подать заявку на Госуслугах, и её либо одобряли, либо отклоняли. Могли даже оплатить учёбу полностью! Условие одно — доучиться. Иначе придётся возвращать деньги. Мне государство оплатило 50% стоимости обучения.

Я приступил к платной части курса, и сразу началось что-то новое. Первым был SQL, который я вообще не изучал до этого. Потом Django — что-то я уже знал, но было много нового, это довольно большой блок. Именно Python давали мало, но его много и не нужно — было ровно столько, сколько понадобится для работы. В каких-то местах мне было проще благодаря подготовке. Некоторые упражнения у меня получалось выполнять несколькими способами, мне нравилось экспериментировать с подходами.

Я учился и параллельно продолжал работать в продажах. Распорядок был чёткий: в пять утра просыпался и заранее ехал на работу, с семи до девяти учился, с девяти до вечера работал, а потом дома снова учился — занимался от часа до трёх. То есть каждый день у меня уходило минимум три часа на обучение. К счастью, жена поддерживала и понимала, что это целая профессия и я должен уделять учёбе много времени.

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

Поиск работы: сотни безответных откликов и 0 собеседований

Когда я начал учиться в Практикуме, почти сразу стал прощупывать рынок. Мне казалось, что у меня на тот момент был достаточно хороший набор знаний и я уже могу что-то найти. Стал рассылать резюме. Чуть позже, погрузившись в обучение, понял, что нет — всё-таки моих знаний вообще недостаточно. Чуть-чуть успокоился и снова принялся искать работу, когда мы почти прошли Django. То есть спустя пару месяцев обучения.

Три-четыре месяца я рассылал резюме и сопроводительные письма на Хедхантере, но откликов вообще не было. Думаю, я отозвался не меньше чем на две сотни вакансий. При этом я трезво смотрел на вещи и искал предложения и о стажировке, рассматривал вакансии только для джуниоров. Понимал, что шансы устроиться для студента невелики, но хотел пройти хотя бы на следующий этап, попасть на собеседование, узнать, что на нём спрашивают.

Неоднократно переписывал резюме и сопроводительное. Добавлял навыки, когда осваивал какую-нибудь новую технологию. Понял, что важно правильно писать сопроводительное письмо: не единым полотном текста, а разбивая на абзацы. Когда начал так делать, стали приходить тестовые.

Задания были такие: например, развернуть проект на Django — создать страничку для оплаты и подтянуть стоимость товара. Или написать программу, которая загружает с биржи стоимость биткойна или другой криптовалюты и показывает её в консоли в реальном времени, а при отклонении больше процента выводит соответствующее сообщение. Делал все задания и часто был уверен в них на 100%, но результат один — ноль реакции.

Моя первая работа в IT: вакансия на бирже фриланса и вопросы по Python на собеседовании

После нескольких месяцев моих неудачных поисков знакомый, работающий в IT, посоветовал зайти с другой стороны и зарегистрироваться на бирже фриланса FL.ru, найти первые заказы, набраться опыта. Я зашёл и в первый же день увидел вакансию в московской компании, которая занимается парсингом данных с социальных сетей. По привычке откликнулся — и мне ответили.

Получил тестовое задание: надо было написать конвертер — подтягивать через API стоимость курса одной заданной валюты и конвертировать её в другую заданную валюту также с учётом курса. Выполнил задание, и меня позвали на собеседование.

На собеседовании были два тимлида, мы общались без видео, только голосом. Мне задавали много вопросов по Python, как простых, так и сложных. Нам ещё в Практикуме рекомендовали так готовиться к встрече с работодателями — проверять себя по базовым вопросам для собеседований. Вот тут как раз были они.

Подборка вопросов из материала на Medium похожа на памятку, по которой я готовился
Подборка вопросов из материала на Medium похожа на памятку, по которой я готовился

На некоторые вопросы я не мог дать точного ответа, тогда я начинал рассуждать. Часто логически доходил до верного варианта. В итоге я прошёл собеседование и меня взяли на работу.


У меня не было цели просто попасть в IT. Если бы мне не нравился сам процесс, то я бы сейчас очень расстроился. Но я кайфую от работы и хочу учиться дальше. Например, планирую освоить основы JavaScript и React, чтобы иметь возможность реализовать какой-нибудь проект полностью — взяв на себя и бэкенд, и фронтенд. По работе мне нужно учить Celery и Redis, которые помогают работать с очередями задач и парсить ссылки в многопоточном режиме. Хочу освоить FastAPI, чтобы уметь создавать API-приложения.

Мой путь не универсален, и в нём не обошлось без удачи, но вот что лично мне помогло не упустить её, когда выдался шанс:

  • Читать больше, чем дают на курсе. Когда мне нужно разобраться в вопросе, я люблю находить ответ в интернете и часто даже не читаю материал полностью. Вместо этого беру приведённый в нём кусок кода и разбираюсь, анализирую, как он работает, что-то меняю. Я бы не стал уповать на курс на 200% — важно делать больше и действительно гореть этим.

  • Пробовать разные подходы. Я редактировал резюме и переписывал сопроводительные письма, наблюдал за количеством просмотров, присланных тестовых, делал выводы. А помог и вовсе переход на другую площадку. Наверное, мне повезло, но тактика менять подходы так или иначе сработала.

  • Готовиться к собеседованиям по базовым вопросам. Мой небольшой опыт показал, что их действительно задают. И даже если я знал ответы, всё равно повторил их заранее — это помогло мне чувствовать себя увереннее.

  • Обгонять сроки. Обучение в Практикуме делится на спринты — небольшие части учебной программы. У каждого спринта есть свой дедлайн. Технически иногда можно его пропустить и получить зачёт в следующем спринте. Но в отзыве одного из выпускников Практикума я услышал рекомендацию — считать каждый дедлайн жёстким и не собирать долги, чтобы всё успеть и не забросить обучение. В итоге я даже заканчиваю спринты раньше, чем требуется, — например, за неделю вместо двух. Половину времени продолжаю учиться самостоятельно или перепрохожу спринт, улучшая код.

Комментарии (14)


  1. fivelife
    00.00.0000 00:00

    В джанге же есть drf, зачем fastapi?


    1. TyVik
      00.00.0000 00:00
      +3

      Потому что fastapi стильно-модно-молодёжно и там нет ничего "лишнего". И он такой лёгкий, но из-за pydantic весит 50Mb.

      А если серьезно, то для микросервисов на 5 эндпоинтов он выглядит действительно проще. Плюс из коробки типизация/валидация и Open API. После него DRF действительно кажется многословным.


      1. Areso
        00.00.0000 00:00
        +1

        Swagger опять же из коробки, не нужно пятью дополнениями приделывать как к Flask'у.


      1. danilovmy
        00.00.0000 00:00
        +1

        Есть такое ответвление lilghtweght Django. Тоже вариант, если очень хочется без "лишнего".

        p.s. Давно от тебя ничего не было почитать.


    1. Arsen1406 Автор
      00.00.0000 00:00

      Полностью согласен! DRF хорош, но оправдывает себя на больших проектах.


  1. OBIEESupport
    00.00.0000 00:00

    Если каждый день на протяжении 8 месяцев добавлять новую строчку с новой технологией в резюме, то через 8 месяцев резюме не только не влезет в формат начинающего соискателя, но и начнет вызывать подозрение своим объемом. Посмотрел свое - одна страница технологий и языков. Пока хватает на любую задачу.


    1. Arsen1406 Автор
      00.00.0000 00:00

      Вот я тоже думал об этом, типа через год-два сколько технологий можно указать в резюме будет)) Но думаю все не нужны, а только те, чкоторые требуются для вакансии)


  1. velipre_xella
    00.00.0000 00:00

    Что-то где-то подобное я уже читал.


    1. Arsen1406 Автор
      00.00.0000 00:00

      Да не, не может быть????


  1. fuwiak
    00.00.0000 00:00

    Вы, ребята, придумываете все более и более слабые истории, видимо идет далеко не все по плану, если не смогли нанять толкового копирайтера.

    Никто не хотел брать его на работу, но на фрилансе, где нужно быть гораздо более независимым и надежным специалистом, он уже пробился без проблем? Само описание процесса собеседования и описанных после него задач настолько инфантильно, что создается впечатление, что вся эта история произошла, но в "голове" автора.


    1. Arsen1406 Автор
      00.00.0000 00:00

      Привет. На фрилансе я не стал фрилансить, а наткнулся на вакансию. Сам фриланс я бы не осилил, просто хотел посмотреть, какие задачи бывают там. Можешь открыть мой сайт water-krd.ru, это был мой бизнес. Вряд ли яндекс стали бы делать сайт ради статьи. Да, я понимаю, что это ради рекламы, но история моя реальна. Как-то так))


      1. kipzshady
        00.00.0000 00:00

        Хоть бы описали, что делаете на новой работе? Что эта за контора которая занимается парсингом в России. Какие данные парсите? И какая у Вас сейчас зарплата


  1. a-burlakov
    00.00.0000 00:00

    Спасибо за статью! Минусы тут, я думаю, немного закономерны, потому что это одна из многих статей с сильным уклоном в Яндекс.Практикум, но мне как проходящему этот же путь, было интересно читать (я, правда, самоучка).

    Расскажи, пожалуйста: сколько примерно тестовых заданий тебе пришлось сделать до того, как ты наткнулся на ту самую вакансию, где дали оффер? Про отклики в пустоту - понятно, но интересно, сколько, так сказать, настоящих прямых контактов с той стороной у тебя, пока ты искал первую работу.

    И можно ещё вопрос: ты не мог бы примерно описать свои знания, - широкими мазками, без супер подробностей, - на тот момент, когда тебе дали оффер. Ну, то есть, это был чистый Python, или ещё Django, или ещё DRF, или ещё Docker, или ещё что-нибудь?


    1. Arsen1406 Автор
      00.00.0000 00:00

      Привет. Да я понимаю, что негатива будет много. Таков путь????

      Тестовых заданий было не больше 10. Было и так, что одна и та же компания присылала спустя время повторно свои задания. Откликов за все 4 месяца было порядка 200 а то и больше. Счет точный не вел в этом плане. Собес был всего один(это нынешняя моя работа).

      По-поводу технологий был Python, Django, DRF, Git, Unit test, немного Sql, немного selenium. Docker на тот момент я не знал. И первое время без знаний докера тяжеловато было. Потому, что приходилось частенько поднимать контейнеры. Сначала начал сам учить для работы, а спустя месяц начали проходить докер еще и в практикуме. Но на этот момент почти все, что давали в обучении, я уже понимал.

      Тебе удачи в на пути????