какую специальность выбрать чтобы стать программистом
Как абитуриенту выбрать
IT-специальность в вузе?
Информационные технологии пронизывают все сферы современной жизни: от бизнес-процессов и банковского дела до образования, медицины, юриспруденции. С развитием технологий появляются задачи, которые способен решить только специалист с высшим образованием в сфере IT.
В последнее десятилетие мы наблюдаем рост популярности IT-специальностей, повышение уровня подготовки абитуриентов и закономерное увеличение среднего балла ЕГЭ среди поступивших на бюджетные места. По данным НИУ ВШЭ с 2014 года средний балл ЕГЭ на программы факультета компьютерных наук вырос на шесть баллов и приблизился к 100-балльной отметке.
Баллы высоки, но и программ обучения довольно много. В настоящее время вузы предлагают абитуриентам семь направлений в области информационных технологий:
Давайте разберемся, какую из этих специальностей стоит выбрать для базового IT-образования.
IT-специальности
Прикладная математика и информатика — основная специальность для программистов в вузах. Сайт «Учеба.ру» предлагает 138 вариантов обучения по данному профилю в российских вузах.
Эти дисциплины читаются в основном на первом-втором курсах бакалавриата, с третьего курса начинается специализация и преобладающими становятся профильные предметы и дисциплины по выбору.
Программная инженерия — вторая по популярности программа. Студентов готовят к работе с программными продуктами и управлению разработкой ПО. Благодаря изучению многих языков программирования выпускники умеют читать код, разбираться в его работе и составлять техническую документацию к программам.
В учебных планах большинства вузов предметы математического цикла занимают меньший объём по сравнению с «Прикладной математикой и информатикой». При этом изучается больше языков и методов программирования. Среди предметов по выбору есть дисциплины, связанные с web-программированием, искусственным интеллектом, компьютерной графикой (НИУ ВШЭ, МГТУ им.Баумана, МАИ), а также с управлением командами и проектным менеджментом по методологии Agile (НИУ ВШЭ).
Все программы отличаются от вуза к вузу, для примера рассмотрим несколько.
НИУ ВШЭ
На факультете компьютерных наук Высшей школы экономики представлено три программы подготовки бакалавров: «Прикладная математика и информатика», «Прикладной анализ данных» (на английском языке) и «Программная инженерия». Дисциплины первого года обучения практически идентичны на всех направлениях. Начиная со второго курса возникают специальные дисциплины, а с третьего курса начинается профилизация.
На программе «Прикладная математика и информатика» возможна профилизация в одной из следующих отраслей IT:
Особенностью образовательных программ Московского физико-технического института является присутствие в учебных планах базового курса физики (от 15 до 34 зачетных единиц). С одной стороны, это создает сложности в виде дополнительных дисциплин, которые напрямую не относятся к программированию. Но с другой — наличие физики в учебной программе позволяет студентам получить подготовку в области моделирования естественных процессов.
В Физтехе отличается также система государственной итоговой аттестации: выпускники сдают два государственных экзамена и защищают ВКР.
ВМК МГУ
Факультет вычислительной математики и кибернетики Московского государственного университета ведет подготовку бакалавров по двум направлениям: «Прикладная математика и информатика» и «Фундаментальная информатика и информационные технологии».
Программа по прикладной информатике основана на собственном образовательном стандарте МГУ. Она отличается от большинства программ углубленным курсом математического анализа (27 зачетных единиц), алгебры и геометрии (12 зачетных единиц), а также дополнительным базовый курсовым по современному естествознанию в объёме 10 зачетных единиц.
Также у ВМК МГУ совместно с Mail.ru Group действует партнерская программа «Техносфера». Это бесплатная практико-ориентированная программа дополнительной подготовки студентов старших курсов бакалавриата, магистратуры и аспирантуры. Занятия проходят несколько раз в неделю прямо в университете. После успешного завершения программы студенты получают возможность начать карьеру в Mail.ru Group.
По мнению многих программистов, получивших высшее техническое образование, самыми важными были первые два курса вуза. По качеству преподавания базовых дисциплин можно порекомендовать также следующий вузы: МАИ, МИФИ, МГТУ им. Баумана, МИСИС.
Выводы
Высшее образование — фундамент успешной карьеры в сфере IT. Оно дает хорошую математическую подготовку, теоретические знания в области информатики и теории информации, что позволяет с большей уверенностью делать выводы, оценивать сложность алгоритмов и понимать, почему один алгоритм работает быстрее другого.
Базовая и самая популярная образовательная программа: «Прикладная математика и информатика». Подготовку по этой специальности можно пройти во многих вузах, но больше всего среди работодателей ценятся НИУ ВШЭ, МФТИ, МГУ, МГТУ им. Баумана и МАИ.
Самое главное, о чем стоит помнить, — программист создает себя сам. Очень важно участвовать в проектах, получать практический опыт начиная с первого курса и постоянно самообучаться.
На какого программиста учиться?
Уже определились с дальнейшей карьерой и хотите развиваться в сфере программирования, но пока не знаете, какое направление для себя выбрать? Рекомендуем ознакомиться с нашей статьей
Мы расскажем о том, какие факторы следует учитывать при выборе специализации, а затем перейдем к обзору основных направлений в программировании.
Вначале пара слов об универсальных факторах выбора профессии, на которые обязательно надо обращать внимание.
1. Ситуация на рынке труда
Какую бы сферу и язык программирования вы ни выбрали, важно понимать, что вас ждет в будущем. Эта область постоянно развивается: одни отрасли находятся на пике популярности, другие постепенно сходят на нет.
Поэтому, прежде чем приступать к обучению, совсем нелишним будет оценить положение дел на рынке труда. Есть ли в вашем городе вакансии в интересующей вас области? Насколько это востребованное направление сейчас и как оно оплачивается? Такое исследование даст вам представление о том, какие перспективы ждут в выбранной области.
2. Сложность изучения
Еще один фактор, который следует учитывать, — это так называемый порог вхождения, то есть то, сколько времени и усилий придется приложить для изучения того или иного языка, прежде чем вы сможете писать на нем хороший код.
Языков программирования огромное множество, и все они отличаются не только своими возможностями в реализации программных продуктов, но и сложностью освоения. Наиболее простыми считаются Ruby, Python, PHP.
3. Интерес
И, наконец, очевидный, но не теряющий своей актуальности совет. Ищите такую область, которая вам нравится и вызывает интерес. Казалось бы, этот пункт может вступать в противоречие с двумя предыдущими. Ведь может статься, что для изучения того, что вам по душе, придется приложить немало усилий и времени, а размер заработной платы поначалу будет существенно ниже, чем у коллег по цеху. Но просто представьте себе, что это то, чем вы будете заниматься, к примеру, следующие 5 или 10 лет. Что вы при этом почувствуете? Радость? Интерес? Отвращение? Усталость?
Здесь важно найти разумный баланс между востребованностью направления и вашим собственным интересом. В конечном счете, если вы станете действительно квалифицированным специалистом, то сможете зарабатывать неплохие деньги в любой области.
Теперь о специализациях. Итак, какие же направления в программировании сейчас существуют?
1. Embedded-разработка (разработка встроенного программного обеспечения)
Практически во всех устройствах, окружающих нас в повседневном быту (и не только) используются микросхемы. Автомобили, электрические плиты, роботы-пылесосы, холодильники, банкоматы, стиральные и посудомоечные машины, роутеры, швейные машины. Этот список продолжает расширяться с каждым днем. Все эти многочисленные приборы работают при помощи электроники, которую кто-то должен запрограммировать. Именно этим и занимаются embedded-разработчики.
Основной язык программирования, использующийся в этой области, — это C++, встречается также ассемблер и JAVA, использующиеся преимущественно для низкоуровневого программирования.
Порог вхождения в эту профессию достаточно высок: C++ и ассемблер не относятся к числу самых простых языков. Кроме того, вам понадобится хорошо ориентироваться в том оборудовании, для которого вы будете создавать программы.
Заработная плата в этой сфере достаточно высока, embedded-программисты зарабатывают от 60 до 150 тыс. рублей и выше, в зависимости от уровня квалификации и профессиональных навыков.
Разработка встроенного программного обеспечения — это активно развивающееся направление. Поэтому если вам нравится работать с оборудованием и C++ для вас интересен, то это отличный выбор.
2. Разработка мобильных приложений (Android и iOS)
Разработка приложений под эти операционные системы ведется на разных языках, однако эти специализации достаточно схожи (подробнее об этой профессии). Рынок мобильного программного обеспечения постоянно развивается и продолжает расти в геометрической прогрессии, в немалой степени за счет высокой конкуренции в этой сфере, а спрос на таких специалистов огромен.
На этом направлении низкий порог вхождения — создание небольших приложений возможно даже в домашних условиях. В этой области легко набраться опыта и создать собственное портфолио.
Разработчику приложений под операционную систему iOS необходимо изучить языки программирования Objective-C и Swift (разработан компанией Apple). Для создания приложений на Android вам потребуется знание Java или C#.
Доход разработчика мобильных приложений варьируется от 50 до 160 тыс. рублей и выше.
3. Front-end разработчик
Еще одна очень востребованная и интенсивно развивающаяся область программирования — это веб-разработка (подробнее о профессии Web-программист). Через интернет продаются самые разнообразные товары и услуги. Сейчас чуть ли не у каждой компании есть свой хотя бы самый простенький сайт или представительство в социальных сетях, на маркетплейсах. А это означает, что спрос на специалистов в области веб-разработки высок и будет расти.
Frontend — это та часть сайта или приложения, которую видит пользователь: страницы и разделы сайта, меню, интерфейс и т. п. Соответственно, frontend-разработчик — это специалист, отвечающий за то, чтобы сделать сайт или мобильное приложение максимально удобным для пользователей.
Эта профессия потребует творческого мышления: необходимо придумывать различные формы веб-дизайна, который будет интуитивно понятен для посетителей сайта, и находить способы их реализации с помощью программирования. Такие специалисты востребованы и в небольших компаниях, и в гигантах уровня Google, Яндекс, Microsoft, Apple и др.
Начать работать в этой области сравнительно несложно, веб-разработка предоставляет хорошие возможности для приобретения опыта и профессионального развития. Для работы специалисту необходимо на высоком уровне владеть JavaScript, знать HTML, СSS, серверные языки (Perl, PHP), а также уметь работать с базами данных (MySQL).
Кроме технического образования, важно иметь начальные познания в области психологии, разбираться в особенностях работы человеческого мозга восприятия и познавательных процессов.
Заработная плата web-разработчика — в пределах от 50 до 150 тыс. рублей.
4. Back-end разработчик
Еще одна специализация в веб-программировании — это back-end-программист.
Это специалист, отвечающий за серверную, техническую часть сайта. В его обязанности входит разработка программно-административной части, в частности, ядра сайта, создание платформы и ее основного функционала, работа с архитектурой кода, программной логикой, контроль за состоянием серверов и баз данных.
Back-end программист работает в постоянном взаимодействии с фронт-енд-разработчиком, получая от него информацию о мнении пользователей и внося в работу сайта соответствующие изменения.
Зарплата back-end-программиста составляет от 60 до 200 тыс. рублей.
5. Gamedev (Разработчик игр)
В юности многие мечтали о том, чтобы работать в студии, создающий компьютерные игры. Это направление, традиционно вызывающее огромный интерес, особенно у молодых специалистов. Ведь что может быть более захватывающим, чем создание собственных видеоигр?
Программисты в gamedevе разрабатывают базовую механику игр. В их обязанности входит написание программного кода, создание игровых объектов и их характеристик, разработка искусственного интеллекта игры, разработка и модернизация игрового движка и др.
Заработок программиста, работающего в сфере разработки игр, может сильно разниться в зависимости от конкретной компании или проекта.
В какой вуз поступить на программиста и что изучают программисты?
Нужно ли высшее образование программисту?
В общем, можно смело констатировать тот факт, что большинство IT-шных специалистов не имеют профильного образования, тем более высшего, а приходят в специальность самостоятельно через курсы, книги и много практики. Почему именно таким путем? Потому что обучающие программы по программированию в вуз ах не успевают за требованиями в программировании. Онлайн-школы и прочие площадки для самообучения быстрее адаптируют свой материал под нужды современного программирования.
Но раз вы все-таки ищ е те вуз ы программирования в России, то давайте будем разбираться с этим вопросом.
Вуз ы программирования в России
В России есть вуз ы программирования, которые предоставляют возможность обучаться этой специальности. Однако будем откровенны : качество образования, которое предлагают университеты программирования в России, немного отстает от того, что предлагают европейские и американские университеты. Кстати, многие из них предлагают даже бесплатное образование. Да, там обучение будет на английском, но тем и лучше, потому что программисту без английского придется очень не легко. Плюс зарубежный университет повышает шансы остаться «там» жить — это актуально для тех, кто планирует переезд. Поэтому если есть возможность, особенно финансовая, то можно присмотреться к «тем» учебным заведениям.
Лучшие вуз ы по программированию в России
как далеко нужно пере ез жать,
есть ли общежитие для иногородних,
будет ли военная кафедра,
есть ли очное или заочное образование,
А выбирать есть из чего, на сегодняшний день около 350 высших учебных заведений в России предлагают обучение по направлению «Информатика и вычислительная техника».
Факультеты для программистов
«Информатика и вычислительная техника» — это программисты на каком-либо языке;
«Информационные системы и технологии» — готовят системных администраторов и программистов на каком-либо языке;
«Программная инженерия» — готовят программистов-проектировщиков различных систем;
«Прикладная математика» — аналитики с навыками программиста;
«Статистика» — чистейшие аналитики;
«Математика и компьютерные науки» — математики, аналитики и немного программисты;
«Фундаментальная информатика и информационные технологии» — готовят серьезных аналитиков с хорошими навыками программирования;
«Информационная безопасность» — готовят специалистов по кибербезопасности;
«Бизнес-информатика» — специалисты по работ е с большими данными;
Заключение
Мы будем очень благодарны
если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.
Куда пойти учиться на программиста
Школьники уже, кажется, сдали ЕГЭ и вот-вот отправятся подавать документы в ВУЗы. Программирование и IT-технологии пользуются стабильным спросом, примерно как юридические и экономические специальности 10 лет назад.
В этой статье я расскажу как работает высшее образование для IT, как правильно выбрать IT-специальность.
Статья будет полезна не только абитурентам-2015, но и школьникам старших классов, которые уже решили связать свою жизнь с IT.
Нужно ли поступать в ВУЗ, чтобы стать программистом?
Существует множество точек зрения на этот вопрос и, уверен, в комментариях его не раз поднимут. По моему скромному мнению, высшее образование не является обязательным условием становления специалиста в области IT, ровно как и гарантией этого. Но может стать прочным фундаментом для профессионального роста.
Вы можете читать книги, участвовать в OpenSource-коммьюнити, подрабатывать на oDesk и через несколько лет будете опытным разработчиком, без высшего образования. Правда, ничто не мешает это всё делать параллельно учёбе в ВУЗе, кроме собственной лени.
Вы можете поступить, сдавать зачёты и экзамены, получить диплом и не стать в итоге профессиональным программистом — таких историй миллионы.
Хороший ВУЗ даёт прежде всего отличные условия для того, чтобы получать знания, опыт, связи и вырасти как личность. И только от вас зависит, как вы будете их использовать (и будете ли вообще).
Примем условно, что вы уже приняли решение получить высшее образование в сфере IT, и пойдём дальше.
Бакалавр, специалист и магистр
С тех пор как министерство образование решило интегрировать Россию в болонскую систему высшего образования прошли годы и многое изменилось. Раньше все ИТ-шники могли получить только диплом специалиста. В этом году выпустились последние дипломированные специалисты (за исключением специальностей, где срок обучения более 5 лет).
Сейчас вы можете стать бакалавром, после этого — магистром, а далее поступать в аспирантуру для соискания российского аналога Ph.D.
В остальном ни теоретический материал, ни методика преподавания не изменились. Сократился объем материала. Если в каком-то ВУЗе раньше давали лабораторные для Pascal, то по-прежнему их и дают.
При этом учебные планы магистратуры могут похвастать новизной. Об этом можно написать отдельно, если будет спрос.
Нужно учитывать, что бакалавр — это не готовый сотрудник, который может прийти к работодателю с красным дипломом и просить среднюю зарплату по больнице. Бакалавр что-то знает, что-то умеет из технологий, но как правило не умеет работать в команде, большом коллективе и полностью самостоятельно решать конкретные практические задачи. В терминологии разработчиков это Junior, подающий надежды через 2-4 года стать Middle Developer. Во многих компаниях таким выпускникам без опыта устраивают стажёрские программы с наставником на 6-12 месяцев.
Прикладной и академический бакалавриат
Само собой тот факт, что специалитет просто уменьшили на 20%, не мог порадовать министерство образования. Мало кого может порадовать «недоспециалист», который теперь знает ещё меньше. Поэтому с 2015 года будут повсеместно вводить прикладной бакалавриат как альтернативу неполному академическому образованию.
Несмотря на то, что идея на мой взгляд здравая и её реализация была начата ещё 5 лет назад в 44 пилотных ВУЗах, я ещё не встречал ни качественно новых учебно-методических материалов, ни готовых к самостоятельной работе выпускников. Предполагаю, что в ближайшие 2-3 года ничего не изменится и значительной разницы в подготовке академического и прикладного бакалавриата не будет. Тем не менее, если вы уже решили быть магистром — поступайте на академический, если после 4 лет обучения планируете идти работать, а к магистратуре вернуться «когда-нибудь» — то на прикладной.
Преподавание в ВУЗе
Если в школе учатся, то в ВУЗе обучаются. И разница тут огромна. Никто не будет заставлять учиться. Если хотите получить диплом — сидите, разбирайтесь, спрашивайте у однокурсников. Преподаватель — это просто носитель знаний, который умеет эти знания пояснять. Его цель — рассказать, ваша — понять. Если вы что-то не поняли — преподаватель свою цель всё равно выполнил. Даже если в отдельных случаях это не так — лучше думать именно в такой парадигме, будет меньше разочарований.
Качество преподавания заключается именно в том, насколько хорошо преподаватель доносит до вас знания, какую практическую компетенцию вы при этом получаете. Например, донести принцип ООП можно на языке программирования Delphi, а можно на C# или Java. Вы поймёте ООП в любом случае, если будете стараться, но знакомство с языками C# или Java будет полезно для вас в будущем, при подготовке курсовых работ, при подработке или дальнейшем трудоустройстве.
Помимо дробления бакалавриата на академический и прикладной, сейчас также проходит обновление стандартов образования со второго поколения на 3 и 3+. В условиях такого количества изменений в преподавании — есть риск, что ближайшие 2-3 набора студентов будут подготовлены хуже, чем последующие. А значит — нужно прилагать больше личных усилий.
Выбирая ВУЗ и специальность желательно знать Кто и Что вам будет рассказывать. Перед окончательным выбором — узнавайте у текущих студентов, читайте студенческие группы VK.
Выбор специальности
Итак, вы решили получить высшее образование, стать программистом. И не просто программистом, а, например, именно Web-разработчиком, специализирующемся на frontend. Круто, что в 18 лет уже есть цель в жизни, но спешу расстроить. В нашем государстве есть такая штука как стандарты высшего образования и они куда более абстрактны, чем вам бы этого хотелось.
Полный список стандартов высшего образования можно посмотреть вот тут. Не по всем ещё есть стандарты поколения 3+, но до конца года будут. Рекомендую почитать эти скучные документы.
Математическое обеспечение и администрирование информационных систем (МОАИС).
Специальность, дающая наилучшие условия для развития компетенций разработчика.
Вы изучите: технологии программирования на различных языках (обычно за 4 года вы познакомитесь с минимум тремя языками программирования — например: C++, C#, Lisp, или C++, Java, Python), разработка и основы администрирования реляционных и объектно-ориентированных БД, сетевые технологии, разработка приложений «клиент-сервер», «клиент — сервер приложений — сервер БД», параллельное программирование.
Обучение даёт понимание программирования в принципе, за пару месяцев вы способны изучить любой язык программирования и развиваться в нём; понимание как работает любая программа, как решить большинство вычислительных задач. После получения диплома из вас крепкий Junior, но как только вы разберётесь с конкретными задачами и инструментами в конкретной компании, багажа знаний будет достаточно, чтобы претендовать на Middle.
После опыта работы и хорошей магистратуры по этой специальности вы сможете не просто делать программы и информационные системы, но познакомитесь с принципами разработки высоконагруженных систем, управления командой, планирования разработки и сможете претендовать на Senior и Team Lead.
Фундаментальные информатика и информационные технологии (ФИИТ).
Специальность близка к МОАИС, но ориентирована на вычислительные эксперименты и исследовательские задачи.
Иными словами, как программист вы будете в наилучшей форме, но вы будете почти бесполезны для решения практических бизнес-задач. Зато вы ценный кадр для R&D-департаментов, научных лабораторий и научно-исследовательских команд. Обучение по этой специальности в хорошем ВУЗе даёт возможность выбирать место работы по всему миру, работая известных компаниях. Уже изначально предполагается, что бакалавриат будет только первой ступенькой вашего образования.
Вполне реальная история: получив бакалавра в МГУ, поступить в магистратуру CalTech. Само собой, физика, алгебра и матанализ должны быть вашей страстью.
Информатика и вычислительная техника (ИВТ)
Специальность ориентирована на воспитание системных программистов, работающих «с железом». У вас будут навыки программирования роботов, систем реального времени и работы с паяльной лампой. С таким образованием разрабатывать скучные учётные системы и веб-приложения не захочется, но ваша дальнейшая карьера может начаться как инженера по видеонаблюдению в небольшом ЧОПе, так и в лаборатории робототехники крупного бренда (само собой после прохождения магистерской программы).
На мой взгляд с чисто программистскими специальностями всё. Ниже будет перечень специальностей, где тоже обучают программированию. Но если у специальностей сверху учебный план построен так, чтобы выпустился Программист, то у специальностей ниже — Специалист в чем-то с навыками программирования.
Не только программист
Программная инженерия
Относительно новая специальность, готовящая по сути менеджеров программного продукта. Этот специалист смотрит поверх задач разработки, управляет требованиями, функционалом, версиями, командами разработки. На первых курсах вы изучите технологии программирования и, возможно, пару языков, но дальше в учебном плане будет всё больше про управление разработкой ПО. Начинать карьеру можно как Junior Developer, но вместо дальнейшего апгрейда до Middle вы станете менеджером проекта.
Прикладная информатика
Выпускает системных аналитиков с широким кругозором в IT и бизнесе. Они тоже умеют программировать, но по настоящему хорошо у них получается писать технические задания, формализовать бизнес-процессы и эффективно коммуницировать с разработчиками, которые витают в высоких абстракциях. Можно стать менеджером проекта или даже директором своей компании, если есть такие амбиции.
Бизнес-информатика
Очень близка к прикладной информатике, но компетенции менеджера у выпускника значительно сильнее. Можно быть консультантом по применению IT или управлять политикой IT небольшого холдинга. После получения диплома начать работать хоть в саппорте, но карьерная цель «IT-директор» может быть достигнута за считанные годы.
Информационные системы и технологии
Фокус на администрировании информационных технологий и правильном выборе софта и железа под задачи корпоративной локальной сети. Программирование будет, но на процедурном уровне, ближе к скриптам и конфигурационным файлам.
Математика и компьютерные науки
Большая порция фундаментальных знаний позволит вам работать как учителем информатики в школе, так и аналитиком в крупной компании. В хорошем ВУЗе эта специальность тяготеет к научным исследованиям и также может быть стартом в R&D для тех, кто физике предпочитает математические науки.
Информационная безопасность
Первый курс часто похож на специальности вроде МОАИС, где программируют много и на разных языках, но потом это прекращается. Вы не должны писать код, вы должны понимать как любой код могут атаковать. Сети и операционные системы будут знакомы как никому другому, можно будет называть себя хакером, но работать придётся в сфере безопасности, с нормативно-правовыми документами, а не только с firewall и sniffer.
Важно понимать, что всё зависит от конкретного учебного заведения. Это как стандарт HTML и его реализация на сайте провинциального салона красоты. Есть ВУЗы, где студенты всех специальностей ходят на одинаковые лекции. Есть ВУЗы, где МОАИС изучает Visual Basic и Pascal, пишет макросы в Excel, а базы данных изучает на примере Access. Если в вашем родном городе именно такой ВУЗ, то пора покупать билеты на поезд.
Выбор специальности при поступлении крайне важен, поскольку определяет дальнейшую карьеру и, может быть, всю жизнь. Это по сути первый самостоятельный выбор в жизни и ошибка будет измеряться годами. Поэтому рано «выдыхать» после ЕГЭ, самое время узнать как можно больше про ближайший университет, его студентов и преподавателей. Удачи.