До 30 ноября

Скидки до 81 000 руб и вторая профессия в подарок!

Главная | Все статьи | Истории успеха

Как в 36 искать работу junior-программистом, доучиться и все-таки её найти

Время чтения статьи ~7 минут 55
Как в 36 искать работу junior-программистом, доучиться и все-таки её найти главное изображение

Введение

Стать программистом я мечтал ещё лет в 5-6, когда отец привёл на работу, а там местный «компьютерщик» загружал с дискет игры и показывал, как играть. Хотя, скорее всего, этот я компьютер где-то уже видел. Это казалось магией и будоражило воображение. Помню, как узнал, что в программировании есть логические ветвления (if, then, else), и начал развлекать себя тем, что в голове придумывал сценарии с кучей «если».

В 6-м классе (1996 год), после уговоров, родители подарили мне ПК. Дальше началось погружение: курсы ПК в «доме пионеров», обмен компьютерными играми, переустановки «глючной винды» раз в неделю, Интернет в Netscape Navigator. Затем, не смотря на мое желание идти в «Политех», в 9-м классе я очутился в техникум связи — возможно родители хотели ещё одного связиста в семье.

Потом учёба, женитьба, работа. Каким-то образом мне удалось упросить родителей оплатить курс unix-windows администрирования в местной «Компьютерной академии». Там сильно повезло и с сокурсниками, и с преподавателем. И после окончания курса я попал на работу в местный интернет-провайдер линейным монтёром, а когда генеральному директору надоело заниматься администрированием, меня повысили до помощника системного и сетевого администратора (Junior-NA). Тут пригодились оба моих образования. 

Читайте также: Haskell — язык, позволяющий глубже понять программирование. Как он устроен и почему его выбирают разработчики?

Как обычно водится в системном администрировании, приходит время — и встает вопрос об автоматизации. Тогда меня опять спас генеральный директор (олдскульный программист) — сначала я начал подсматривать у него скрипты на bash, задавать вопросы о C/С++ и PHP, на котором написан биллинг, потихонечку написал NMS (систему управления сетью), которая умела рисовать топологию сети, настраивать оборудование, искать абонентов по реквизитам.

Привет, Хекслет!

Мечта программировать никуда не делать с детства, а практика показала, что автоматизировать можно много чего, и это приносит только пользу. Начал искать место, где можно систематизировать накопленные знания в PHP, и заодно изучить какой-то модный Фронтенд Framework. Тыкался то в иностранные обучающие сайты, то в видео на YouTube, но это приводило только к скуке. Так я пришёл к выводу, что бесплатное обучение не для меня, и мне нужна систематическая помощь кого-то опытного. Начал смотреть, что есть на рынке, и обнаружил какие-то сумасшедшие цены в Yandex, GeekBrains. В «Яндексе» смутила цена — порядка двух месячных зарплат, которые нужно было отдать сразу же. В GeekBrains цену не помню, но там было очень «цветастое оформление» — меня показалось, что оно веет инфоцыганством. Потом какие-то «умные алгоритмы» поймали меня в рекламе в Facebook, в результате чего я наткнулся на Хекслет. Цена за месяц была подъемная, дизайн — аскетичный, в общем — то, что и было надо.

Хекслет не так прост, как кажется

Попав на Хекслет я думал, что потрачу несколько месяцев, пройду профессию «Фронт», потом может и PHP. И так стану полноценным FullStack-программистом. Но не тут то было, помню, что уже где-то на 3-4 курсе с функциями и рекурсией начал потеть. Прям сильно. Специально шёл домой пешком, чтобы обдумывать решения задач. Засыпал с задачами, просыпался тоже с ними. Хекслет вернул на землю с одной стороны, а с другой — показал, насколько код может быть понятнее и лаконичнее. Стало понятно, что до полноценного разработчика мне нужно ещё 5-6 месяцев поработать. 

Переезд в Москву и первые попытки устроиться программистом

Дальше по личным причинам мне пришлось уехать в Москву, запаса средств было не много, потому искать работу времени не было, да и ни одного проекта из профессии ещё за плечами не было. Месяц я попытался найти первую работу, сходил на 8-10 собеседований, сделал 3-4 принятых тестовых заданий. Но в тех местах, где меня брали, были какие-то лютые галеры, либо непонятные условия работы (оформление Украинцев в Москве на работу — вообще отдельная история). В местах, куда я хотел, обычно говорили: «нужно ещё подучиться, а потом приходить». В последнем сказали «закончи проект на Хекслете». Накопления заканчивались, пришлось пойти работать по старой профессии «сетевым инженером» (NOC) в «Оператор Хостинга». На новой работе, конечно, и масштабы впечатляли, и было много опытных сотрудников, у которых есть чему поучиться, — но меня тянуло программировать.

Польза проектов

Через 16 месяцев я наконец-то поднакопил денег, уволился со старого места, и занялся наконец проектом на Хекслете. Описание у проекта - консольная утилита. Думал «накидаю за пару часиков» — и опять лицом об стол. В процессе прохождения проекта стало понятно, что даже в такой маленькой утилите есть и поток данных, и архитектура, и расширяемость. Кроме того, менторы вытряхивали из меня то, за что так не любят PHP-разработчиков — линейный «лапше-код» с сокращенными и непонятными названиями переменных. Незабываемые впечатления. 

Устройство на работу

Дальше было два собеседования. На первом был социальный продукт по оценке качества товаров. Общались два часа по технической части, ответил на часть вопросов о базах данных, структурах, работе HTTP, работе unix-систем, но на вопросы по паттернам честно сказал, что знаний мало. Дальше поговорили «за жизнь» и сказали, что свяжутся. Через неделю попросили подождать, так как рассматривали ещё одного кандидата. Больше о них ничего не слышал, но и не расстраивался — в Москве предложений много, а сейчас есть ещё и удалёнка. Стал учиться дальше и ждать.

Смотрите также: Публичное собеседование для PHP-программиста на youtube-канале Хекслета

Через неделю в почту постучался мой нынешний работодатель и предложил поговорить. Оказалось, что работа рядом с местом, где я живу — всего в 10 минутах пешком, это радовало. На собеседовании спросили, умею ли я пользоваться SSH и PostgreSQL, знаю ли PHP, HTML, CSS, JS. Ответил как есть, и в тот же день получил предложение, с тех пор уже 20 месяцев работаю программистом. 

Чем занимаюсь сейчас

Тут я разрабатываю в таких пропорциях: 50% времени программирую на PHP-Backend (формы, импорт-экспорт в json. xml, csv, sql, интеграции со сторонними API), 20% — JS-Frontend (сложные фильтры в каталогах товаров), 10% — DevOps-практики (тестирование и развёртывание приложений, иногда сборка образов), 20% — производительность. Веб-студия, в которую я устроился, делает в основном сайты и магазины с количеством посетителей 100 - 50 000 в день. То есть 90% — e-commerce, ещё 10% — системы автоматизации предприятия. В общем, я доволен, мной вроде тоже, когда за архитектуру и стиль кода не задвигаю :).

Советы следующим поколениям

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

  • Регулярно практиковаться, но без фанатизма.
  • Выработать дисциплину и найти баланс между учёбой, работой и отдыхом. Результат перегиба в одну сторону — восстановление в 6-7 дней и потеря времени. Лучше приучить себя тратить 1-2 часа в день на обучение, высыпаться и отдыхать, чем 1-2 раза в неделю погружаться в учёбу, а потом 2 недели восстанавливаться. 
  • Тратить 25-40 минут в день на восстановления пройденного и забытого материала, тогда не придется со стрессом готовиться к собеседованию.
  • Изучать инструменты, помогающие в работе - редакторы кода и IDE, debuger, и, со временем, profiller. На работе приходится иметь дело с tmux, vim, xdebug, Chrome DevTools.

Тем, кто уже ищет работу, хотелось бы посоветовать:

  • Не теряться, если получили отказ. Быть своим везде не получится, не смотря ни на какие навыки. В месте, где вас посчитают своим, примут, несмотря на временные пробелы в какие-то навыках и знаниях.
  • На собеседовании честно говорить то, что знаете, скрыть ничего не получится. А если и получится, то достаточно быстро это вскроется — так вы просто потеряете время и нервы, как свои, так и работодателя.
  • Если позволяют условия, не торопиться и дождаться 2-3 предложений, а потом уже спокойно выбрать лучшее. На этапе обучения лучше контактировать с опытными и общительными менторами, чем получить на 10-20к больше и 1-2 года стоять на месте.
Аватар пользователя Anatoliy Poloz
Anatoliy Poloz 12 февраля 2021
55
Рекомендуемые программы
профессия
Осваивайте разработку веб-страниц, оживляйте дизайн макетов, публикуйте сайты и приложения. Отслеживайте ошибки в интерфейсе и устраняйте их
10 месяцев
с нуля
Старт 28 ноября
профессия
Обучитесь разработке бэкенда сайтов и веб-приложений — серверной части, которая отвечает за логику и базы данных
10 месяцев
с нуля
Старт 28 ноября
профессия
Выполняйте ручное тестирование веб-приложений, находите ошибки в продукте. Узнайте все о тест-дизайне.
4 месяца
с нуля
Старт 28 ноября
профессия
Научитесь разработке веб-приложений, сайтов и программного обеспечения на языке Java, программируйте и используйте структуры данных
10 месяцев
с нуля
Старт 28 ноября
профессия
новый
Собирайте, анализируйте и интерпретируйте данные, улучшайте бизнес-процессы и продукт компании. Обучитесь работе с библиотеками Python
9 месяцев
с нуля
Старт 28 ноября
профессия
Занимайтесь созданием сайтов, веб-приложений, сервисов и их интеграцией с внутренними бизнес-системами на бекенд-языке PHP
10 месяцев
с нуля
Старт 28 ноября
профессия
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 28 ноября
профессия
Обучитесь разработке визуальной части сайта — фронтенда, а также реализации серверной — бэкенда. Освойте HTML, CSS, JavaScript
16 месяцев
с нуля
Старт 28 ноября
профессия
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 28 ноября
профессия
новый
Организовывайте процесс автоматизации тестирования на проекте, обучитесь языку программирования JavaScript, начните управлять процессом тестирования
8 месяцев
c опытом
Старт 28 ноября