История начинающего программиста. Зачем вам это надо. И что было дальше

В нашей стране люди воспитаны так, что профессию надо выбрать раз и навсегда, причем уже к 18 годам. А что, если ошибся, либо надоело, либо дошел до стадии, когда карьерный рост по каким-то причинам невозможен? В юности смена рода деятельности воспринимается более-менее нормально, но когда тебе 30, а то и больше, тут уж не до маневров… Или это не так?

Короче, мне за 30, я состоявшийся профессионал, и я решил освоить фронтенд-разработку. Захотелось двух вещей:

  1. Возможности заработать на жизнь чем-то еще, кроме копирайтинга, журналистики и прочего писательского труда.
  2. Учебы. Вот той самой учебы, после которой у тебя появляются востребованные на рынке труда скиллы.

К тому же, иногда от текстов хочется отдохнуть и, отключив правое творческое полушарие, присесть на логическое и порешать совершенно другие задачки.

С чего начать?

Главная проблема новичка-кодера. Технологий море, языков океан, терминов – безграничная вселенная. Фреймворки, библиотеки, методологии, метаязыки… Неясно вообще ничего, а знакомые программисты и вовсе советуют не лезть. А если очень хочется?

Решив, что мне интересна разработка сайтов, а именно фронтенд, я отправился на YouTube. Там мне помогли видео о том, что должен знать веб-разработчик в текущем году – особенно те ролики, где досконально рассматривали всю «дорожную карту» от самых основ до вершин. Тут же более-менее стало ясно, куда двигаться.

Как учиться?

В общем есть два пути:

Суровый самоучка – кидаетесь в пучину с головой. Все, что надо, есть на YouTube, а все платное можно даром скачать на торрентах. Если что непонятно, спрашиваем в чатиках и соцсеточках.

Подход кажется хорошим, но он требует невыносимого самоконтроля. Вы можете безвылазно смотреть YouTube в течение первой недели, а на второй «что-то пойдет не так», и вы просто бросите. Просто потому, что вдруг отдали приоритет чему-то другому. Сериалу, играм, девушке – неважно. К тому же, вы ничего не платили, а стало быть ничего не теряете – и легко сливаетесь.

Те же бессистемные знания, которых вы нахватались за «неделю интенсива», быстро испарятся, а с ними и ваши мечты о новой жизни успешного айтишника, работающего в Европе, а то и в Силиконовой Долине.

Серьезный студент – идете учиться на платные курсы. Это лучшее, что можно сделать, потому что это – серьезно. Денег всегда жалко, но если уж вы решились оплатить учебу, стало быть, вы действительно хотите перемен в жизни и вряд ли позволите себе халявить. По крайней мере, в данный период.

На платных курсах вы получаете систематизированные знания от профессионалов и погружаетесь в учебную атмосферу с уроками, домашкой, контрольными и реальными проектами. Ну а если вдруг захочется прогулять пары или бросить, то вы несколько раз подумаете, прежде чем сделать это. Оплачено же!

Мне хотелось:

  • Систематизированные видеоуроки. С самых-самых основ. Я гуманитарий, и мне нужно все разжевать и положить в рот без лишней технической терминологии.
  • Качественная профессиональная подача. Мой учитель по ту сторону экрану должен говорить уверенно и по делу. И таких, как оказалось, очень и очень мало – большинство «преподов» можно смело слушать на удвоенной скорости, в то и не слушать вовсе.
  • Интересная практика. Без этого никуда. Нужно решать задачки, и важно, чтобы они соприкасались с реальной жизнью, а не только с математикой. Согласитесь, что одно дело тасовать абстрактные цифры в массивах, и совсем другое – написать какой-нибудь планировкщик или хотя бы базу девушек, с которыми ты одновременно встречаешься.

Где учиться?

Для желающего освоить новую профессию в интернете есть куча платных и бесплатных материалов. В моем случае начинающего веб-разработчика я обнаружил:

  • Неиссякаемый YouTube. Вроде бы все есть, но с чего начать, а тем более, куда продолжить, – непонятно. Знания не систематизированны. Блогеры любят фокусироваться на частностях, упуская общую картину. Однако YouTube хорош, когда нужно углубить какую-то тему.
  • Русскоязычные платные курсы «Нетология» , GeekBrains , HTML Academy и подобные. Дороговато, если не решил крепко-накрепко менять профессию и не уверен, что в будущем отобьешь затраты. К тому же бесплатные вебинары некоторых школ не блистали качеством, а среди преподавателей по другим специальностям я обнаружил коллег, чей профессионализм оставляет желать лучшего. Хм.
  • По ценам. Первый уровень месячного интенсива HTML + CSS в HTML Academy стоит 24 500 рублей. Профессия frontend-разработчик в «Нетологии» без скидки 54 900 рублей, правда, за 8-месячные курсы плюс обещают стажировку и трудоустройство. В GeekBrains берутся учить за 7855 руб/мес на протяжение семи месяцев, в комплекте стажировка на реальном проекте GeekBrains или Mail.Ru, а то и у партнеров вплоть до Сбербанка.

  • Курсы на Coursera , Udemy и похожих ресурсах. Посидев немного на этих площадках, понял, что там слишком много всего – с чего начать и куда двигаться дальше как-то не совсем понятно. По сути та же ситуация, что и с YouTube.
  • Туториалы на W3Schools , freeCodeCamp – нет видео, только тексты, а потому трудно воспринимаются.

И это лишь немногое из того, где можно поучиться.

Меня спасла реклама в Facebook. Предложили англоязычную школу Treehouse , и я повелся. Кликнул на бесплатный курс Introduction to HTML and CSS, прошел его.

Обучение было как раз таким, какое я искал: на видео профессиональный наставник с чувством, с толком, с расстановкой объяснял азы фронтенда. Иногда на экране появлялась доходчивая инфографика. В ходе разбора темы нужно было выполнять задания, а то и пройти целый челлендж, либо ответить на вопросы.В конце – контрольная работа. Есть «песочница», где писать код и ссылки на допматериалы – документации на Mozilla Developer Network и др.

Мне понравилось. Вот просто – понравилось. Обучение стоило всего 25 долларов в месяц, за которые я получал неограниченный доступ ко всем курсам школы. Я и вписался.

И что было дальше?

По мере прохождения курсов я работал над учебными проектами. Это были простенькие одностраничные сайтики. Как только происходил затык, и мне хотелось углубиться в тему, я направлялся на YouTube и в Telegram-чаты. Почувствовав силы, присоединился к тематическим сообществам на Facebook и время от времени отвечал на вопросы новичков.

Конечно же, иногда казалось, что ничего не получится. Особенно расстраивали жалобы состоявшихся айтишников – то денег мало, то галеры, то слишком много фреймворков, от которых пухнет голова, то общая потеря смысла жизни. Короче, убивали всю романтику. Те же, кто не жаловался, элементарно подавляли своим многолетним багажом знаний и навыков.

Мне помогало абстрагироваться от суровой реальности среднестатистического российского кодера. Вдохновение и поддержку я находил в зарубежных фрилансерских тусовках Digital Nomads. Как правило, это заряженные ребята, которые точно знают, чего хотят от жизни, и многие из них – программисты самоучки. А многие из самоучек – написали книги о своем пути к новой профессии.

Почитывал книги «How I Learned to Code: Lessons From Teaching Myself Web Development and Becoming a Paid Programmer in Only 3 Months» , «No Degree Web Developer: How I broke into the tech industry with 3 months of self-taught programming» , «The Self-Taught Programmer: The Definitive Guide to Programming Professionally» и прочие книги о success-story. Все это продается на Amazon.

Первые деньги

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

В случае с фронтендом это проще простого:

  1. Если вы хорошо учитесь, то у вас по ходу дела будут появляться готовые учебные проекты.
  2. В интернете есть базы готовых макетов. Загружаете – и верстаете. Чтобы не ковыряться слишком долго, поставьте себе цель: сверстать 5 макетов в неделю. Ну или хотя бы парочку.
  3. Наверняка у вас есть друзья, которым нужна сайт. Возьмите и сделайте им подарок.
  4. Если таковых друзей нет, то предложите свои услуги в каком-нибудь профессиональном сообществе. Бесплатно.

Как только почувствовали, что ваш кодинг-скилл достиг 80 lvl, и вы способны на раз-два решать актуальные задачи, можно искать работу. Тут прямой путь как минимум на

Всем привет! Меня зовут Андрей, я работаю в отделе разработки продуктов Veeam Software.

В этом году исполняется 6 лет с того дня, как я «пришел» в программирование. К слову, случилось это стихийно, и на момент написания своего первого кода, у меня за плечами не было ни профильного образования, ни малейшего опыта. Сегодня же, я создаю продукт, признанный и уважаемый во всем мире.

Сегодня я хочу рассказать свою историю.

Итак, начну с момента, когда мне исполнился 21 год, я уволился из рядов доблестной российской армии и оказался на серых и холодных улицах Санкт-Петербурга. Осень, отсутствие жилья и денег активировали все клетки головного мозга для ответа на вопрос: «Что делать?».

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

Охранник книжного склада (я же в культурной столице) - это та самая профессия, которая могла обеспечить все эти пункты. Через череду невероятных событий, совпадений и неудач я устраиваюсь на работу в офис одной очень известной в городе розничной сети по продаже книг, где находился и склад хранения.

Я стал там жить и работать: душ, компьютер секретаря, целый склад книг и три стула для сна. Так пролетели 5-6 месяцев. Я уже хорошо освоил на тот момент Visual Basic for Application и T-SQL и начал писать различные макросы автоматизации работы с Excel для секретаря. Я познакомился с ребятами из IT отдела, они мне выделили изолированную «песочницу» на виртуальной машине, куда я поставил Visual Studio и начал изучать уже более взрослые языки: C++ и C#. Не забывал я и о художественной литературе: за это время я успел существенно расширить свой кругозор в этой области. Благодаря этому, девушки из отдела персонала предложили мне устроиться продавцом-консультантом. Я согласился и стал работать днем продавцом на пл. Восстания, а ночью - охранником офиса. В таком режиме я проработал еще полгода, у меня появилась возможность снять жилье. В то же время, управляющая магазином предложила мне стать старшим продавцом. Я уволился из охранников и стал работать ночью в магазине. Должность ночного старшего продавца предполагает очень много рутинной работы по заполнению всяких файлов, отчетов, составления графиков рабочего времени.

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


С коллегой на работе в том самом книжном магазине (я слева).

В магазине были некоторые отделы, где я откровенно не знал ассортимент и не мог найти нужную покупателю книгу. Поисковый терминал честно говорил, что книга есть в магазине, но на каком стеллаже и полке - было неизвестно. Я взялся за решение этой проблемы. В моем распоряжении были несколько древних, уже списанных ТСД (терминал сбора данных) и компьютер, который я стал использовать как сервер. Так я начал писать свое первое клиент-серверное приложение. Уже через месяц я смог продемонстрировать работу программы на одном из отделов магазина, чем вызвал интерес у руководства. Мне предложили продолжить развивать свое приложение уже по-взрослому: составить план проекта с целями, сроками и бюджетом. Так я стал руководителем проекта «Адресное хранение». За все это время я набил миллион шишек и изобрел множество велосипедов, но это был бесценный опыт и я смог запустить свой проект в крупных магазинах сети.

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

Начал искать новую работу. Был на многих собеседованиях, где-то не нравился я, где-то не нравилось мне, но однажды на HH.ru наткнулся на вакансию в компании Veeam: требованиям я соответствовал. Я начал читать о компании, чем занимается и т.п. И понял, что совершенно не понимаю, о чем идет речь. Фраза «резервное копирование виртуальных машин и мониторинг виртуальных сред» повергла меня в шок. Но я отлично помнил выражение: «Программист - это человек, который решает совершенно непонятным вам способом проблемы, о существовании которых вы даже не подозревали». Значит, пора стать настоящим программистом. Я решил, во что бы то ни стало, работать в Veeam. В последствии выяснилось, что компания Veeam предоставляет решения, без которых просто не мыслима работа крупных компаний, гос. учреждений, банков и т.п.

Меня пригласили на интервью. От огромного желания получить работу, я заикался и делал глупые ошибки, но в меня поверили и взяли в команду UI. Видимо, меня спасли те самые «горящие глаза», о которых было написано в требованиях к вакансии.

Первые две недели работы я сидел с широко открытыми глазами: такого огромного и непонятного количества кода я не видел никогда. Своих коллег я воспринимал магами: они говорили и делали непонятные слова и вещи.


Это я в процессе работы.

«Сейчас я тебе все объясню», - сказал мне мой Team Lead, его рассказ был очень интересным и совершенно непонятным. Постепенно, день за днем, слова моих коллег стали приобретать смысл, я уже заканчивал свой первый «визард». На первых порах весь свой код я писал, используя широко известную практику «копипаста», Ctrl+C - Ctrl+V – 1я стадия программиста . Затем - «прозрение»: начинаешь использовать везде, где нужно, а чаще, где совершенно ненужно - «Software design patterns» - это очень опасная 2я стадия программиста: наступает, так называемый «паттерн головного мозга». Если остаться на второй стадии, то твой код будет понятен только тебе и только на момент написания, а коллегами ты будешь проклят. Как раз из второй стадии выдернула меня моя команда, вот тут я понял по-настоящему, что значит командная разработка. «Так писать не нужно» - это не аргумент, поэтому через шутки и примеры мне буквально на пальцах объяснили, где правильно, а где нет использовать сложные конструкции и шаблоны. Итак, через «грабли», «велосипеды» и помощь коллег наступает 3-я стадия: «код нужно писать так, чтобы он был понятен более одного дня не только автору, но и людям, которые работают с тобой».

Но, внезапно, оказывается, что код, который ты пишешь, должен делать ровно то, что от него ожидают пользователи. Наступает время знакомства с отделом «QA», т.е. с тестировщиками. Эти ребята просто «профи»: продукт знают «от и до», по логам могут найти самые неочевидные баги и дать им полное и понятное описание, но и не пропустят смещение на пиксель кнопки. Мы любим QA так, как могут любить разработчики тестировщиков:).

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

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

В ноябре прошлого года мы выпускали очередную версию программы. Для меня это стало важным моментом, во многом определившим дальнейшую мою судьбу. Все начиналось так:
- Андрюх, прикрути в трей иконку для Endpoint (наш новый продукт для ноутбуков и настольных ПК).
- А, ОК, сегодня сделаю.
Закончилось полноценным Modern UI приложением с анимацией, графиком, автоматическим обновлением, уведомлениями и многим другим, через несколько месяцев.

Пришлось, конечно, попотеть, но все получилось. Меня отметили, и вот, я уже Senior Developer. И теперь уже ко мне на собеседования приходят разработчики, и теперь я сам ищу среди них те самые «горящие глаза», которые несколько лет назад увидели во мне самом.

В общем, мораль моей истории в том, что нужно ставить себе цель и уверенно к ней идти. И, что немаловажно, нужно правильно выбирать окружение, которое будет помогать достижению твоей цели (компанию для работы, людей вокруг себя). И, конечно, будут шишки (куда без них), заново изобретенные велосипеды, но будут и прозрения, и развитие, и новые горизонты.

Наш продукт растет и завоевывает признание все большего количества пользователей (что безмерно тешит мое самолюбие). На фоне этого развивается и компания в целом. Скоро планируется открытие нового офиса Veeam в Праге. Мне предложили переехать, я подумал (да-да, я не сразу стал паковать чемоданы) и согласился. Теперь вместе с другими девелоперами команды (и матерыми программерами, и новичками) планируем переезд, освоение новой локации, познание чешского пива, ну и, самое главное, новых интересных задач!

Только зарегистрированные пользователи могут участвовать в опросе.

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

Трудился 5 лет в продажах, в том числе, был руководителем колл-центра. Но пару лет назад начал задумываться над тем, чтобы поменять сферу работы.

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

Когда грянул кризис, зарплаты в продажах сильно упали. При этом, насколько я знал, зарплаты программистов не просели.

Думал, что программированию можно научиться только в вузе

Когда я работал продавцом, думал, что на программиста нужно отучиться лет 5 в институте, закончить магистратуру, написать кандидатскую и еще иметь дополнительную вышку по математике. Тогда все программисты для меня были на одно лицо. Не было важно, кто пишет на C++, на Java или HTML - работа каждого казалась одинаково сложной для освоения. На деле все оказалось не так страшно.

Я стал выбирать подходящие онлайн-курсы. Попробовал курсы по программированию на Java - JavaRush, но они меня не зацепили. Не было живых примеров, возможности задать вопросы преподавателю. Дальше я сам попробовал заниматься, смотрел бесплатные видеоуроки по созданию сайтов.

Я попробовал самостоятельно заняться разработкой сайтов и это мне безумно понравилось.

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

Оценил эффективность профессии «Веб-разработчик»

Дальше я прошел бесплатные интенсивы на GeekBrains, чтобы понять, нравится мне это или нет. В результате записался на курс обучения профессии веб-разработчика. В дальнейшем хочу продолжить обучение на факультете веб-разработки GeekUniversity.

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

Умение концентрироваться и внимательность - это must-have любого разработчика.

Нужно понимать, что на лекциях преподаватель не даст вам всей существующей информации по теме, потому что это нереально в силу временных ограничений. И изначально нужно готовиться, что придется очень много читать и учить. Например, я после курса HTML/CSS кучу всяких дополнительных фишек выучил самостоятельно. Меня очень вдохновил преподаватель Алексей Кадочников, он умеет заинтересовать, доступно подает материал и готов ответить на все вопросы.

На курсах дают хорошую базу. Уже после первого блока можно сверстать сайт. Но есть куча дополнительных приколов и фишек, которые открываются дополнительно, когда начинаешь читать профессиональные сайты. Это та сфера, где нужно постоянно учиться.

Нашел хорошую работу в Екатеринбурге за 1,5 месяца

Первые несколько месяцев учебы я работал в интернет-магазине обычным продавцом. Я специально нашел такую работу, чтобы она не мешала учебе: недалеко от дома, не очень высокая зарплата, но четкий график с 9 до 18, после которого можно сразу пойти домой и заниматься. Также на работе в свободное время была возможность читать нужную литературу.

Когда немного подтянул знания, я уволился, съездил в отпуск и начал искать работу по той специальности, которую изучаю.

На поиски потратил 1,5 месяца: разослал резюме примерно на 100 очень разных позиций, даже на те, где требовался опыт; выполнил где-то 5 тестовых заданий.

Многие не отвечали, но я не особо переживал. Я прекрасно понимал, что рано или поздно найду работу, при этом не рассчитывал на большую зарплату. Готов был работать за 12-15 тысяч, чтобы получить практику. Для сравнения, опытные программисты у нас в Екатеринбурге получают 50-70 тысяч.

А потом я попал на собеседование в веб-студию «Современная творческая лаборатория», которая искала именно начинающего программиста. Им был нужен специалист, которого они обучили бы своим стандартам, стилистике кода. Я прошел собеседование, выполнил тестовое задание и мне предложили зарплату, которая была больше той, на которую я рассчитывал, и удобный график. Недавно я получил свой первый аванс.

Я получил, что хотел, потому что выбрал сферу, которая меня по-настоящему увлекла, не побоялся начать в ней с нуля и был готов много учиться.

Всем своим читателям большой привет!

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

Ну а сегодня я расскажу, что со мной происходило все эти 11 месяцев. И я думаю, что это пост будет полезен тем, кто хочет стать программистом. Потому что я взял и переквалифицировался в программиста.

Итак, как я стал программистом в 34 года.

Первое знакомство с компьютером и программированием

Эта история началась почти 20 лет назад. В 15 лет я поступил в Компьютерный Лицей и познакомился с компьютером. Там же я увлекся программированием и был одним из лучших в лицее. Мне очень нравилось программировать, и я был уверен, что после окончания лицея я буду поступать в технический ВУЗ и стану программистом.

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

Они говорили, что лишь единицы добиваются успеха. Для этого надо быть настоящим гением и тогда возможно сможешь уехать в США и работать в условном Microsoft. Как же они ошибались. Ведь сегодня программирование одна из самых перспективных и востребованных профессий. Программисты зарабатывают выше среднего в какой бы стране они не находились.

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

Погоня за перспективой и разочарование

В итоге я стал маркетологом и специалистом по продажам, начал работать в иностранных компаниях, добился некоторых успехов и мог продолжать двигаться и расти в этом направлении. Но не было удовлетворения от своей работы. Я понимал, что это не мое. Что я не чувствую кайфа.

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

Поэтому я уволился с работы, завел блог и начал приводить мысли в порядок и разбираться в себе. Через какое-то время окончательно понял, что хочу стать программистом и заниматься тем, от чего я получаю удовольствие.

Однако сказать легче, чем сделать. Когда я увлекался программированием, то дальше учебных языков я не заходил. Не успел. Поэтому по сути я был полным нулем в современных технологиях. Я лишь понимал логику программирования. Знал базовые общие языковые конструкции. И имел опыт написания программ на учебных языках программирования.

Кроме этого передо мной лежал огромный мир, в котором было столько направлений, что я не знал в какую сторону податься. Стать программистом, который пишет системные драйвера или пишет приложения для смартфонов? А может программировать игры?

Другой вопрос, как обучаться? Пойти на курсы или учиться самому? А может онлайн курсы или вообще найти настоящего программиста, заплатить ему, чтобы он меня научил? Или пойти в ВУЗ?

В общем, как стать программистом, это тема отдельной статьи. А здесь я расскажу, что сделал именно я.

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

Я успешно прошел собеседование и стал менеджером данного проекта. Но это был только первый шаг в моем плане. Я только стал несколько ближе к программированию и считал, что в будущем данная строчка в резюме поможет получить работу программиста. Это как бы не такой резкий прыжок, как от маркетолога в программисты.

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

Меня взяла к себе веб-студия, которая делала сайты. Там мне дали несколько проектов на wordpress. Нужно было готовые темы менять и дорабатывать для клиентов. Скажу сразу, что и в веб-студии я долго не задержался. Работал я там чуть меньше месяца.

Дело в том, что я все это время интенсивно учился. Вечера и выходные у меня не проходили зря. Я штудировал HTML, CSS, Javascript, Jquery, PHP и устройство WordPress. И уже к концу месяца мог сделать готовую несложную тему для WordPress с исходного psd макета.

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

Фриланс

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

Это придало мне уверенность, и я ушел со студии. Фриланс стал настоящей школой. Различные задания, нет того однообразия, что было в студии. Я действительно сильно вырос пока работал во фрилансе. Очень быстро у меня появились 3 постоянных заказчика. Задачи становились все серьезнее. Я стал увереннее. Все это происходило буквально в течении 3-4 месяцев.

Я стал программистом!

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

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

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

Теперь буду стараться исправляться и хоть изредка писать статьи. Они теперь будут больше посвящены разработке. Соответственно постепенно будет меняться тематика блога и наверняка аудитория. Такие вот новости.

Напоследок как всегда интересное видео.

Ну а в ближайших планах написать статью о том, как стать программистом. Думаю, у меня есть несколько советов тем, кто в начале этого пути.

Так что скоро еще увидимся!

  • Программирование ,
  • Разработка веб-сайтов
  • Всем привет! Меня зовут Андрей, я работаю в отделе разработки продуктов Veeam Software.

    В этом году исполняется 6 лет с того дня, как я «пришел» в программирование. К слову, случилось это стихийно, и на момент написания своего первого кода, у меня за плечами не было ни профильного образования, ни малейшего опыта. Сегодня же, я создаю продукт, признанный и уважаемый во всем мире.

    Сегодня я хочу рассказать свою историю.

    Итак, начну с момента, когда мне исполнился 21 год, я уволился из рядов доблестной российской армии и оказался на серых и холодных улицах Санкт-Петербурга. Осень, отсутствие жилья и денег активировали все клетки головного мозга для ответа на вопрос: «Что делать?».

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

    Охранник книжного склада (я же в культурной столице) - это та самая профессия, которая могла обеспечить все эти пункты. Через череду невероятных событий, совпадений и неудач я устраиваюсь на работу в офис одной очень известной в городе розничной сети по продаже книг, где находился и склад хранения.

    Я стал там жить и работать: душ, компьютер секретаря, целый склад книг и три стула для сна. Так пролетели 5-6 месяцев. Я уже хорошо освоил на тот момент Visual Basic for Application и T-SQL и начал писать различные макросы автоматизации работы с Excel для секретаря. Я познакомился с ребятами из IT отдела, они мне выделили изолированную «песочницу» на виртуальной машине, куда я поставил Visual Studio и начал изучать уже более взрослые языки: C++ и C#. Не забывал я и о художественной литературе: за это время я успел существенно расширить свой кругозор в этой области. Благодаря этому, девушки из отдела персонала предложили мне устроиться продавцом-консультантом. Я согласился и стал работать днем продавцом на пл. Восстания, а ночью - охранником офиса. В таком режиме я проработал еще полгода, у меня появилась возможность снять жилье. В то же время, управляющая магазином предложила мне стать старшим продавцом. Я уволился из охранников и стал работать ночью в магазине. Должность ночного старшего продавца предполагает очень много рутинной работы по заполнению всяких файлов, отчетов, составления графиков рабочего времени.

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


    С коллегой на работе в том самом книжном магазине (я слева).

    В магазине были некоторые отделы, где я откровенно не знал ассортимент и не мог найти нужную покупателю книгу. Поисковый терминал честно говорил, что книга есть в магазине, но на каком стеллаже и полке - было неизвестно. Я взялся за решение этой проблемы. В моем распоряжении были несколько древних, уже списанных ТСД (терминал сбора данных) и компьютер, который я стал использовать как сервер. Так я начал писать свое первое клиент-серверное приложение. Уже через месяц я смог продемонстрировать работу программы на одном из отделов магазина, чем вызвал интерес у руководства. Мне предложили продолжить развивать свое приложение уже по-взрослому: составить план проекта с целями, сроками и бюджетом. Так я стал руководителем проекта «Адресное хранение». За все это время я набил миллион шишек и изобрел множество велосипедов, но это был бесценный опыт и я смог запустить свой проект в крупных магазинах сети.

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

    Начал искать новую работу. Был на многих собеседованиях, где-то не нравился я, где-то не нравилось мне, но однажды на HH.ru наткнулся на вакансию в компании Veeam: требованиям я соответствовал. Я начал читать о компании, чем занимается и т.п. И понял, что совершенно не понимаю, о чем идет речь. Фраза «резервное копирование виртуальных машин и мониторинг виртуальных сред» повергла меня в шок. Но я отлично помнил выражение: «Программист - это человек, который решает совершенно непонятным вам способом проблемы, о существовании которых вы даже не подозревали». Значит, пора стать настоящим программистом. Я решил, во что бы то ни стало, работать в Veeam. В последствии выяснилось, что компания Veeam предоставляет решения, без которых просто не мыслима работа крупных компаний, гос. учреждений, банков и т.п.

    Меня пригласили на интервью. От огромного желания получить работу, я заикался и делал глупые ошибки, но в меня поверили и взяли в команду UI. Видимо, меня спасли те самые «горящие глаза», о которых было написано в требованиях к вакансии.

    Первые две недели работы я сидел с широко открытыми глазами: такого огромного и непонятного количества кода я не видел никогда. Своих коллег я воспринимал магами: они говорили и делали непонятные слова и вещи.


    Это я в процессе работы.

    «Сейчас я тебе все объясню», - сказал мне мой Team Lead, его рассказ был очень интересным и совершенно непонятным. Постепенно, день за днем, слова моих коллег стали приобретать смысл, я уже заканчивал свой первый «визард». На первых порах весь свой код я писал, используя широко известную практику «копипаста», Ctrl+C - Ctrl+V – 1я стадия программиста . Затем - «прозрение»: начинаешь использовать везде, где нужно, а чаще, где совершенно ненужно - «Software design patterns» - это очень опасная 2я стадия программиста: наступает, так называемый «паттерн головного мозга». Если остаться на второй стадии, то твой код будет понятен только тебе и только на момент написания, а коллегами ты будешь проклят. Как раз из второй стадии выдернула меня моя команда, вот тут я понял по-настоящему, что значит командная разработка. «Так писать не нужно» - это не аргумент, поэтому через шутки и примеры мне буквально на пальцах объяснили, где правильно, а где нет использовать сложные конструкции и шаблоны. Итак, через «грабли», «велосипеды» и помощь коллег наступает 3-я стадия: «код нужно писать так, чтобы он был понятен более одного дня не только автору, но и людям, которые работают с тобой».

    Но, внезапно, оказывается, что код, который ты пишешь, должен делать ровно то, что от него ожидают пользователи. Наступает время знакомства с отделом «QA», т.е. с тестировщиками. Эти ребята просто «профи»: продукт знают «от и до», по логам могут найти самые неочевидные баги и дать им полное и понятное описание, но и не пропустят смещение на пиксель кнопки. Мы любим QA так, как могут любить разработчики тестировщиков:).

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

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

    В ноябре прошлого года мы выпускали очередную версию программы. Для меня это стало важным моментом, во многом определившим дальнейшую мою судьбу. Все начиналось так:
    - Андрюх, прикрути в трей иконку для Endpoint (наш новый продукт для ноутбуков и настольных ПК).
    - А, ОК, сегодня сделаю.
    Закончилось полноценным Modern UI приложением с анимацией, графиком, автоматическим обновлением, уведомлениями и многим другим, через несколько месяцев.

    Пришлось, конечно, попотеть, но все получилось. Меня отметили, и вот, я уже Senior Developer. И теперь уже ко мне на собеседования приходят разработчики, и теперь я сам ищу среди них те самые «горящие глаза», которые несколько лет назад увидели во мне самом.

    В общем, мораль моей истории в том, что нужно ставить себе цель и уверенно к ней идти. И, что немаловажно, нужно правильно выбирать окружение, которое будет помогать достижению твоей цели (компанию для работы, людей вокруг себя). И, конечно, будут шишки (куда без них), заново изобретенные велосипеды, но будут и прозрения, и развитие, и новые горизонты.

    Наш продукт растет и завоевывает признание все большего количества пользователей (что безмерно тешит мое самолюбие). На фоне этого развивается и компания в целом. Скоро планируется открытие нового офиса Veeam в Праге. Мне предложили переехать, я подумал (да-да, я не сразу стал паковать чемоданы) и согласился. Теперь вместе с другими девелоперами команды (и матерыми программерами, и новичками) планируем переезд, освоение новой локации, познание чешского пива, ну и, самое главное, новых интересных задач!

    Только зарегистрированные пользователи могут участвовать в опросе.



    Отчетность