Eventual consistency в знаниях или почему читать пикабу джуну программисту вредно

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

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

Итак, с вами тридцатилетний тимлид из Европы, пристегивайтесь, разберем пару мифов из мира айти, упорно тиражируемых среди джунов.

1) Порог входа очень высокий. Миф тиражируется в основном программистами старой школы, теми самыми которые в свое время еще биты и байты гоняли. На самом деле зависит от ветки развития. В тот же веб базово войти все еще весьма просто, но переход от кодомакаки до человека осознающего что он делает он как раз весьма высок. То есть вкатиться в веб компанию и писать костыли на реакте вам будет достаточно просто, юдеми, собственные костыли, штудирование базового фреймворка с тудулистами и простыми SPA c базовой бизнес логикой - легко, на это не надо десятков лет. Главное после этого не начать считать себя крутым разработчиком, который знает все. На этом этапе очень многие срезаются, в итоге прыгая с галеры на галеру и выгорая уже через пять лет. Именно от таких разрабов очень много стона на медиумах и прочих твиттерах о "Классовом выгорании программиста".

2) Порог входа очень низкий. Собственно об этом и написал в предыдущем пункте. Умение писать код еще не делает вас программистом, неплохо было бы при этом понимать что вы делаете. О том что такое "понимать что делаешь" напишу чуть ниже.

3) Всю жизнь надо учить новое. Строго говоря это не миф, и не только про айти. Учиться полезно, весело и задорно. НО! Важно понимать что после даже двух трех лет проведенных в индустрии, особенно если вы перерабатываете, и в целом энтузиаст, желания читать книжку или смотреть что то после работы возникать не будет. ЭТО В ЦЕЛОМ НОРМАЛЬНО! Если у вас в жизни нет ничего кроме кода - вы выгорите, и выгорите очень быстро. Хорошо быть энтузиастом первое время, дабы база легла легко и быстро, а затем уже будет намного проще, и, чтобы быть в тренде, достаточно будет посещать TechRadar параллельно читая доку\исходники технологий, с которыми вы работаете.

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

5) В айти платят очень много. Грабли на которые я сам наступал. В айти платят много, в основном, в стартапах на финансировании и тех компаниях которые имеют свои продукты. Там зарплаты весьма приятные и позволяют вам купить классный белый стакан из старбакса к своему смуси (серьезно, кто то их покупает?). Однако в индустрии ТОННА компаний занимающихся аутстафингом или аутсорсингом проектов. Именно о них отзываются как о галерах, где весьма посредственные зарплаты перемежаются с весьма нехилой нагрузкой. Но из плюсов - именно туда легко попасть джуну, для набора опыта. Однако не рекомендую в них задерживаться, при первой возможности сразу переходите в продуктовую компанию. Если вам повезет вы можете попасть в стартап на финансировании в качестве первой работы, что повлечет деструктивные изменения мозга и желание "поднять венчурных деньжат", но об этом в другом посте.

6) Учиться надо новым JS фреймворкам, а то поезд уйдет, а вы останетесь. Для бэкендеров - учить новые функциональные языки. Для того чтобы понять опасность этого мифа, необходимо обладать неким специфическим опытом по многократному пересаживанию с языка на язык. К счастью, именно таким я и обладаю. Мое мнение по этому вопросу - НЕ СОСРЕДОТАЧИВАЙТЕСЬ НА ФРЕЙМВОРКАХ И ЯЗЫКАХ. Это инструменты, которые позволяют вам решать задачи. Вы никогда не найдете сантехника - мастера разводного ключа, или электрика - мастера ваговских зажимов. Это все для них инструменты и иногда они могут обойтись тем что есть под рукой. В вашем случае это точно так же. Никогда не писали на питоне, а компания его требует? Это не проблема, если вы работали на яве и понимаете как оно работает под капотом. Пара недель тупилова в монитор, пара пив с местным сеньором или мидлом - и вы в деле. Работает универсально. Писали на ангуляре а тут внезапно реакт? Вы разберетесь, не настолько они отличаются чтобы снова откатываться до джуна. Но что может пригодиться - это как раз общее понимание о том, как работают компьютеры и интернет. Я встречал целую кучу девелоперов претендующих на сеньоров, которые не знали что браузер делает с JS после скачивания его с сервера, и плодящих кучу смешных багов как раз из за незнания основ. Основы это важно! Если вы не понимаете как работает ваш код чуть дальше текущего метода - тяжкие баги вас будут преследовать всю жизнь. В итоге разбирая все навороты фреймворков вы остаетесь с очень небольшим базовым набором методов, который почему то все обделяют вниманием. Вы не будете с ним работать каждый день, но знать что это такое и как устроено достаточно важно.

Лига программистов

1.5K постов11.4K подписчиков

Добавить пост

Правила сообщества

- Будьте взаимовежливы, аргументируйте критику

- Приветствуются любые посты по тематике программирования

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