Наконец-то я могу называть себя разработчиком программного обеспечения! Примерно через три недели после публикации этой статьи я окончил Fullstack Academy, один из лучших учебных курсов по программированию в США. Все началось примерно в это же время в прошлом году. Я работал археологом в течение 2 лет после окончания колледжа, и, хотя я прекрасно провел время, я решил, что хочу изменить свою карьеру.

Ситуация была довольно забавной. В старших классах я изначально планировал стать программистом. Я писал программы на C++ и Java, а также писал сценарии для игры, в которую играл, под названием Second Life. Я очень увлекался видеоиграми и помню, как увлекся Linux в старшей школе. Мне действительно казалось, что CS — это путь, по которому я собирался пойти. В колледже я решил пойти по более академическому пути и изучить другие мои интересы: археологию, историю и антропологию.

Вернувшись домой с моей последней работы археологом в Колорадо, я начал искать, чем бы я мог заняться. Помню, мама рассказывала мне, как сын одной из ее коллег решил стать программистом. Он пошел в учебный лагерь для программистов, усердно учился и в конце концов нашел работу в Техасе. Я был в шоке, что можно было так радикально изменить карьеру! Я искал в Интернете списки лучших учебных курсов по кодированию, и одно название постоянно всплывало, Академия Fullstack. Согласно отзывам, которые я читал, Fullstack Academy была самым популярным учебным лагерем по программированию в стране. У него были восторженные отзывы почти из всех источников, которые я мог найти, он был очень избирательным (принимал только около 10% претендентов) и имел отличную учебную программу, обучающую востребованным в настоящее время навыкам, основам информатики, и учебная программа была основана на веб-приложении JavaScript. полный стек разработки, особенно востребованный набор навыков прямо сейчас.

Решив, что я хочу поступить в Академию Fullstack после того, как составил смехотворно подробную таблицу Excel с плюсами и минусами других учебных курсов, которые я рассматривал, я приступил к изучению JavaScript для вступительных тестов. У Fullstack Academy есть бесплатный автономный начальный курс JavaScript, доступный на их веб-сайте под названием JavaScript JumpStart, на который я полагался, чтобы набрать скорость. И могу честно сказать, что это было хорошее вложение времени. Это был самостоятельный курс, в котором рассматривались очень базовые концепции программирования, такие как переменные и циклы, а также другие вещи, и я очень рекомендую его, если вы только начинаете (или, в моем случае, вы серьезно не программировали со времен старшей школы). ).

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

Одна вещь, которую я заметил в Академии Fullstack, заключалась в том, насколько тщательной была их учебная программа. После завершения JavaScript JumpStart, чтобы подготовить меня только к поступлению в программу, мне также пришлось пройти два предпрограммных курса. Первый назывался Builders и предназначен для того, чтобы помочь завершить вводные знания JavaScript, представить введение в инструменты, которые используют программисты, а также показать, как превратить ваш компьютер в среду разработки. Кроме того, это была программа для самостоятельного изучения, в которой в конце каждого модуля были оценки, что действительно помогло укрепить мои знания. После того, как я сдал Builders, мне пришлось пройти еще один предпрограммный курс под названием «Основы», который является основной вводной программой, которую все студенты должны пройти в первую очередь, и которая объясняет основы программирования, а также дает некоторое углубленное представление о том, как работает JavaScript. Основы рассматривали концепции программирования более подробно, чем Builders, и включали информацию о том, как функционирует сам JavaScript, например о контекстах выполнения, и о том, как среды выполнения обрабатывают программы и присваивают значения перед выполнением, наследование прототипов и другие вещи.

Пройдя, наконец, все предпрограммные курсы, я наконец-то смог поступить в Академию Fullstack! Сначала я посещал кампус в Нью-Йорке и был очень впечатлен. Прибыв в свой первый день в нижнем Манхэттене, я встретил некоторых людей, которые впоследствии стали моими учителями и друзьями. Некоторых из них я встречу снова, когда перейду в удаленную когорту.

Fullstack распределяет студентов по группам, и в каждой группе есть два основных учителя, а также преподаватели, которые ранее учились в Академии Fullstack, которые остаются в другой группе, чтобы помочь студентам и получить больше опыта для себя. У каждой когорты есть две (или три, в зависимости от того, как их считать) «фазы», ​​которые они проходят в Академии Fullstack. Первый этап называется младшим этапом. На младшем этапе студенты получают лекции по JavaScript и информатике. Каждый день студенты работают вместе в группах на семинарах, которые используются для закрепления концепций, усвоенных во время лекций, а также знакомят студентов с работой в команде и показывают, как использовать технологии и инструменты, используемые разработчиками программного обеспечения, такие как git, github, express, sequenceize. , реагировать, редукс, жасмин, мокко, чай и другие. В конце модуля учащиеся проходят контрольные точки, которые представляют собой тесты, используемые для измерения того, насколько хорошо учащийся усвоил материал.

Младший этап был очень строгим, и учебная программа менялась быстро. Я помню, как изо всех сил старался не отставать, но мои ежедневные усилия по учебе, потрясающая помощь и доступность моих учителей, использование системы контента Learndot Академии Fullstack позволили мне легко проходить материал из класса. Примерно в конце каждой недели у нас были контрольные точки, которые представляли собой тесты, созданные для измерения того, насколько хорошо мы усвоили учебный план недели, и они были сложными, но справедливыми. Самым сложным этапом юниорского этапа стал финальный чекпойнт, который проверил все наши знания. Было сложно, но я прошел и смог перейти на взрослую фазу.

Следующим этапом был старший этап. Старшая фаза была организована иначе, чем младшая фаза. На младшем этапе студенты постоянно передвигаются группами по два-три человека каждый день и работают в небольших мастерских. Старший этап основан на трех основных проектах, в которых учащиеся работают вместе в более крупных и настойчивых командах и применяют знания, полученные на младшем этапе. Тремя основными проектами были Grace Shopper, сайт электронной коммерции, который студенты должны были создать в команде, проект хакатона, который проводится в одиночку в течение нескольких дней, когда студент пытается максимально сделать самый интересный проект, на который он способен, а затем представить его классу для получения приза в зависимости от того, насколько популярным или интересным был проект. Окончательный проект был назван завершающим проектом. Это должно было стать «выдающимся произведением» навыков, которым мы научились в Академии Fullstack. Мы должны были создать функциональный продукт, который в конечном итоге будет представлен другим когортам, потенциальным работодателям, друзьям и семье.

Наконец, после окончания основного курса, группы получают несколько лекций от команды по развитию карьеры, которые дают студентам информацию о поиске работы, а также знакомят с тем, как получить поддержку от команды по успеху в карьере. Каждой когорте назначается член команды по успешной карьере, который работает с ними, а прогресс данного учащегося отслеживается с помощью Asana, где член вашей команды по успешной карьере может помочь подробно отслеживать, где вы находитесь в своем поиске.

В будущем я хотел бы иметь возможность расширить свои знания C и C++. Я обнаружил, что мне действительно нравятся языки программирования более низкого уровня, а также разработка программного обеспечения для настольных компьютеров. Я также обнаружил, что хочу узнать больше о работе «ближе к металлу» с использованием языков программирования более низкого уровня, потому что я считаю, что это помогает удалить множество абстракций, которые могут скрывать, как программное обеспечение взаимодействует с оборудованием, на котором оно работает.

Последнее, что я хочу сказать, это то, что если вы хотите сменить карьеру и действительно увлекаетесь программированием и компьютерами, вам действительно следует попробовать подать заявку в Академию Fullstack. Это может изменить вашу жизнь, вы приобретете много новых навыков и, возможно, заведете много друзей.