Путь самоучки: что действительно важно для карьеры в ИТ
Наблюдаю любопытную позицию: если разработчик пошел на дополнительные курсы, значит, он не в состоянии в чем-то разобраться самостоятельно. Есть ли в этой мысли здравое зерно и что с этим делать?
Меня зовут Петр Щербаков, я фронтенд-разработчик в компании IT_One. Мне всегда нравилось кодить — еще в школе я решал задачи по информатике за весь класс. Интерес — движущая сила в карьере любого ИТ-специалиста. Если тебе нравится то, что делаешь, — это видно и очень ценится работодателями. Я устроился в первую компанию без профильного диплома и глубокого знания JavaScript, на котором должен был работать.
Так получилось, что я учился в Бауманке на инженера, и дополнительного образования к основному техническому у меня нет. Всему, что умею в ИТ я учился сам. Конечно, базовое высшее образование сегодня по-прежнему ценно, но вот учеба ради учебы на многочисленных курсах в большинстве случаев – нет. И сейчас я вижу, что мой выбор – самостоятельное обучение – поддерживают многие опытные специалисты. Уже не раз я встречал такое мнение: если человек пошел на очередные курсы, значит, он не в состоянии сам что-то изучить. Получается, и в дальнейшем ему все нужно будет разжевывать и постоянно объяснять.
В среде программистов ценится самостоятельность: человеку простят пробелы в знаниях, если он может своим умом и старанием их преодолеть. Сейчас, когда сфера ИТ развивается стремительно, умение найти ответы на свои вопросы бывает актуальнее, чем диплом программиста.
Действительно, намного полезнее самостоятельно решать задачи, находя нужные сведения в Интернете, чем слушать, как это делают другие. Сейчас много технической информации есть в открытом доступе, найти нужные сведения — не проблема. Но нужно знать английский язык, ведь зарубежных ресурсов несоразмерно больше. Знание технического английского для тех, кто хочет стать программистом высокого уровня — это must have.
Да, сейчас много переводят на русский — но по своему опыту могу сказать, что не всегда такие переводы корректны. Например, один и тот же термин разные переводчики могут обозначить по-разному. А если ты читаешь статью в оригинале, ты точно понимаешь, о чем идет речь. Если я вижу переводную статью на Хабре, которая мне интересна, сразу перехожу к оригиналу.
Нет какого-то списка ресурсов, где можно черпать знания: все зависит от задачи. Поэтому стартовая точка — формирование запроса по-английски в поиске Google. Информация может найтись среди технической документации Mozilla или в небольшом блоге какого-то разработчика.
Например, зная основы JavaScript, можно самостоятельно освоить TypeScript — это язык программирования со статической типизацией, который расширяет возможности JavaScript. У TypeScript замечательный сайт — настоящий учебник, где все подробно объясняется. Там не ограничиваются формальным перечислением функций, а размещают интересные и хорошо написанные статьи. Приходишь за одной информацией — дополнительно замечаешь что-то другое, переключаешься и всегда находишь что-то полезное для себя.
Хороший ресурс для для JS разработчиков — сайт Javascript и React (для тех, кто им пользуется). Там можно найти ответы на многие вопросы.
Сейчас я заинтересовался новой технологией WebGPU — она еще в разработке и должна появиться в браузерах в ближайшие пару лет. Это большой и долгожданный прорыв в возможностях отрисовки 3d внутри браузера, разработчикам больше не придется читать документацию по древнему OpenGL (на котором основан WebGL). Информации по этой технологии еще нет, но разработчики открыто обсуждают процесс ее создания. Я читаю их переписку и технические черновики.
Если человеку интересно то, чем он занимается — он найдет информацию, выучит английский язык, будет в курсе самых последних изменений в своей области. Наверное, это сложнее, чем купить какой-то курс, где тебе дадут информацию и алгоритм действий. Но там вряд ли научат решать нестандартные задачи, самостоятельно мыслить и быстро справляться с трудностями.
"Хороший ресурс для Java-разработчиков — сайт Javascript и React"
wtf..............................
Так и не понял, что именно автор имел в виду под "сайтом Javascript". MDN? Спецификацию ECMAscript?
Ну да, ну да
актуальненько:)))
Можно бесконечно учиться на курсах, но даст ли это результат?
И все обучение достаточно дорогое сейчас:(
абсолютно все курсы есть на торрентах, подозреваю, если человек не может справится с ЭТОЙ простой задачей, то лучше заняться чем-то другим
В точку
Комментарий недоступен
Сейчас такое разнообразие курсов от множества онлайн-школ, что выбрать их весьма непросто)) Можете какие-то рекомендовать по собственному опыту или опыту коллег?
Комментарий недоступен
я, если честно, только и разрекламированные знаю курсы. А можете посоветовать какие-то?
Полностью согласен и даже дополню:
Можно даже простейшие примеры привести из истории: Ньютон и Эйнштейн десятилетия создавали свои теории, потом десятилетия другие разбирались в них и пытались понять, а сейчас для их изучения достаточно одного года максимум. Тут хочу сразу оговориться, что современная ОТО очень сильно отличается от того, что изначально было у Эйнштейна. В связи с этим очень наглядно, что обычному челрвеку на изучение с хорошим учителем требуется в десятки раз меньше времени, чем на самостоятельное познание гению того же материала.
Ну и самое главное. В IT ведь не важно, надо тебе разжёвывать или нет. Важен результат. И я сильно сомневаюсь что Blizzard или Valve принимают в основном только после окончания курсов, потому что им нужны не разбирающиеся плохие специалисты...
Обучение - это одна из функций мозга. Вашего мозга. Это не курсы вас учат, это вы учитесь на курсах. И результат на 90% зависит от вашей мотивации и вложенных сил. Хороший преподаватель помогает преодолеть трудности, чтобы вы не буксовали долго на одном месте.
При этом сами курсы - это только одна из форм обучения. Если вы смотрите на на них как на панацею, то у меня для вас плохие новости. И дело не в качестве курсов, дело в вашем подходе к обучению.
Хороший подход, когда вы берете что-то за основу, а затем дополняете разными формами и источниками. За основу лучше брать большой труд: книгу, курс (онлайн, офлайн, или даже ВУЗовское обучение). Чтобы была структура.
А дополнять можно самыми разными формами и источниками: другими курсами, книгами, роликами на YouTube, наставничеством, самостоятельной и групповой практикой, чтением документации, исходников, форумов, научных трудов, решением задач и проектной деятельностью.
Только сочетая всё вместе в разных пропорциях можно к чему-то прийти. На разных этапах развития формы и источники могут быть разными.
Для меня идеальный способ обучения по качеству и скорости - это микс 1:2 преподавателя индив и самообучения. Ну и руками сразу пробовать, голая теория сразу испаряется из мозга.
а руками пробовать - это просто что-то для себя? Или в каких-то программах для джуниоров участвуете?
Для себя, на курсах обычно мельком встречается куча примеров/задач, что можно сделать, если хотите проработать тему.
Хакатонов разных для джунов существует много, и их использовать классная идея )
мне просто вкоммичиваться под жесткий деадлайн не хочется, нравится учиться в своем ритме без доп нервяка
Спасибо! Очень ценные советы
Интересно, а если образование гуманитарное, то получится самостоятельно обучиться? На тестировщика, например?
Да, жена отучилась 4 месяца на тестировщика на практикуме и нашла работу буквально за неделю. Но это было в 2020г и ЗП около 37к (в Екб).
После усердной работы в течение года, т.е. буквально продолжать поглощать новые знания и применять их, можно попробовать устроится в московскую компанию с более высоким уровнем ЗП (требования вероятно тоже будут выше).
Еще советую не искать первую работу с удаленным режимом работы, так как очно гораздо проще и приятнее взаимодействовать с командой, а это может ускорить ваше развитие.
Денис, а жена училась именно на курсах? Знаю еще что некоторые индивидуально занимаются со специалистами - тоже за 3-4 месяца осваивают базовые навыки. Не могу решить для себя, что лучше.
Да, в Яндекс.Практикуме. Из плюсов там ставят практические задачи примерно как на реальной работе, например, есть 2х недельные спринты, есть ревьювер, рассказывают как работать с теми инструментами, которые вероятно вам понадобятся в реале. Из минусов: в 2020 были баги на самой площадке, которые бесили, и совсем маленький уклон в мобильное тестирование (сейчас мб больше - хз).
Что выбрать: курсы или ментора? Зависит от курсов и ментора))Аналогия: пойти на курсы ин.яз или найти репетитора.
Если ментор работает с современным стеком технологий, решает разные задачи, имеет большой опыт и хорошо доносит инфу, то лучше конечно заниматься с ним. Но я хз где таких искать ¯\_(ツ)_/¯
Спасибо большое!!!
Мне кажется, вряд ли :(( Потому что просто не знаешь с чего начать и как подступиться
На тестировщика - легко, особенно если речь про ручное тестирование.
Только надо оно вам? В ручном тесте долго сидеть не интересно, мало роста, низкая зарплата - и ты полностью заменим.
Курсы помогают структурировать информацию. Человек, далёкий от ИТ часто не знает, с чего начать, что сейчас актуально, а что нет. Мне на курсах очень помогала обратная связь от наставника. Повезло, что попадались хорошие преподы. Один даже постоянно писал "Ты справишься, не опускай руки. Ничего, все ошибаются, попробуй ещё раз" и пр. Это помогает не скиснуть и не бросить все это к чёртовой матери.
Это в 20 лет хорошо рассуждать о том что "просто выучите React и Javascript".
А когда у тебя работа (ибо кушать хоцца), ребёнок, и ночами ты учишься программировать, то вот это "просто выучи" нифига не работает.
Если тебя ведут за руку, и есть программа обучения, best practice, код-стайл и прочее, то учиться намного проще и эффективнее.
Любой платный курс можно скачать с торрента, но наставника и обратную связь по твоему коду ничем не заменить.
Фронтенд, это не программист. Тебя обманули. Его даже обезъяна смогет.
когда заплатил 70-100 к - это мотивация учиться для тех у кого её нет:))
сейчас такое разнообразие курсов - как выбрать? И где искать эту практику.
Насколько сложнее самоучке устроиться на первую работу на стартовую позицию по сравнению с дипломированным специалистом?
Практика - лучшее обучение, а совершенствоваться всегда полезно, хоть на курсах, хоть самому
Интересное мнение, спасибо)
Самостоятельный поиск знаний — то, что всегда в цене!
Как по мне, курсы не то что бы противопоказаны.
Для человека, вообще не сведущего в профессии, курсы могут стать прекрасным местом для понимания как ему строить трек дальнейшего обучения, поиском среды поддержки среди таких же как и он, окультуриванием в необходимую профессию (получением понимания как принято вести себя в этой сфере)....
Но прикол в том что в современных говнообразовательных конвейерах эти возможности чаще всего не даются... зато промывают мозги и насыщают уверенностью чтобы у выпускника еще несколько месяцев не закрадывались мысли что ему продали то что он мог выучить бесплатно... если бы смог, так как для этого тоже нужны навыки...
Если курсы такая бесполезная фигня, то такие компании как Microsoft, Blizzard и Valve не принимали бы в первую очередь на работу людей, которые закончили курсы или ВУЗ по профильному направлению. Ля, да они даже сами их спонсируют для большей доступности! Интересно, зачем, если самые лучшие учатся сами? Им же тогда дешевле вот таких самоучек нанимать, а потом постепенно повышать, как делают мелкие и средние компании. Почему никогда к работе с адронным коллайдером не допустят самоучку, сколько бы тестов он не сдал? Почему гении современники Эйнштейна больше 10 лет сами понимали его теорию, которую сейчас проходят в любой школе за пару месяцев?
А ведь ответ прост. Потому что самому всегда дольше. А главное легко упустить что-то. И потому от средних и мелких компаний/отделов так много багов выходит. Вы не знаете большую часть базы, потому так много багов и потому так часто проседает память. Когда в последний раз у Близардов память проседала? В Третьем Варкрафте? А у ваших приложений уже устранена проблема с пооседанием памяти? А когда в последний раз у Valve были крупные баги? Вроде вторая Халва? А у вас как с багами обстоят дела?