Вопросы и ответы

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

Вопросы курсантов и гостей проекта webmentor.pro

Вопрос: Какой у тебя видео-курс? Есть ли статьи или учебники?

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

У меня не учебный курс по программированию, а практика под моим руководством. И я предлагаю тот же путь, которым иду сам. Я сам читаю по 5 книг в год по нескольким темам: профессиональные по проектированию и разработке, по управлению временем, по управлению командой, по маркетингу, по мотивации. Вот подтверждение — пополнение моей библиотеки за три последних года, в конце 2015 года прибавились ещё две, в первой половине 2016 — ещё четыре. Много читаю в электронном виде — сейчас прохожу разработку приложений на NodeJS и архитектуру WordPress. Ежегодно изучаю несколько новых технологий и сразу применяю на практике.

То есть мой путь — это не демагогия, поскольку среди моих советов нет тех, которым я сам не следую.

Мои как бы конкуренты коллеги готовят и продают инфо-продукты: видео-записи, статьи, учебные пособия. Наверное, в этом плане я проигрываю. С другой стороны, они делают курсы либо обо всё сразу (обзоры), либо об одной конкретной реализации. Например, блог на фреймворке Laravel на языке PHP5. Но почему PHP, а не тот язык, кто интересен тебе? И почему именно Laravel, а не интересующий именно тебя? А почему, собственно, блог, а не то, что хочешь именно ты?

Вопрос: Почему бы вместо webmentor.pro не пойти на курс XXX?

Ответ: Действительно, а почему бы и нет? Если курс хороший, то ты получишь крепкие знания по языку и технологиям. Если курс хороший…

Рекомендую обратить внимание на онлайн-курсы Сode.org и Сoursera. Первый лично меня привлекает своей игрушечностью, он хорош для любопытных и начинающих. Второй отличается ориентацией на самостоятельность. В нём выдаются задания и базовые сведения для решения, а затем участники самостоятельно делают работы и взаимно проверяют их. Поверь, это лучшее из возможных, потому что для проверки чего-то нужно знать это лучше, чем тот, кого ты проверяешь.

Мне не нравятся курсы Сodecademy и другие аналогичные, где есть занятия в виртуальной консоли. В них стерильная чистота, 90% тонкостей веб-разработки остаются за рамками экспериментов с виртуальной консолью. В жизни задачи на порядок сложнее, очень много других проблем решаются попутно с программированием. Поэтому я рассматриваю их только как забавную игрушку, способную увлечь и развлечь, а не как серьёзный инструмент для изучения технологий.

Ответь на вопрос: что ты 100% сможешь делать сам, когда закончишь курс, который тебе нравится?
Если твой ответ «я смогу повторять за ведущим», то это плохой курс.
Если «я смогу делать аналоги существующих решений» — то хороший.
Если «я смогу самостоятельно создавать новые решения» — то это отличный курс — пройди его и внеси в своё портфолио.

Вопрос: Мне порекомендовали прочитать книгу YYY. Я полистал и сомневаюсь в эффективности такого изучения программирования. Читать или не читать?

Ответ: Книги дают широкие знание, которые очень нужны, чтобы ориентироваться в типовых решениях. Мой совет: не отвлекайся, пока не пройдёшь полностью книгу. Бросать на полпути, только попробовав — плохая стратегия. Нужен определённый процент стали в яйцах, чтобы завершить. Приблизительно 150%.

Ты ведь не собираешься всё на полпути бросать? Ходить в одном ботинке? Вдыхать половину воздуха? Ходить в туалет только наполовину?

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

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

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

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

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

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

Вопрос: В чём отличие менторства (наставничестка) от стажировки в компании ZZZ?

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

Возможные минусы стажировки из тех, которые встречались мне:

  • Компании дают слишком простые задачи, которые не повышают навыков. Они просто используя стажёров как дешёвую или бесплатную рабочую силу для выполнения неквалифицированной работы.
  • На стажировку бывает трудно попасть. Берут не всех и не сразу, срок ожидания до полугода.
  • Наставник не объясняет решения конкретных проблем, предпочитая давать лекции сразу для всех на популярные темы или вообще ничему не обучают.
  • Отсеивают 70% процентов стажёров. По разным причинам. Некоторым стажёрам не хватает буквально мелочей, чтобы попасть в 30% оставшихся.

Рекомендую не сидеть в ожидании своей очереди на стажировку. Курсанты по программам наставничества webmentor.pro, прошедшие подготовку перед стажировкой, всегда попадают в 30% тех, кто не отсеивается. Они ещё до начала стажировки уже имеют преимущество перед остальными, потому что обладают некоторыми ценными навыками, например постановки задач и ведения задач в Jira, Redmine или Trello. Это не сложнее, чем научиться пользоваться Microsoft Word или браузером.

Вопрос: Нужен ли мне мой учебный проект (pet project)

Ответ: Да, нужен. Учебный проект требуется, когда нет другого способа продемонстрировать свои навыки. Это актуально для тех, кто ищет первую работу или новую работу по новой специальности. По факту, сам pet project работодателю не нужен. Ему нужно подтверждение того, что ты умеешь делать то, о чём говоришь.

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

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

Есть один анекдот
Брокер просадил миллион, поставив неудачно на акции, которые пошли вниз.
Пришёл к боссу и говорит: «Я — лузер, увольте меня».
А тот говорит: «Твоё обучение на ошибках стоило мне миллион долларов. Я не готов просто так его выбросить на ветер, отпустив тебя. Иди, работай и больше таких ошибок не совершай!»
Но не у всех есть миллионы на обучение.

Success-story #1, личный опыт
Я изучил фреймворк Yii, причём мне захотелось покопаться в его исходниках и разобраться как написаны контролеры, роутинг, работа с кэшем. 4 месяца спустя я пытался устроиться в компанию и мне дали задание сделать сокращатель ссылок без использования фреймворков и с AJAX только на нативном JS (без jQuery). Я сделал его за три дня, по памяти восстановив логику Yii. И меня взяли без сложных технических собеседований.

Success-story #2, опыт курсантов
Чуть позже я решил изучить фреймворк Phalcon для PHP и фреймворк Semantic UI для CSS и я не нашёл ничего лучше, чем переписать сокращатель ссылок. Проектом заинтересовался один из моих курсантов, Дмитрий Чиханов и принял участие, фактически 50/50 его работа. Его знания значительно повысились, а совсем недавно он сам консультировал меня по вопросам создания веб-приложений на AngularJS. На текущий момент он Middle Frontend Developer, специализация AngularJS и попутно другие веб-технологии.

pet project было весомым аргументом и совместная работа это интереснее, чем в одиночку ковыряться

Вопрос: Каким образом будут складываться наши отношения (наставника и стажёра)?

Ответ шуточный: У меня есть специальный провод, ты засовываешь в левое ухо, а я в правое. 15 минут и ты знаешь всё, что знаю я.
А ещё у меня есть синяя изолента — ты обмотаешь себе пальцы и они смогут печать код быстро и без ошибок, как я.
Ещё есть специальные грабли из поролона. Они совсем не больно бьют по голове.
Это шутка.

Ответ настоящий: При разработке веб-проектов они изначально кажутся простыми, затем приходит понимание что они сложные и их сложность пугает. Важно научиться разбивать задачу на такие части, чтобы решение отдельных частей не приводило к ступору, затем находить простые решения мелких задач, и постепенно, шаг за шагом, cделать большую. Некоторые называют это «съесть слона».

Об этом нельзя рассказать. Этому нельзя научить. Это нельзя показать.
Можно посмотреть, как мастер уворачивается от грабель на чужом примере, но чаще всего шишки набивать тебе придётся самостоятельно. Это просто надо начать делать. Чтобы научиться что-то делать правильно, надо несколько раз сделать неправильно и выяснить свои ошибки.

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

Чтобы тебе было проще, рассматривай меня как репетитора.

Вопрос:  Что мы будем делать? Программировать?? Это я и сам умею!

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

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

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

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

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

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

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

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

Под целями я имею в виду перспективу на 5 лет вперёд и дальше. Большинство стесняется загадывать на будущее или боится сделать неправильный выбор. Поговорим об этом отдельно.

Вопрос: Сколько длится программа наставничества?

Ответ: Моя задача — научить тебя учиться и самостоятельно принимать решения. Минимальный срок — 1 месяц, за который стажёр собрался с силами и оформил все свои работы в портфолио, а затем устроился на работу. Максимальный срок обучения на моей практике — 1.5 года, из них 9 месяцев мы работали в партнёрском режиме над общей практической задачей

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

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

Настольные/мобильные платформы, Windows/MacOS/Ubunu, iPhone/Android, Frontend/Backend, PHP/Python/Ruby, Angular/Backbone/jQuery, Yii/Laravel/Phalcon, Django/Tornado, LESS/SCSS, grunt/gulp и так далее, технологии появляются и устаревают.

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

Вопрос: Это бесплатно?

Ответ: Нет, это платные услуги. Рассматривай мою работу как работу репетитора.

Оплата возможна разовая или пакетами, за неделю или месяц.
Оплата принимается 100% вперёд, за будущий период.
Возможен пробный период.
Есть бесплатные варианты.

Вопрос: Реквизиты для оплаты

Ответ: Реквизиты для оплаты

Вопрос: В чём разница программ?

Ответ: Опыт показал, что обычно курсантам нужны два часа консультаций в неделю, причём одна около часа сразу и потом несколько от 5 до 15 минут; курсанты регулярно присылают свои куски кода и за неделю накапливается до четырёх часов на разбор их задач и обсуждение ошибок. Я предлагаю пакет Лайнер за 3 999 рублей в неделю, который состоит именно из 2х часов консультаций в режиме онлайн-конференции и 2х часов консультаций и проверок кода в неделю. Попутно проводятся полезные мероприятия на тему построения карьеры, повышения навыков проектирования, организации времени, достижению целей и другие, которые понадобятся именно при профессиональной разработке веб-проектов и работе в удалённой команду. При этом ответы выдаются максимально быстро, в тот же день или даже час.

Остальные программы — это модификации с разными скидками:

  • программа Аэроплан — программа на месяц, поэтому скидка 20% «за опт» или 12 799 рублей в месяц
  • программа Дельтаплан — программа на неделю, но ответы выдаются не сразу, а через сутки и скидка 50%, что составляет 1 999 рублей в неделю
  • программа Параплан — программа на неделю, ответы очень подробные, если получится — то даже видео-ответы, но все ответы публикуются только через сервисы toster.ru, hashcode.ru и другие подобного типа. Выбрав этот вариант, ты неявно поможешь мне распространить информацию о моих программах и за это я делаю скидку 80%, что составляет 799 рублей в неделю
  • программа Дайвер — это программа интенсивного изучения книги или онлайн-курса, а формально 19 199 руб за 24 часа онлайн-консультаций и проверки кода в режиме реального времени
  • программа Подлодка — это программа интенсивного выполнения учебного, тестового или реального задания, а формально 8 999 руб за 10 часов онлайн-консультаций и проверки кода в режиме реального времени

Услуги по отдельности:

Я также провожу консультации и проверку кода бесплатно:

Вопрос: Есть ли пробный период у программ?

Ответ: Для программ онлайн-консультаций по веб-разработке и ревью кода и анализу решений есть бесплатные варианты. Для программ поддержки по изучению веб-технологий с наставником — есть вариант до двух недель бесплатно. Для программы поддержки «Аэроплан» с помесячной оплатой возможен возврат части суммы или конвертирование в другие услуги. Для интенсива нет пробных периодов и, чтобы не ошибиться, я проведу тестирование — готов ли ты к интенсиву (техническое собеседование). Если во время интенсива что-то не устроит, возможен возврат части суммы или перевод в другие услуги.

Вопрос: Сколько всего стажёров? Не забудут ли про меня?

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

Для всех стажёров у меня составлено расписание и напоминания по почте и SMS через Google Calendar и Todoist. Все запланированные встречи всегда вовремя. За неделю я как минимум 3 раза выясняю текущий прогресс у каждого стажёра.

Вопрос: Зачем ты вообще этим занимаешься?

Ответ: У меня большой опыт наставничества в разных компаниях, с 1998 года, а теперь я работаю удалённо в компания VisualPharm над замечательным проектом icons8.com и в нашем дружном коллективе уже давно никого ничему учить не надо. У нас все всё изучают самостоятельно и намного глубже, чем любой наставник может дать. Я бы всех своих коллег назвал гуру в своих специальностях.

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

Наставничество помогает мне самому становиться лучше. Статья в моём блоге об этом: Почему я занимаюсь наставничеством?