Как стать программистом?
Усі статті, обговорення, новини для початківців — в одному місці. Підписуйтеся на телеграм-канал!
Для кого-то путь в IT выглядит тернистым и сложным, а кто-то уверен, что достаточно пары прочитанных статей и 10 строк кода, чтобы с легкостью получить работу мечты. Возможно, моя статья развенчает чьи-то надежды, но если кому-то она окажется полезной, то я буду считать свою цель выполненной.
Начнем с того, что способов научиться писать код и устроиться на работу много, но условно можно выделить 3 основных:
— профильное образование в высшем учебном заведении;
— курсы по программированию;
— самостоятельное обучение по книгам и ресурсам в интернете.
Скажу сразу, что никакой из перечисленных выше способов не обладает наибольшей эффективностью. Скорее комбинирование двух или даже трех этих подходов сможет гарантировать успех. А теперь, когда ответ на главный вопрос уже дан, то приступим к рассмотрению каждого из этих способов по отдельности.
Конечно, самый классический способ — поступление в университет, его окончание, прием на работу, ПРОФИТ. Такой вариант имеет как преимущества, так и недостатки. Начнем с последних.
К сожалению или к счастью, такой способ не подходит абсолютному большинству, так как для поступления в высшее учебное заведение на специальность связанную с программированием необходимо сдать ЗНО по математике, хотя так ли она нужна? Это и есть первый барьер, о который ежегодно по статистике спотыкаются 10-20 абитуриентов, банально не набирая проходной балл.
Второе препятствие на пути к трудоустройству, с которым вы можете столкнуться — устаревшая учебная программа. К огромному сожалению, зачастую в подобных заведениях дают знания состоявшие из технологий и языков программирования, которые практически нигде не используются. Если вам повезет и это будет C++, то скорее всего большую часть своего времени вы будете тратить на заучивание теории для сдачи зачетов и экзаменов, а не применять знания на практике.
Десятки прочитанных статей и книг, исписанные конспекты и пятерки в зачетке не дадут практических навыков и умений решать поставленные задачи. Поэтому, с высокой вероятностью, на собеседовании, услышав просьбу о написании функции, которая пробежит по массиву и вернет самое большое и маленькое значения, возникнет неловкая пауза.
Но несмотря на все вышеперечисленные недостатки, главным минусом традиционного образования является его продолжительность. Готовы ли вы провести 4 года, чтобы получить диплом бакалавра? Впрочем, профильное образование имеет не только минусы, но и плюсы.
Как по мне, важнейший из них — диплом. Как ни странно, «корочка» играет очень важную роль при поиске работы за рубежом. Ваш коммерческий опыт часто нивелируется отсутствием диплома по Computer Science или смежной специальности. А в свете последних изменений в получении визы H1B в США, мечта работать в одной из компаний FAANG и переезд в солнечную Калифорнию может резко оборваться.
Вторым плюсом обучения в университете являются фундаментальные знания и умение правильно мыслить. Весомая часть работы программиста — декомпозиция задачи, умение выбрать правильный подход для ее решения, анализ требований заказчика. А ведь иногда понять ход мысли преподавателя — тот еще челлендж.
Также нельзя не отметить социальный аспект проявляющийся во время обучения. С каждым годом soft skills играют все более важную роль при приеме на работу. Как раз общение с одногруппниками, умение грамотно обосновать свою точку зрения, а также взаимодействие с представителями разных возрастных групп — помогут вам развить эти навыки. Да так, что вас возьмут на работу только потому, что вы хороший человек. Но это не точно:)
Для тех, кто задумывается о выборе университета для изучения программирования, я советую обратить внимание на рейтинги составленные DOU за 2020 и 2019 года. А еще хочу сказать, что путь в отрасль начинается не с зачисления в учебное заведение, а с первой строчки кода, которую вы напишете. Чем раньше это произойдет, тем больше шансов, что вам не придется ждать 4 года, чтобы пробоваться устроиться на работу.
Вторым способом старта карьеры в IT являются курсы по программированию. Здесь можно выделить 3 типа: платные, бесплатные и псевдо-бесплатные. Остановимся на каждом из них.
Платные курсы. Пришел, заплатил, походил на занятия, сдал финальный проект, а что дальше? Конечно, в конце обучения вам выдадут сертификат, могут написать рекомендательное письмо, а некоторым даже помогут с трудоустройством. Проблема заключается в том, что многие неправильно трактуют платные курсы: вы платите не за 100% оффер, а за возможность учиться и получать знания (качество которых может сильно отличаться от ваших ожиданий). Если вам нужна конкретика, то в интернете можно найти много сайтов с рейтингами и отзывами о курсах. Я уверен, что каждый сможет найти что-то подходящее.
Бесплатные курсы. Понятие чего-то бесплатного часто вызывает скептицизм у многих, но в случае курсов по программированию: бесплатно !== плохо. Но возникает другой вопрос: в чем выгода компаний? На самом деле такая практика давно стала привычной за границей, а у нас хоть и все больше компаний начинают заниматься такой деятельностью, но по-прежнему для многих это кажется подозрительным.
Преимуществ у таких курсов однозначно больше, чем у платных. Пожалуй, самый главный — это то, что такие курсы бесплатны. То есть вы ничего не теряете в случае, если остаетесь недовольны результатом.
Также, в отличие от платных курсов, где с работодателями вы встретитесь скорее всего только в конце курса, здесь вы сразу будете иметь возможность показать себя, что увеличивает шансы попасть по внутренним собеседованиям на работу мечты.
В Украине достаточно много крупных компаний проводят подобные инициативы на постоянной основе. Они предоставляют как возможности обучения с нуля, так и программы для тех, кто уже имеет некий запас знаний и готов себя попробовать в качестве Trainee. Достаточно сделать всего пару запросов в гугле, чтобы найти наиболее подходящее решения для вас. Если по каким-то причинам курсы в этих компаниях вам не подошли, то всегда можно что-то подобрать с помощью DOU, Telegram.
Псевдо-бесплатные. Наконец-то перейдем к 3 типу и я постараюсь объяснить, что это такое и с чем его едят. Компании работающие по такой схеме действительно на протяжении обучения не потребуют от вас денег, что делает их бесплатными. Но вот после завершения программы курса вы обязуетесь в течении
«Just google it» — фраза, которую мы слышим почти каждый день, правда, в более привычной форме: «Загугли». Действительно ли достаточно просто иметь желание и доступ к интернету, чтобы изучить программирование и устроиться на работу? Да — это слишко коротко, поэтому постараюсь объяснить свой ответ и помочь с выбором ресурсов для начала изучения программирования.
В 2020 году самым популярным языком программирования признан JavaScript . Такую популярность языка легко объяснить: направление Front End разработки (создание клиентской части сайта) безумно популярное и востребованное. Это создает как огромное количество различных обучающих материалов, так и конкуренцию среди желающих начать свой путь в IT. Если вас привлекает данное направление, то я с радостью подскажу ресурсы, которые могут помочь в этом пути.
Начнем с того, что базово сайты состоят из 3 элементов: HTML (верстка), CSS (стили) и JS (взаимодействие с элементами страницы и сервером). Для получения базового представления об этих элементах прекрасно подойдут два ресурса:
— HTMLAcademy — русскоязычный сайт для изучения веб-разработки с ежемесячной подпиской. Он прекрасно подходит для новичков за счет доступных бесплатных глав и обширных разъяснений каждого задания.
— freeCodeCamp — обширный англоязычный ресурс, который содержит в себе все аспекты веб-разработки и абсолютно бесплатный. Здесь вы сможете не только углубить свои знания, но и улучшить свой английский, который очень важен для хорошего программиста.
Огромным плюсом таких площадок является их интерактивность, что добавляет интереса к изучению. А как известно, самое сложное — это начать что-либо делать. Когда вы однозначно решите для себя, что хотите двигаться дальше и готовы учить не только из-за интерактивности площадок, я советую начать читать учебник по JS. Там вы найдете актуальную информацию о JavaScript, в нем вся теория подкреплена практическими примерами, а главы заканчиваются задачами, которые помогут закрепить знания. Для тех, кому особенно понравится решать задачи, хочу посоветовать отличные площадки с тысячами заданий различного уровня сложности: Codewars, LeetCode.
Пройденный материал по HTML и CSS обязательно следует закрепить на создании любого лендинга, примеров которых сотни в интернете, а весь новый освоенный материал по JS пробуйте внедрить в эту страницу. А дальше перед вами открывается дивный новый мир фреймворков, библиотек, препроцессоров и т.д.
Напоследок хочу сказать, что независимо от выбранного вами пути, соотношение теории/практики должно равняться 30/70. Можно, конечно, и 20/80, но ни в коем случае не наоборот. Из личного опыта могу сказать, что только с помощью практики вы научитесь программированию.
138 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів