Как быть начинающим разработчиком и не сойти с ума

Доброго времени суток!

Меня зовут Влад, и я начинающий верстальщик в CSSSR. Сегодня я поделюсь тем, каково быть начинающим разработчиком и как поддерживать себя на достаточном уровне мотивации. Именно такую статью мне хотелось бы прочесть ещё год назад. Поехали!

Не сравнивай

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

Не отвлекайся

Как это обычно бывает: о, почитаю про grid’ы, потом зайду на ютуб, там вышел новый курс по Gulp от Кантора, а потом в твиттере опубликовали ссылку на новую JS-библиотеку. Основы PHP, сделай свой интернет-магазин на Ruby on Rails, новый курс по React…

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

Решением является составление детального плана обучения. Это не значит, что не надо читать новости, просто стоит сократить количество и внимание, уделяемое им. Рекомендую посмотреть это. Особенно полезно про концентрацию.

Вернёмся к плану. Для фронтенд-разработчиков последовательность очевидна — качественная адаптивная вёрстка, вся теория по ES 2015, можно немного jQuery и уже только потом популярные фреймворки. Не стоит гнаться за модой и спешить изучать тот же React. Почему? На этот вопрос уже неплохо ответили тут.

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

Прими тот факт, что ты будешь много косячить

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

Лучшее, что можно сделать, если понимаешь, что у тебя проблема:

  1. Не молчи. Честно признай свою ошибку и постарайся максимально чётко сказать, что делал и как её получил. Все когда-то начинали и все допускали ошибки, исключений не бывает.
  2. Обязательно выясни пошаговое решение проблемы. Повтори проблему и её решение на каком-нибудь тестовом проекте. Не стыдно ошибаться, стыдно не получать из этого уроков.
  3. Напиши об этой проблеме куда-нибудь, например, в свой блог. И себе напомнишь, и другим поможешь.

Не паникуй

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

Учись у других

Ты написал блок кода или сверстал страницу, которую считаешь идеальной и почти божественной. Ты хочешь распечатать её и повесить рядом со своим столом, чтобы каждый день радовала глаз. А затем приходит старший разработчик и рефакторит вёрстку так, что хочется кого-нибудь убить. Не стоит. Поблагодари за то, что он нашёл время на ревью. Внимательно изучи его комментарии. Всё ли понятно? Если нет, попроси пояснить, почему было принято такое решение и чем оно лучше. Не стесняйся выражать свою позицию: так он лучше поймёт твоё мышление и сможет показать в чём ошибка. А в очень редких случаях, когда ты докажешь свою правоту, то сможешь почувствовать себя в раю. :)

Заведи ежедневные задачи

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

Работай над личным проектом

Обязательно должно быть что-то, что не связано с рабочими задачами: свой блог или какой-нибудь плагин, open source или инди-игра. Строго ограничь время, которое будешь уделять этому, и иди смело в бой. Именно за счёт точного соблюдения ограничений можно успевать работать, учиться новому и делать что-то для души.

Ешь слона маленькими порциями

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

Время == деньги

Вот и не трать его зря. Застрял с какой-нибудь проблемой? Не надо сидеть над ней вечерами. Ты ещё не достиг того уровня, чтобы о твоих проблемах не знал даже гугл. Выдели временной лимит. Я выбрал 2 часа. Если за этот срок не удалось разобраться путём гугления или игрой в гляделки с кодом, то смело иди к коллеге за советом. Не понял его объяснений? Спроси ещё раз у него или у другого товарища. И 3, и 5 раз не стыдно спросить. Пока не будет полного понимания, повторяй эти шаги.

Высыпайся

Уж сколько раз твердили миру — высыпайся! Не надо по утрам походкой зомби добираться до кофе, чтобы потом кое-как к обеду придти в себя. За 2 часа до сна старайся уйти от любых экранов. Гуляй, читай, делай что угодно, только не трать время за компьютером. К вечеру концентрация теряется, и ты приходишь в себя через несколько часов, читая новости VK или залипая в приколы на ютуб. Если есть возможность, меняй деятельность. Лучшие решения трудных задач приходили ко мне на спортплощадке или во время мытья посуды.

Разберись, как это работает

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

Выучи английский

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

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

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.