Советы бывшего инженера FAANG и преподавателя программного обеспечения

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

Добро

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

Инструменты

Насколько я знаю, и поправьте меня в комментариях, если я ошибаюсь, реальных бэкенд-буткемпов не существует. Вы получаете либо веб-разработку (интерфейс), либо полный стек, а полный стек на самом деле означает «веб-разработку с небольшим добавлением серверной части». Практически любой буткемп охватывает HTML/CSS, JavaScript и немного React. Некоторые из них с полным стеком также охватывают такие вещи, как индексированные базы данных (SQL).

Учебный план

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

Еще одно большое преимущество наличия какой-то структуры заключается в том, что вы можете потерпеть неудачу! Хорошо, когда там маячит угроза провала. Это дает вам некоторую мотивацию в те дни, когда вы не хотите выполнять работу.

Карьера Помощь

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

Плохо

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

Если вы хотите стать инженером-программистом, вы не можете просто уметь программировать. Вы должны знать, как быть инженером. Чтобы узнать больше, прочитайте статью, которую я написал о том, почему программировать легко, а программировать сложно. Помимо того, что вы не готовитесь к получению инженерной степени, давайте помнить, что буткемпы — это бизнес. Большинство из них сосредоточено на зарабатывании денег. Их не волнует ваш будущий успех; им все равно, если вы получите работу и будете уволены через 6 месяцев. Я встретил человека, который утверждал, что это случилось с ней после ее первого буткемпа, и она не получила от них никакой помощи, кроме предложения сделать это снова. Они все равно возьмут ваши деньги в любом случае.

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

Уродливый

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

За исключением того, что в отличие от студенческого долга, буткемпы буквально берут процент от вашей зарплаты. Учебные курсы занимают в среднем 15% от вашей зарплаты в среднем в течение 3 лет после окончания учебы. Это как минимум 30 тысяч долларов! Слушай, если это твоя чашка чая, дерзай. Лично я считаю это абсурдом. Бьюсь об заклад, даже Лудакрис счел бы это смешным. Особенно, когда они учат вас самому минимуму.

Теперь я хочу прояснить, что не все буткемпы делают это. Некоторыми буткемпами управляют люди, которые хотят вам помочь. К сожалению, деньги решают все, и люди, которые управляют эксплуататорскими учебными лагерями, могут больше рекламировать и, следовательно, получать больше студентов, больше денег и больше рекламы. Итак, если вы хотите выбрать буткемп, делайте это с умом и ПРОВЕДИТЕ СВОЕ ИССЛЕДОВАНИЕ.

Как заниматься самообразованием

Я не собираюсь лгать, самообучение и общение в сети на пути к работе будет намного сложнее, чем участие в буткемпе. У вас не будет людей, которые будут говорить вам, что и когда делать. Только вы можете сделать это для себя. Если вам повезет, возможно, вы сможете найти наставника или нанять коуча. Эти варианты намного дешевле. Они определенно не будут стоить вам 30 000 долларов в течение следующих нескольких лет. Это если вам повезет найти работу после окончания буткемпа. Также стоит отметить, что не все, кто посещает школу, заканчивают учебу. Одного из парней из буткемпа моего друга выгнали за «обман» или «использование Google». Просто чтобы вы знали, использование Google — это половина работы инженера-программиста.

Хорошо, а как вы на самом деле занимаетесь самообучением? Во-первых, вам понадобится некоторая структура. Существует множество бесплатных курсов и учебных пособий, подобных тем, которые я размещаю на PythonAlgos.com, но в основном они неструктурированы. Я работаю над предоставлением бесплатной структуры и плана обучения, но пока сделано только начало. Как я уже неоднократно говорил, я считаю, что изучение концепций программирования — это только начало. Как только вы изучите основы программирования, самый быстрый способ улучшить свои навыки — выполнять проекты. Когда вы работаете над проектами, вам захочется задать себе такие вопросы, как что делает этот блок кода? и что произойдет, если я изменю x, y или z? Если вы сделаете это, вы приобретете не только навыки, но и образ мышления для разработки программного обеспечения.

Сеть

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

Если вы нашли это полезным, поделитесь им с друзьями в Twitter или LinkedIn! Чтобы получить неограниченный доступ к сокровищнице информации на Medium, подпишитесь на Medium Membership Today! Для получения дополнительных советов по Python, руководств по обработке естественного языка и других постов, связанных с технологиями, не забудьте подписаться на меня, Yujian Tang!

Больше контента на blog.devgenius.io.