Привет, Хабр! Уже много сказано об образовании, в частности для программистов, о программах, что лучше подходят или не подходят, но каждый год ситуация меняется и как бы грустно не было, в этом надо разбираться (будь ты абитуриент или работодатель). Очень важно начать свой путь именно с выбора alma mater
… Прошу под кат всех, кого не испугает длинная статья по теме.
Данную статью/пост можно рассматривать как туториал или справочник для всех, кто уже в IT или хочет связать свою жизнь с IT. Сразу оговоримся: здесь пойдет речь не про системных администраторов, дизайнеров или инженеров, а именно про программистов (от 1С до Deep learning).
0 – Нулевая ступень. Школьное образование. Средняя школа (с 5 по 9 классы)
Первое с чем мы сталкиваемся в жизни – школа. Это просто огромная часть нашей жизни, зачастую наш второй дом (к сожалению, в текущих реалиях – с точки зрения времени проведенного в школе). И как к очень важному событию, необходимо ответственно и осознанно подойти к выбору своего будущего учебного заведения.
Математика
Особую роль в жизни человека, склонного к рациональному мышлению или любящего думать, играют точные науки такие как: математика, физика и информатика. Многие могут спорить о том, что математика не сильно нужна в бoльшем спектре задач в сфере IT, но позвольте не согласиться. Всё, начиная с механических счетных машин до создания первого компьютера, было основано на математических принципах и моделях. Да, это, безусловно, был не один узкий раздел математики, но для каждой задачи необходим свой подход и он мог быть найден в математике. Умение думать ещё никому не мешало, это очень полезный навык, но одной здравой мысли мало, нужна дополнительная библиотека, с помощью которой ты сможешь реализовать свою задумку. Так вот в роли такой библиотеки выступает математика.
Физика
Физика “чистому” программисту не нужна, но если ещё юный разум понимает, что просто так науки не дают, то он прав. Физика не нужна там, где даже теоретически её не применяют, но в целом спектре задач она оказывается просто жизненно необходимой. Посмотрите хотя бы на разработку игр, вы можете использовать уже готовые решения, движки, но разве вы не хотели бы что-то исправить, переделать или попросту понять как же это работает? А если нужно будет переделать? Без знания фундаментальных основ вы будете рыться в учебниках или на сайтах в поисках истины, но если вы знаете что это и как это применять, то вам не придётся тратить время на поиски и терять нервные клетки. Вас начнут ценить не просто как monkey-кодера, но как человека думающего, способного решить фундаментальную проблему. Разве не в этом смысл? Все научные расчеты, визуализации, и другие вещи сейчас делают на компьютерах, а программы пишут те самые программисты.
Её также стоит принять и потому, что она решает целый ряд бытовых задач. Например, если у вас неполадки с блоком питания, то вы запросто замените взорвавшийся конденсатор и продолжите работу. Вы поймете, почему могут возникать сбои в работе на аппаратном уровне и как этого избежать. Поэтому в школьные годы физику точно не стоит избегать, тем более, что программа не такая уж и сложная.
Информатика
Что тут можно сказать – не беда, если у тебя что-то не получается или тебе не слишком нравится (ведь это только средняя школа). Но, если тебе нравится и чувствуешь порыв заниматься этим – прекрасно!
В российских реалиях без уроков информатики идти в программирование не столь привлекательно. Вас, конечно, научат в некоторых ВУЗах, но это будет не слишком правильный подход и скорее всего, вы бросите это дело.
Стоит ли учить программисту информатику или больше внимания уделить математике в школе? Хороший вопрос, все зависит от того насколько у вас хорошо обстоят дела с каждым из предметов. Нельзя за счет первого довольствоваться вторым.
Самое главное – принимайте участие в олимпиадах. Так вы становитесь умнее, набираетесь опыта и знакомитесь лучше с миром “думающих” людей. Возможно, тебе настолько не повезет, что ты не выиграешь ни одной олимпиады, но скажу хорошую новость: я не знаю ни одного человека, который бы постоянно участвовал в этой движухе и не выиграл бы ни одной олимпиады (или хотя бы не стал призёром).
Можно сказать, что школьное знание этих предметов имеет намного больше плюсов, чем минусов. Чем ты моложе, тем больше ты должен впитывать полезной информации.
1 – Первая ступень. Школьное образование. Старшая школа (с 10 по 11 класс)
Встает нелёгкий выбор: посвятить своё время хорошему обучению и сдаче гос. экзаменов (таких как ЕГЭ), или, может вникнуть в профессиональную деятельность и начать заниматься прикладным программированием, а может вовсе сделать упор на олимпиады и алгоритмы?
Однозначного ответа нет, хотя я по-прежнему советую принимать участие в олимпиадах, это очень полезно.
Что касается посвящения себя “настоящему” программированию, то этот путь подойдет не каждому. Цель, которую в итоге необходимо достичь – это стать программистом, настоящим профессиональным “брэйн-кодером”. Вспомним истории тех людей, что бросали университеты и затем становились миллиардерами в it сфере: Стив Джобс, Билл Гейтс, Марк Цукерберг, Майкл Делл и другие. Но поймите одну очень важную вещь: никто из них не ставил своей целью бросить учебу. Кто-то был сыном богатых родителей и имел талант к ведению бизнеса, кто-то родился в именитой семье и тоже не был дураком, кому-то же повезло меньше, но он был гениален. У каждого своя история, но если одни бросают учебу из-за трудностей в выживании и только потом “встают на ноги”, то другие сразу имеют фору в виде семьи и им нет никакого дела до обучения, когда можно взять и открыть своё дело.
К слову сказать, несмотря на престижный статус семей Цукерберга и Гейтса они были талантливыми учениками и проводили своё время в лучших университетах мира.
Так вот, если жизненная ситуация позволяет чувствовать себя хорошо: у тебя есть дом, еда и близкие люди, то никогда не надо жертвовать определенным настоящим, ради неопределенного будущего. Учись, пока есть возможность, пиши программы, учи точные науки, ведь в итоге твоя первая значимая цель в таком случае – хороший ВУЗ. Но будь то ЕГЭ или олимпиады, готовиться надо. Ты можешь не тратить время на такие вещи как биология, химия, география, потому что тебе сейчас они точно не нужны, в 10-11 классах там слишком узкая информация и нет смысла запоминать сколько месторождений нефти в Тюмени или какое потомство будет у пятнистой кошки. Конечно, IT сфера намного более толерантная в плане трудоустройства, но ты можешь начать комплексовать из-за того, что остальные с образованием, а ты нет, что одни прошли какие-то ступени, а ты нет и даже если потом ты будешь в 5 раз превосходить по мастерству своих коллег, то тебя не будет покидать ощущение, что ты что-то не успел, забыл, не доделал…
В общем, теперь более подробно про обучение.
Если ставить целью хороший ВУЗ, то нужна хорошая школа. Как её выбрать? Очень просто: гуглить рейтинги школ/лицеев, читать про каждый понравившийся, поспрашивать учащихся и составить свой контрольный рейтинг. В итоге, поступай туда, где тебе будет комфортно во всех отношениях. Придется много работать, но оно того стоит.
Но если ты не попал туда, куда хотел, то не надо отчаиваться. Во-первых, вспомни про самообразование, тем более оно пригодится тебе ещё не раз. Во-вторых, у тебя появилась огромная возможность потратить время на хорошую подготовку. Скорее всего, в олимпиадном направлении преподаватель тебе уже не поможет, но ты можешь отлично подготовиться к ЕГЭ. Ищи курсы, построй график занятий и начинай работать. Если ты будешь четко следовать графику, то ты увидишь, насколько лучше ты стал знать материал. Так что это вполне достижимо, набрать 300 или 400 баллов на ЕГЭ. Ищи курсы, читай книги, решай варианты!
Пора ботать!
2 – Первая альтернативная ступень. Колледж (после 9 класса)
Очень неожиданно. Кого интересуют колледжи? — спросите вы. Тысячи девятиклассников — отвечу я.
Может для кого-то будет новостью, но в нашей стране есть следующий тип заведений: колледж.
Ещё лет 10 назад колледжи поголовно напоминали те самые ПТУ, которые выступают в роли мемов на разных интернет площадках. Но уже буквально сегодня спрос на СПО (среднее профессиональное образование) возрос многократно среди учащихся. С чем это связано? Я могу назвать несколько причин:
- Отсутствие необходимости сдавать ЕГЭ при поступлении и после окончания.
- Внутренние экзамены в университет.
- Профессиональные навыки и профильные предметы.
- Дипломированный специалист.
Очень многим не нравится система ЕГЭ и поэтому зачастую это является первой причиной пойти в колледж. Нельзя за это осуждать, т.к. любой экзамен это стресс, а если его еще и пересдать нельзя в тот же год, то тем более. На самом деле, по-хорошему это должна быть самая малозначимая причина. Многих прельщает возможность сдавать внутренние экзамены вместо ЕГЭ.
Профессиональные навыки и профильные предметы это просто неотъемлемая часть каждого колледжа. Помимо того, что вы получаете базовые знания в проф. области вы уже начинаете применять их в этой области. Технические знания, навыки, опыт, все это делает данное учебное заведение ещё привлекательнее.
Ну и конечно, диплом, который говорит, что вы стали специалистом в своей области (на самом деле нет).
Все начинается с выбора направления обучения и подачи заявления в приёмную комиссию. Это очень похоже на приём заявок в ВУЗе, где точно также сидят люди за столиком, зазывают студенты и предлагают поступать к ним на факультет. Хочу представить вам специальность, на которой сейчас доучиваюсь последний год я (специальностей по программированию не так уж и много, есть ещё прикладная информатика, но наиболее разумный выбор именно ПКС).
09.02.03 – Программирование в компьютерных системах (ПКС).
Ссылка на описание и список ссузов
Т.к. мы говорим о программистах, то логично предположить, что наиболее подходящая специальность это ПКС. Она целиком и полностью направлена на подготовку кадров разбирающихся в современных трендах прикладного программирования. Будь то веб или десктоп, может даже мобильная разработка это всё относится к этой специальности. Во многих учебных заведениях программа может варьироваться, но наиболее распространенные обязательные дисциплины это: 10-11 класс (стандартно — первый год обучения, обычно упор сделан на математику и физику), основы программирования, алгоритмизация (основы алгоритмизации), элементы математической логики (а-ля “light” версия дискретной математики), основы математического анализа (в которую частично включена программа линейной алгебры первого семестра технического вуза), операционные системы, сети и системы связи, архитектура компьютерных систем. На старших курсах могут появиться такие предметы как: прикладное программирование, веб-программирование, информационная безопасность. От колледжа к колледжу меняются программы обучения, направленность, но так или иначе эти предметы есть всегда. Всегда нужно просматривать программу обучения на официальном сайте учебного заведения, это важно.
– Основы программирования:
На этих занятиях вы будете познавать “азы” логики, учиться писать код, и разбирать блок-схемы (вариативная часть). Довольно полезные занятия, чтобы вообще вникнуть во всю эту систему и понять что к чему. Если у вас уже есть опыт в программировании, то занятия могут показаться вам скучными, тут уже ничего не поделаешь.
– Алгоритмизация:
Ну что тут можно сказать, этот предмет посвящен алгоритмам. Но будьте аккуратны, например, в нашей программе под этим подразумевались: машина Тьюринга, машина Марка и машина Поста. Так сказать давали задачи на логику. Далее были примеры рекурсии и понятия функций и прочее, но в математическом аспекте. Вы должны понимать, что здесь все будет зависеть от преподавателя.
Комментарий от автора:
Этот курс один из немногих, что мне понравился в учебном заведении, где я учился, и не потому что там был уникальный или интересный преподаватель, а потому что мы прониклись этими идеями и задачами, пытались решать на скорость и затем сравнивали наши решения между собой и искали лучшее! Это было действительно круто! Правда когда нам объясняли рекурсию с помощью мат. формул, то сделали это настолько плохо, что решения задач мы просто подбирали опытным путем…
– Математическая логика:
Это небольшой курс дискретной математики для общего развития. Лично я понял не только понятие множества и что такое ДНФ, а также как принципиально работает процессор и многое другое. Т.е. математика, но она, во-первых, пригодится в Вузе, а во-вторых, открывает глаза на многие вещи.
– Основы математического анализа и линейная алгебра
Если кратко: основные понятия из каждого семестра Вузовской программы. Т.е. мы решали дифференциальные уравнения, но допустим про двойные интегралы нам не рассказывали. По линейной алгебре нам рассказали про матрицы, какие есть операции над ними и что такое определитель и как его считать.
Честно сказать, я остался доволен этой программой, т.е. это просто введение в курс высшей математики, но нам попался настолько замечательный преподаватель, что мне очень все понравилось, я решал всё что нам давали и соревновался с одногруппниками, чтобы сделать все побыстрее (и правильно, конечно, тоже). Однозначно, стоит посещать эти занятия, тем более эта база пригодится вам в университете.
– Теория вероятностей и мат. статистика
Эти две дисциплины вел у нас тот же преподаватель, что и основы мат. анализа. Т.е. было замечательно. Эти лекции также пригодятся вам в Вузе.
– Архитектура компьютерных систем
Отличный возможность понять как работает компьютер на физическом уровне, что происходит с “железом” в момент работы и пр. Рассматриваются принципы построения архитектуры микроконтроллеров, процессоров и пр. Возможна также работа в программе LogiSim и выполнение в ней практических работ.
К сожалению, нам попался очень ленивый преподаватель и мы почти так ничего и не поняли. Он постоянно втыкал в свой ноутбук и на “отстань” давал работы, которые сам не понимал как сделать. Так бывает, ничего не поделать.
– Операционные системы
Курс по операционным системам рассматривает, собственно, работу современных операционных систем (Linux, Windows, системы реального времени и пр.). Имеются также лабораторные.
Не идеально, но я узнал про сигналы в линуксе, про различные архитектуры построения операционных систем, а также научился работать в vim!
– Сети и системы связи
Курс по сетям просто необходим программисту. Если ты не знаешь, что такое маска, или чем адрес сети отличается от адреса узла, то будешь выглядеть белой вороной. Здесь рассмотрены основные понятия в терминологии сетей, топологии, организована работа в Cisco Packet Tracer и даже настройка реального оборудования.
У нас было два похожих предмета и оба про сети. Один вел ленивый препод с “архитектур”, а вот второй рассказывал нам довольно полезные вещи. Я пытался выжимать по максимум с этих занятий и выполнял все работы, что только мог. Однозначно, лайк дисциплинам.
– Системное программирование
Курс по системному программированию рассматривает низкоуровневое программирование на языках ассемблера. В моём колледже это был MASM611. Полезный вводный курс для тех, кто хочет узнать ещё больше о том, что творится в компьютере уже с точки зрения программиста. Лабораторные, теория — всё по “феншую”.
Вот вы знаете, например, почему в нормальных языках индекс первого элемента в массиве начинается с нуля?
Потому что индекс это просто смещение в памяти на размер типа элемента массива, а первый элемент и так находится в самом начале.
– Прикладное программирование
Этот курс является обязательным, но программа обучения выбирается и проводится каждым преподавателем по-своему. на выбор могут быть представлены совершенно разные языки программирования. Собственно, самый важный курс для программиста.
У нас получилась очень весёлая (грустная) история. Нам сказали, что у нас вести данный курс будет новый преподаватель с опытом реальной работы. Оказалось, что последний раз она(преподаватель) программировала на ассемблере 20 лет назад на каком-то заводе и совершенно не имеет понятия как вести занятия. И тогда я предложил провести курс по C# вместо неё. Готовился к занятиям (в чём мне помог замечательный преподаватель "Мытищинской школы программистов"), придумывал задания, лабораторные, контрольные, домашние задания. В первом семестре я также принимал экзамен. Я доволен!
UPD: На самом деле если студент вместо преподавателя ведёт пары в течение семестра на постоянной основе, то это очень плохая ситуация, т.к. говорит о низкой квалификации преподавателей.
– Информационная безопасность
Слишком большой разброс, поэтому нет четкого плана, как это вообще вести (в вузах это вообще отдельное направление). Ожидания сбросьте на ноль.
Такие предметы как: философия, экономика, менеджмент, ведение документации и пр. рассматривать не имеет смысла, потому что это совершенно не то, на что хотелось бы тратить время при обучении. К слову сказать, этим нас забивали больше, чем профильными предметами и это ужасно. Просто огромный минус в карму колледжа.
Вы должны сразу понимать: всё, что я сейчас написал про пары – сугубо локальные случаи. Т.е. всё может сильно отличаться в другом учебном заведении! Каждый преподаватель по-своему ведет занятия. Есть те, кто делает это лучше или хуже других, но в целом, сейчас испытывается дефицит профессиональных преподавателей, поэтому ожидать чего-то сверх не стоит. Просто принимайте все как есть, это единственная надежда нормально доучиться и не разочароваться.
Вступительные испытания:
Подготовки ни к ЕГЭ, ни ко внутренним нет (сейчас что-то похожее организовали, но в колледжах без вузов такого обычно нет). Об этом вам придется позаботиться заблаговременно (за год или два). Все технические вузы принимают по внутренним экзаменам при наличии диплома СПО(среднего профессионального образования). Подготовка ко внутренним очень похожа на подготовку к ЕГЭ. Так что у вас появляется возможность сдать ЕГЭ. В этом нет ничего страшного. Абсолютно. Я сам сдал и доволен. Так мало того, вы автоматически готовитесь ко внутренним. Процесс сдачи ЕГЭ прост, вам лишь нужно зайти на сайт РЦОИ и почитать где и когда вы можете сдать ЕГЭ. Затем приехать на регистрацию и ждать экзаменов. Внутренние же экзамены проходят непосредственно в ВУЗе, задания обычно проще или такие же, но также их меньше, чем на ЕГЭ (Однако, подготовиться к ним немного сложнее, т.к. примеров заданий прошлых лет почти нет и в день экзамена некоторые задания могут поменяться).
В общем и целом колледж — способ понять, нужно ли вам это или нет, а также приобрести различные навыки, чтобы в дальнейшем вам было проще работать и учиться. Многие идут после колледжа работать, но они идут лишь веб-программистами и зачастую только front-end разработчиками. Если ставить своей целью такое занятие, то вышка вам больше не нужна, но дабы получить широкие возможности мы подразумеваем логичное продолжение — ВУЗ. Так что далее будем рассматривать именно их.
UPD: Прошло приличное количество времени с тех пор как я начал писать эту статью и мнение моё немного поменялось. Подытожим.
Идёт 2019 год… Колледжи по-прежнему отстают в развитии от университетов и школ. Олимпиады не устраиваются, к соревнованиям команды не готовят, в школьных олимпиадах принимать участие нельзя, до университетских твой мозг ещё не дорос… То, что есть (например, WorldSkills) – ерунда, по крайней мере в IT компетенциях. Я участвовал не один раз и каждый раз что-то шло не так. То там чёткий тайминг выполнения сессии (одного из нескольких заданий), то там начисляют баллы за чистоту рабочего места (просто убейте таких организаторов), или просят сделать условно part 2 до part 1 (Как?! Не тупизм ли? Это например, как сначала написать страничку отправки запросов и они её проверят на работоспособность, а только потом писать сервер, отвечающий на эти запросы, что противоречит логике, потому что страничка ничего не получит в ответ пока нет сервера!), а также задания по типу “Надо заполнить вот этот excel файл информацией какой хотите откуда хотите, потом распечатать, хотя он даже в сыром виде не помещается на A4, но нас это не волнует – баллы придумаем.”. И понимаете в чём проблема – так везде среди колледжей. Тупые (именно тупые, глупые и плохо прописанные) задания, слабый (от слова “не существует”) преподавательский состав, бюрократия (когда ты постоянно ходишь, а твоя группа нет, но косяки за отсутствие скидывают на тебя, когда вместо фактических знаний им важнее формальные) и всё в таком духе. Последней каплей были два предмета в 7 семестре: Инструментальные средства разработки информации и инфокоммуникационные системы. Первый предмет вёл человек отдалённый от области, но хорошо запомнивший какие-то статьи из интернета на тему предмета и нудно рассказывающий их, делая вид, что мол это вы все тут дебилы, а мы то старики всё знаем лучше… Да ладно нудятину, но когда он забывает, что говорил вчера или 5 минут назад или любит поспорить с тобой без фактов… Но также и сети: нам третий семестр рассказывали одно и тоже. Понимаете насколько всё плохо? Третий семестр! Модель OSI – Да мы знаем, хватит уже! “Вот вам лаба, делайте” – “ок, сделали, давайте следующую” – “Не дам, вы же ходить не будете” – “Но мы это два семестра подряд делали” – “Ничего не знаю, лабы не дам, сидите на паре.”. Однозначно, в 2019, 2020, 2021, да и года так до 30 если ничего не поменяется крайне НЕ рекомендую идти в колледж.
Есть однако люди, которым, как оказалось, колледж открыл второе дыхание, но это исключения: люди, которые почти ничего не знали и решили узнать. Таких где-то 0.01% на всех учащихся. Ещё можно отметить, что по непонятной мне причине здесь концентрируются люди, которые предпочтут побухать в гараже, вместо похода на соревнование/хатакон/ctf… Особое отношение к девушкам (наверное, именно поэтому мне тяжело теперь адекватно оценить студентку): их мало, им все помогают или делают за них, у них всё в шоколаде, хотя по факту только треть из них что-то действительно делает и честно получает награду за работу.
Если вы уже было дело подумали поступать в колледж – не надо, этот плод ещё не дозрел. Как вариант – поступить, сдать ЕГЭ и забрать справку о прохождении полного курса школьной программы, а затем поступать уже в университет.
UPD: Накипело
3 – Вторая ступень. Высшее учебное заведение. Бакалавр
Вот мы и подошли к наиболее интересному этапу для разбора. Много вопросов насчет необходимости получения высшего образования программисту. Давайте я приведу аргументы почему оно необходимо, а затем почему нет.
- Первое на что смотрит работодатель впервые – диплом. Кто бы что не говорил, но это так. Грустно, но я это испытал на своей шкуре (об этом далее).
- Фундаментальная база, готовые курсы обучения. За вас уже написали программу обучения, чтобы вы не сами искали материалы, а брали уже готовое.
- Математика. Как минимум — она заставляет думать.
- Время на саморазвитие, изучение интересных направлений.
- Студенческая жизнь, приобретение навыков коммуникации и контактов.
Теперь посмотрим на контраргументы:
- Длительное время обучения. (4-5 лет)
- Много побочных дисциплин.
- Зачастую устаревшая программа.
- Возможность учить только необходимое и самому.
- Свобода действий, отсутствие страха вылететь из универа.
Вы можете сказать, что и без университета можно стать программистом. Да, можно. Всё дело в том, что для освоения некоторых областей придется потратить огромное количество времени, и не факт, что в итоге это приведет к успеху, поэтому проще будет отучиться в университете, где уже подготовлена программа обучения, придуманы практические и лабораторные и есть мотивация.
Каждый выбирает своё, а мы движемся дальше.
UPD: Рекомендую прочитать статью Программист без диплома: что может и чего не может дать «домашнее обучение» в IT, чтобы детально посмотреть на плюсы и минусы университетского образования.
Самое сложное это выбрать подходящий ВУЗ. Проблема кроется в нескольких вещах:
- Качество образования
- Ценность вуза (в глазах работодателей)
- Сотрудничество с компаниями
- Внутренние программы обучения
В наше время обучить человека довольно нелегко, особенно если профессия — программист. Проясним ситуацию.
Есть два типа программистов в ВУЗе: одни пишут программы на C# и программируют сайты, а вторые обучают нейросети, работают с big data, пишут программы для суперкомпьютеров и разрабатывают алгоритмы. Назовем этих людей “софты” и “научники” соответственно.
Для сопоставления программ обучения для каждого типа мы зайдем на сайты универов и почитаем программы обучения на следующих специальностях:
- Прикладная математика и информатика (01.03.02)
- Математика и компьютерные науки (02.03.01)
- Фундаментальная информатика и информационные технологии (02.03.02)
- Информатика и вычислительная техника (09.03.01)
- Прикладная информатика (09.03.03)
- Программная инженерия (09.03.04)
Рассмотрим каждую и условно поделим их на “софтовые” и “научные”.
Внимание! В качестве предметов далее представлены только самые распространенные и наиболее повторяющиеся от вуза к вузу. Не исключена возможность обнаружить новый или не обнаружить предмет на сайте конкретного вуза.
ПМИ (01.03.02)
Первый претендент “ПМИ”. Чтобы понять о чем эта специальность мы рассмотрим программу следующих вузов: МФТИ, НИУ ВШЭ, МГУ (им. Ломоносова), МГТУ им. Баумана, ИТМО, СПбГУ, СПбПУ (Политех Петра Великого).
Сразу поясню, что направление может называться, например, ИВТ, но в Вузе есть разделение этого направления и поэтому я брал максимально подходящие под программирование учебные планы.
Итак, если открыть эти файлы, то видим, что обязательно в учебном плане “прикладная математика и информатика” есть такие предметы:
- Дискретная математика
- Алгебра
- Математический анализ
- Дифференциальные уравнения
- Линейная алгебра и геометрия
- Теория вероятностей и математическая статистика
- Основы и методологии программирования
- Алгоритмы и структуры данных
- Базы данных
- Архитектура компьютерных систем / Операционные системы
- Информатика (50/50)
- Английский язык
По выбору идут следующие дисциплины (это значит, что у каждого вуза на данной программе есть свои специализации и в зависимости от выбора могут появляться предметы из ниже перечисленных): - Теория игр
- Машинное обучение
- Параллельное программирование, распределенные системы
- Системное программирование
- Функциональное программирование
- Объектно-ориентированние программирование
- Безопасность и криптография
- Анализ данных
- Компьютерная лингвистика
- Компьютерное зрение
- Теория графов и её приложения
- Компьютерные сети (обычно включен в основные предметы, но часто глубокое изучение этого модуля выносят в дисциплины по выбору)
Из этого можно сделать вывод, что это довольно мощная универсальная программа, но преимущественно нацеленная на подготовку специалистов узкого плана. Т.е. специалистов по машинному обучению, data scientist (специалист по работе с данными), системных программистов (написание модулей операционных систем и т.д.). Однако, эта специальность довольно универсальна, с хорошим математическим аппаратом и фундаментальными знаниями информатики и программирования (помимо выбранной специализации на самой программе) можно стать профессионалом почти в любой области.
От себя добавлю, что самый большой конкурс в вузах именно на эту специальность. Программа может отличаться, преподаватели и условия быть разными, то тем не менее, всё больше людей понимают и осознают необходимость получения такого образования.
Проходные баллы 2017 и 2018 ЕГЭ на бюджет (2017/2018/Максимально):
МФТИ – 295/295/310 (+ИД)
НИУ ВШЭ – 298/297/310 (+ИД)
МГУ – 422/425/510 (+физика егэ, +дополнительный экзамен по математике)
МГТУ им. Баумана – 277/268/310 (+ИД)
ИТМО – 309/283/310 (+ИД)
СПбГУ – 266/263/310 (+ИД)
СПбПУ – 253/249/310 (+ИД)
*у ВШЭ имеется две программы, которые схожи друг с другом. ПМИ и Прикладной анализ данных (ПАД). Первая ведётся на русском языке, вторая же на английском (информатика ЕГЭ заменяется на английский язык) и на 2018 год осуществляет подготовку только на контрактных местах. Отличие также в том, что ПАД целенаправленно сразу же готовит специалистов в области анализа данных (есть экономические дисциплины, меньше курсов по выбору, т.к. уже заданы).
Определенно эта программа относится к “научным”. Т.е. здесь довольно много математики, сложные дисциплины, и широкие возможности для дальнейшего развития.
МКН (02.03.01)
Что же, перейдем к следующей программе: МКН (математика и компьютерные науки).
- Математический анализ
- Линейная алгебра и аналитическая геометрия
- Дискретная математика
- Теория вероятностей и математическая статистика
- Основы программирования
- Теория автоматического управления
- Математическая логика и теория автоматов
- Объектно-ориентированное программирование
- Архитектура компьютерных систем
- Архитектура суперкомпьютеров
- Параллельное программирование
- Методы оптимизации
- Методы проектирования информационных систем
- Теоретические основы баз данных
- Сети и телекоммуникации компьютерных систем
- Методы разработки компиляторов
- Английский язык
Как вы могли заметить программа ещё более ориентирована на математический аппарат. Здесь много теории, а также низкоуровневых вещей, таких как разработка компиляторов, программирование на суперкомпьютерах, применение математических навыков в программировании. Если ПМИ это программирование, где помогает математика, то МКН это больше наполовину математики и программирования. Теоретические основы и узкоспециальные дисциплины делают отличного специалиста, но подойдет эта программа не каждому.
Проходные баллы 2017 и 2018 ЕГЭ на бюджет (2017/2018/Максимально):
СПБГУ – XXX/273/310 (+ИД)
СПБПУ – 251/246/310 (+ИД)
Абсолютно точно эта программа идёт в список “научных”. Главное не бойтесь слова “научная”, потому что я не просто так взял в скобки это слово.
ФИИТ (02.03.02)
ФИИТ — фундаментальная информатика и информационные технологии.
- Математический анализ
- Дифференциальные уравнения
- Алгебра
- Функциональный анализ
- Дискретная математика
- Теория вероятностей и математическая статистика
- Алгоритмы и структуры данных
- Архитектура компьютерных систем
- Вычислительная математика
- Основы программирования
- Компьютерные сети
- Операционные системы
- Теория автоматов и формальных языков
- Проектирование программных систем
- Параллельное программирование
- Трансляция языков программирования
- Программирование на C++ (вынесено в отдельную дисциплину)
- Введение в программную инженерию
- XML, UML
- Интеллектуальные системы (введение в машинное обучение, обработка языка и т.д.)
- Базы данных
- Английский язык
Здесь дан большой курс информатики в различных направлениях. Очень большой набор предметов, самая что есть теоретическая информатика. Не обошлось, конечно, и без математического курса. Программа похожа на МКН, но отличается своей вариативностью и более широким набором дисциплин, но в тоже время не даёт точно понять кого именно выпускает. С таким набором можно также изучить любую область программирования, но скорее всего придется потратить еще немного времени.
P.S. Напоминает сборную солянку, понравится тем, кто еще точно не понял что ему нужно от мира программирования.
Проходные баллы 2017 и 2018 ЕГЭ на бюджет (2017/2018/Максимально):
СПбГУ – 267/264/310 (+ИД)
СПбПУ – 258/254/310 (+ИД)
Программу отнесём к “научным”, здесь много теоретической и практической информатики, а также “джентльменский” набор математических дисциплин.
И вот мы уже подошли к специальностям, код которых начинается с цифры 9. Итак, встречайте, первый участник — ИВТ.
ИВТ (09.03.01)
Информатика и вычислительная техника.
- Физика (часто много)
- Информатика/Введение в программирование
- Линейная алгебра
- Аналитическая геометрия
- Вычислительная математика
- Теория вероятностей и математическая статистика
- Дискретная математика
- Алгоритмы и структуры данных
- Вычислительная техника
- Схемотехника, электротехника
- Транслирующие системы
- Языки системного программирования
- Основы распределенных вычислений
- Встроенные системы
- Операционные системы
- Организация ЭВМ и систем
- Теория автоматов
- Английский язык
Что мы видим? Здесь довольно мало дисциплин по программированию, если и есть то, в основном, это языки ассемблера. На этой специальности идёт подготовка инженеров и “низкоуровневых” программистов. Программирование микрочипов, написание кода операционных систем, создание своих систем вычислений, разработка команд процессора и пр.
в некоторых университетах требуется сдавать физику вместо информатики
Проходные баллы 2017 и 2018 ЕГЭ на бюджет (2017/2018/Максимально):
МФТИ – 389/410 (+ИД, +физика)
НИУ ВШЭ – 257/263/310 (+ИД)
МГТУ им. Баумана – 275/278/310 (+ИД)
ИТМО – 272/272/310 (+ИД)
СПбПУ – 255/249/310 (+ИД)
Довольно сложно четко отнести эту специальность к “научным” или “софтовым”. Она как бы стоит особняком. Однако, при должном уровне подготовки выходит грамотный специалист не только со знанием схемотехники и языков ассемблера, но и уверенным владением физических дисциплин, что само по себе непросто и позволяет отнести эту специальность к “научным”.
Настала очередь прикладной информатики.
ПИнф (09.03.03)
ПИнф — прикладная информатика.
- Правовые основы интеллектуальной собственности
- Проектная документация
- Экономика
- Экономика предприятия
- Моделирование бизнес-процессов
- Корпоративные системы документооборота
- UML
- Проектирование информационных систем
- Бухгалтерский учет
- Финансовый менеджмент
- Математика
- Дискретная математика
- Финансовая математика
- Информатика
- Теория вероятностей
- Вычислительная математика
- Программная инженерия
- Управление данными
- Базы данных
- Программирование
- Алгоритмы и структуры данных
- Веб-программирование
- Английский язык
Вопреки ожиданиям многих людей именно эта программа ориентирована на подготовку менеджеров программного продукта, управленцев в области информационных технологий и приобретение навыков ведения деловых переписок. Нужно открыть своё дело, оформить документы? Как раз выпускник этой специальности поможет вам в этом.
Проходные баллы 2017 и 2018 ЕГЭ на бюджет (2017/2018/Максимально):
МГТУ им. Баумана – 272/274/310 (+ИД)
ИТМО – 285/282/310 (+ИД)
Специальность “софтовая”, т.к. даны базовые навыки программирования, но бoльшая часть времени отведена изучению экономики, управления и прочих смежных областей.
P.S. Не в обиду: часто можно увидеть картину, когда выпускник “прикладной информатики” не умел программировать вообще (к счастью, это от него и не требуется).
Подойдем к финальной стадии — программная инженерия.
ПИ (09.03.04)
ПИ — программная инженерия.
- Математический анализ
- Алгебра
- Дискретная математика
- Теория вероятностей и математическая статистика
- Введение в программную инженерию
- Экономика программной инженерии
- Управление программными проектами
- Интеллектуальное право
- Разработка и анализ требований
- Основы программирования
- Объектно-ориентированное программирование
- Алгоритмы и структуры данных
- Операционные системы
- Архитектура компьютерных систем
- Базы данных
- Программирование интернет-приложений
- Тестирование программного обеспечения
- Английский язык
Вариативные дисциплины: - Параллельное программирование
- Системное программирование
- Основы моделирования систем
- Функциональное программирование
- Разработка игр
- Анализ данных
- Компьютерная графика
- Нейросетевые технологии
- Mathlab
- Разработка блокчейн приложений
- Облачные технологии
- Мобильная(Android / iOS) — разработка приложений
Вы знаете, даже для меня программа специальности "программная инженерия" стала неожиданностью в том смысле, что ранее я сравнивал её с ПМИ, однако, при написании статьи и детальном изучении будет правильнее говорить о сравнении по крайней мере не только с ПМИ, но и с ПИнф. По сравнению с прикладной информатикой здесь меньше экономических и около экономических дисциплин. Также здесь широкий выбор направлений для программирования. Здесь есть всё, начиная от ассемблера, заканчивая разработкой интерфейсов. Набор математических дисциплин здесь представлен в меньшем объёме, нежели у ПМИ. Однако, это не означает, что вы не сможете заниматься машинным обучением, анализом данных и стать data scientist, это значит лишь то, что времени программы этому уделено меньше и вам скорее всего придётся покапать самому больше, чем студенту/выпускнику с ПМИ. Является по праву второй по популярности специальностью обучения среди абитуриентов.
Проходные баллы 2017 и 2018 ЕГЭ на бюджет (2017/2018/Максимально):
НИУ ВШЭ – 296/296/310 (+ИД)
МГТУ им. Баумана – 275/287/310 (+ИД)
ИТМО – 282/284/310 (+ИД)
СПБГУ – 282/281/310 (+ИД)
СПБПУ – 259/262/310 (+ИД)
Программа также как и ПИнф является "софтовой", что является отличным путём для тех, кто не хочет сильно париться с математикой как в случае с ПМИ, но побыстрее начать писать свои приложения.
Почитать на Хабре про программы: Яндекс, нужна ли математика программисту, ИТМО-2017, в целом про специальности (задизлайкано), хорошая, но довольно старая статья, про рынок IT в России
UPD: Некоторые думают, что здесь идёт агитация против самообразования. Это не так!Самообразование – важная составляющая становления профессионала. Оно должно дополнять. Потреблять исключительно вузовскую программу нельзя.
В настоящий момент это не единственные специальности по подготовке. Например, МФТИ в этом году открыл направление "Computer Sceince", но будет только первый набор и программа на английском языке. Ещё в ВШЭ есть ПАД, о котором упоминалось раньше, но обучение там только на английском и только платно.
Теперь я хотел бы сказать о том, почему я не рассматривал другие ВУЗы или другие города.
Во-первых я не хотел распыляться и взял только самые "топовые" университеты в Москве и Петербурге. К слову сказать, например, в Новосибирске есть замечательный НГУ (Новосибирский государственный университет), но там он чуть ли не единственный и понятное дело абитуриентам близлежащих городов следует поступать туда. Во-вторых я не вижу смысла рассматривать программу непрофильных вузов или вузов сильно ниже в рейтинге университетов, потому что они не показательные и стараются копировать программу "сильных" университетов.
P.S. Есть такая присказка, кстати:
Если вуз не может сделать себе нормальный сайт, то в такой вуз лучше не идти.
Самая большая проблема выбора состоит в том, что необходимо набрать почти максимальное количество баллов за ЕГЭ (или за внутренние экзамены, которые переводятся в 300/400 балльную шкалу) ради возможности поступить туда, куда хочешь, а не куда можешь.
Возьмём, к примеру, МГУ, МФТИ и НИУ ВШЭ. Сейчас это самые популярные ВУЗы в Москве и обладающие высокими позициями в международных рейтингах (относительно других Российских университетов). Но и конкурс соответствующий. Без должной подготовки попасть туда сложно.
Однако, за ваши деньги как говорится (я сейчас абсолютно серьезно. проходной балл на платное неприлично маленький)...
Я бы хотел представить вам несколько интервью с людьми, которые связали свою жизнь с IT
UPD: Интересно узнать как мнение состоявшегося специалиста, так и студента.
Встречайте –
Я Иван Саенко, студент ВМК МГУ.
Средняя школа
Расскажи немного о себе, где жил, где учился(лицей, гимназия и тд), что больше всего нравилось?
Жил до поступления в городе Таганроге в Ростовской области, учился в школах, крутых на городском уровне, но не более. Интересовался историей и географией, в полную силу заниматься точными науками начал с 10 класса, когда поступил в ЗФТШ МФТИ, и все завертелось...
Участвовал в олимпиадах? Какие успехи были?
Да, участвовал во многих олимпиадах по математике и программированию, к сожалению, в призовые места на олимпиадах в выпускной год не попал (два раза не хватило ровно одного балла), поэтому поступать пришлось по ЕГЭ. Но в 9 классе взял на региональном этапе и по географии, и по истории призера (по географии не хватило до всеросса совсем чуть-чуть).
Какие были оценки?
В школе всегда были все пятерки, благо учителя давали мне большую свободу действий для подготовки к олимпиадам и вообще повышения своего уровня, так что учиться в вузе безусловно стало легче.
Учился в профильном классе?
Да, но уверен, что по сравнению с московскими школами наш был на уровне обычного непрофильного) Было по 6 часов математики и физики + 4 часа информатики
Насколько сложно было учиться?
Не очень сложно, учитывая выше указанное:)
Сдавал ЕГЭ? Если да, то какие предметы и какой суммарный балл?
Сдавал русский, математику, информатику, физику: 96+84+84+71, и также дополнительный экзамен в МГУ по математике на 80/100
Куда решил поступать? Рассматривал зарубежные ВУЗы?
Решил поступать на ВМК МГУ, как наилучший из имеющихся вариантов (до ФИВТ МФТИ не хватило баллов (на олимпиадах, кхм-кхм)), но ни тогда, ни сейчас не жалею об этом. Нет, на иностранные вузы даже не смотрел от слова совсем.
На каком ты факультете, какая у тебя специальность?
Прикладная математика и информатика на ВМК МГУ
Тебе нравится учиться? Сложно ли? Много ли нового ты узнал?
*Да, нравится. Я получил, что хотел – хорошую математическую подготовку, сейчас распределился на кафедру ММП (математических методов прогнозирования) – пойду в data science по стопам великих:) Из первых четырех семестров самый крутой курс по программированию был на третьем: курс операционных систем (на Си под Linux) – видно, что он современнее, чем остальные.
Да, было действительно сложно, особенно во время сессии. К сожалению, на экзамене на большинстве предметов работа в семестре не учитывается почти никак (если по этому же предмету у вас был зачет, например, то сдал ты зачет автоматом или зачета у тебя нет – все равно). Очень многое зависит от семинариста (так как переводиться между ними нельзя, кроме случаев, когда саму группу ведут два семинариста, как на программистских курсах).
Последний вопрос даже странный немного – конечно же, да.*
Принимаешь участие в хакатонах/соревнованиях/олимпиадах?
К сожалению, на первых двух курсах лично у меня на это времени не хватало (хотя немало моих одногруппников вполне себе успевали)
Расскажи немного о том, как принимал решение о выборе, на что обращал внимание?
На самом деле первоначальных критериев было немного — не севернее Москвы (мне было бы очень грустно привыкать к питерской погоде), высокий уровень сокурсников (очевидно) и высокий уровень преподавания. В итоге получился именно такой вариант. К слову, я на самом деле знал много меньше того, что должен был знать и мне, можно сказать, довольно повезло, что внезапно (нет) появившиеся минусы не заслонили мне плюсы.
Помогли ли тебе знания, полученные в школе при поступлении?
Да, я считаю, что моя школа задачу по подготовке к экзаменам меня на своем уровне выполнила, и нужные знания для этого дала. А то, что этого может не хватить для плавного старта при обучении в крутом месте — это уже другая, более широкая проблема (мое мнение таково, что массовая школа и не способна забраться на самый верх — абитуриент сам должен озаботиться тем, за счет чего он поступит в МФТИ/МГУ/ИТМО/СПБГУ/etc. и за счет чего он там будет учиться)
Может что-то расскажешь про студенческую жизнь?
В МГУ можно заниматься почти чем угодно – так как студентов очень много (около 40 тысяч человек), то единомышленники найдутся точно. Например, есть больше 40 спортивных кружков. Также на факультетах можно заниматься чем-то еще, кроме учебы, если интересно – студсовет и профком с ежегодной школой актива ждут вас.
Расскажи в целом об учебе в ВУЗе, понравилось ли, посоветовал ли поступать?
*Самый интересный вопрос. Как понятно по другим моим ответам, мне, конечно, понравилось. На хабре точно было минимум два поста про первый курс ВМК, и уверяю – не поменялось почти ничего (не считая того, что добавили абсолютно бесполезный русский, который выполняет единственную функцию – отнимает время. Лень рассказывать про влияние проректоров, пропихивающих свои предметы в программу, к счастью, у нас такой неадекват на русском и заканчивается.
Да, программа младших курсов (в отличие от старших, проходящих на кафедрах, которые, конечно, заинтересованы в своих студентах и могут добавлять/убирать/изменять курсы очень быстро) не меняется. Конечно, матан с линалом убирать глупо и бессмысленно, но я уверен, что два семестра физики можно заменить на что-нибудь ближе к дискретному анализу или матлогике. Но есть нюанс – немало кафедр у нас связаны с физикой (не есть что-то плохое – вот, у Samsung есть лаборатория на нашей кафедре математической физики), и похоже, что люди, ответственные за учебный план, уверены, что физика нам нужна. Короче, еще один дискуссионный вопрос.
Главное преимущество ВМК перед другими аналогичными факультетами – это разнообразные кафедры ( https://cs.msu.ru/departments ) – скорее всего, вы найдете себе занятие по душе. Но чтобы попасть на популярную кафедру, обычно нужен хороший средний балл зачетки, поэтому за него на первых семестрах стоит биться.
Мне сложно сказать, стоит ли конкретному человеку поступать на ВМК. Очень хорошо, если вы уже представляете себе, чем будете заниматься- тогда надо сравнить конкретно ваше направление на разных факультетах, посмотреть на конкретную работу людей по этой специальности (то есть, к примеру – направление компьютерной безопасности у нас лучше, чем у конкурентов (можете с Bushwhackers пообщаться), а за дискретной математикой лучше идти на ФИВТ). Если такого представления нет, конечно, выбор будет гораздо труднее.*
Немного о работе.
Ты сейчас параллельно работаешь?
Нет, начать работать планирую не раньше 4 курса.
И, напоследок, хотел бы узнать твоё мнение насчёт распространённых вопросов.
Как считаешь: важно ли знать структуры данных и алгоритмы их обработки?
Тут, наверно, многие ответят — да, конечно, очень важно (я тоже так хотел сначала отписать и перейти к следующему вопросу); мне кажется, зависит от сферы приложения знаний. Когда-то на хабре вывесили "теормин", который якобы должен знать каждый программист. Там было ну очень много всего вплоть до химии кремния, и мое мнение — каждый должен лучше знать то, что нужно для его конкретной специальности.
Какой совет можешь дать абитуриентам?
Абитуриентам нужно заботиться о двух вещах — об обеспечении поступления (олимпиады, хорошее ЕГЭ) и о месте поступления. Думаю, мои советы по первому поводу будут не очень актуальны, а по второму — очень хочется пожелать каждому отречься от любой рекламы и адекватно, вдумчиво рассмотреть все варианты — посмотреть учебный план, кафедры желаемого факультета; поспрашивать студентов о важных проблемах (хоть кто-нибудь, да расскажет и поможет сравнить минусы и плюсы). А если честно — все топовые места в нашей сфере очень близки друг к другу, и выбирать надо из своих (шкурных) желаний и интересов.
Проходил ли дополнительные курсы, очные занятия?
Занимался несколько лет оффлайн с преподавателями по математике, физике и русскому, они мне сильно помогли при поступлении, спасибо им большое – без них мне, конечно, было бы гораздо тяжелее.
Спасибо за интервью!
Сначала затронем тему средней школы.
Расскажи немного о себе, где жил, где учился(лицей, гимназия и тд), что больше всего нравилось?
Жил в Санкт-Петербурге, учился в школах 104 (1-й класс), 653(со 2-го по 7-й классы), 664 (лицей восточной культуры на тот момент, с 8-го по 11-й классы). Учиться точно не нравилось, нравилось играть в компьютер. Оттуда кстати базовое знание компьютера, так как раньше поставить и настроить игрушку было в разы сложнее.
Участвовал в олимпиадах? Какие успехи были?
1 раз по русскому и 1 раз по информатике, обе с треском провалил :)
Куда дальше поступил(лицей, колледж)?
Дальше продолжил учиться в школе.
Старшая школа:
Учился в профильном классе?
Нет.
Насколько сложно было учиться?
Да ничего необычного. В среднем учился на 4.
Куда решил поступать? Рассматривал зарубежные ВУЗы?
В СПбПУ (на тот момент СПбГТУ, он же Политех). Зарубежные не рассматривал.
А теперь расскажи про свой ВУЗ...
Где учился?
Собственно, там, куда и собирался – Политех :)
Расскажи немного о том, как принимал решение о выборе, на что обращал внимание?
Да случайно попал практически. У друга был дядя на факультете радиофизики, сходили на день открытых дверей (после 10 класса). Решил, что на РФФ не хочу и пошел на подготовительные курсы на Факультет Технической Кибернетики (наивный, думал меня там программированию научат). Т.е. по сути ткнул пальцем наугад.
Помогли ли тебе знания, полученные в школе при поступлении?
Не особо, больше помогли знания с подготовительных курсов. Но сейчас смысла нет, ибо ЕГЭ. Тогда еще в каждом универе были свои экзамены.
На каком ты факультете, какая у тебя специальность?
Факультет Технической Кибернетики, кафедра измерительной техники и технологии, направление приборостроение.
Тебе сложно было/сейчас учиться? Много ли нового ты узнал?
Учиться нормально было, выгнать не пытались. Узнал много.
Принимал ли участие в хакатонах?
Какие там хакатоны в начале 2000-х, тогда еще даже про смузи и коворкинги не слышали :)
Может что-то расскажешь про студенческую жизнь?
Да, было веселое время :)
Расскажи в целом об учебе в ВУЗе, понравилось ли, посоветовал бы поступать?
Да кто ж его знает, я там уже 11 лет не был. Все могло поменяться. Не думайте, что в ВУЗе вас всему научат. В лучшем случае вас научат учиться и дадут какую-то базу, а дальше все сами.
Работа:
Ты сейчас работаешь? Если не секрет, то где и как долго?
Да, работаю. В Booking.com. Вот только недавно переехал. До этого 3 года на Кипре работал.
Помогли ли тебе полученные в вузе знания на практике, полученные на олимпиадах/хакатонах?
В основном нет. Помогло то, что выучил сам. Если считать онлайн соревнования по программированию за олимпиады, то они помогли.
При трудоустройстве что помогло, на что обращали внимание?
Общее знание Computer Science, знание необходимое по специальности (Android разработчик), умение понимать потребности бизнеса.
Другое:
Как считаешь: важно ли знать структуры данных и алгоритмы их обработки?
Да, важно. Хотя бы по минимуму.
Проходил ли дополнительные курсы, очные занятия?
Подготовительные курсы при поступлении. Остальное или онлайн курсы, или сам.
Спасибо, Александр!
Расскажи немного о себе, где жил, где учился(лицей, гимназия и тд), что больше всего нравилось?
Жил и учился в Москве, сменил две школы: первая была близко к дому, а вторая хорошая. Больше всего любил математику, хотя даваться она мне начала только классе в девятом.
Участвовал в олимпиадах? Какие успехи были?
Вообще не олимпиадник, один раз пробился на городской тур по математике и в итоге его прогулял, чем вызвал расстройство своего преподавателя. Простите, Марина Викторовна.
Какие были оценки?
Закончил школу с тремя четвёрками, но по факту все гуманитарное прошло совершенно мимо меня.
Куда дальше поступил(лицей, колледж)
зам. автора: остался в школе
Старшая школа:
Учился в профильном классе?
Да, в математическом.
Насколько сложно было учиться?
Не слишком сложно, в миллион кружков не ходил, иногда прогуливал. В общем, через силу из меня гения не делали)
Сдавал ЕГЭ? Если да, то какие предметы и какой суммарный балл?
Сдавал математику и русский, тогда ЕГЭ только вводили. По математике было 75, что я до сих пор считаю ужасным провалом, а по русскому если бы было на балл меньше, то была бы тройка в школе итоговая. Так что проскочил, но вот сколько именно было — не помню.
Куда решил поступать? Рассматривал зарубежные ВУЗы?
Бауманка, считал ее лучшим техническим вузом страны. Зарубежные не рассматривал.
ВУЗ:
Где учился/учишься?
Закончил Бауманку.
Расскажи немного о том, как принимал решение о выборе, на что обращал внимание?
Справа пошел туда на подготовительные курсы, думал что там смогу куда захочу подготовиться, в итоге решил, что планку понижать нельзя и в саму Бауманку и пошел.
Помогли ли тебе знания, полученные в школе/колледже при поступлении?
Ещё как, математика школьная очень помогла. А вот физику я сдал только благодаря курсам, конечно.
На каком ты факультете, какая у тебя специальность?
Информатика и системы управления, защита информации.
Тебе сложно было/сейчас учиться? Много ли нового ты узнал?
Был раздолбаем, учился с хвостами. Считаю, что вынес 3-5% от того, что нам дали. При этом, думаю, что полезного было процентов десять. Ясно, что вынес только полезное, так что КПД неплохой :)
Принимал ли участие в хакатонах?
Нет.
Может что-то расскажешь про студенческую жизнь?
Очень сильно сформировался характер. Считаю, что больше всего мне дал круг общения и четыре работы, которые я сменил пока учился.
Расскажи в целом об учебе в ВУЗе, понравилось ли, посоветовал бы поступать?
Сейчас многие кто там учиться, говорят, что Бауманка сильна. Мой опыт был скорее негативный, но многое меняется в лучшую сторону. Так что советовать не буду, но и отговаривать тоже. Если смотреть по одногруппникам, то многие добились достойного положения в жизни. В общем, бойцовские качества важнее знаний.
Работа:
Ты сейчас работаешь? Если не секрет, то где и как долго?
3 года в текущей компании, начал как преподаватель, сейчас руковожу отделом, стремлюсь дальше.
Помогли ли тебе полученные в вузе знания на практике, полученные на олимпиадах/хакатонах?
Не помогли.
При трудоустройстве что помогло, на что обращали внимание?
Предыдущий опыт помог и огромное желание работать.
Другое:
Как считаешь: важно ли знать структуры данных и алгоритмы их обработки?
Первое важно. А хитроумные алгоритмы давно вызываются одной командой.
Какой совет можешь дать абитуриентам?
Хороший ВУЗ открывает много дверей, не только знания, но и круг общения и доступ к собеседованиям на ответственные должности. Однако, если есть воля, любую из этих вещей можно получить и иначе.
Проходил ли дополнительные курсы, очные занятия?
Да, при поступлении были курсы а потом и репетитор по физике. Во время обучения в ВУЗе ничего не проходил.
Средняя школа:
Расскажи немного о себе, где жил, где учился(лицей, гимназия и тд), что больше всего нравилось?
Гимназия 1563 в Измайлово.
Участвовал в олимпиадах? Какие успехи были?
Было, но особо не фанател — дальше города не проходил.
Какие были оценки?
Хорошист.
Куда дальше поступил(лицей, колледж)?
Лицей СУНЦ МГУ.
Старшая школа:
Насколько сложно было учиться?
Да.
Сдавал ЕГЭ? Если да, то какие предметы и какой суммарный балл?
На ЕГЭ откровенно забил, почти все было покрыто олимпиадами.
ВУЗ:
Где учился/учишься?
МГУ.
Расскажи немного о том, как принимал решение о выборе, на что обращал внимание?
Профильное образование, активности, в Москве (поэтому не физтех).
Помогли ли тебе знания, полученные в школе/колледже при поступлении?
Да.
На каком ты факультете, какая у тебя специальность?
ВМК.
Тебе сложно было/сейчас учиться? Много ли нового ты узнал?
Смело можно было уходить после 3его курса.
Принимал ли участие в хакатонах?
Нет.
Посоветовал бы поступать?
Средне, зависит от кафедры.
Работа:
Ты сейчас работаешь? Если не секрет, то где и как долго?
Яндекс, почти 2 года.
Какова роль ВУЗа в становлении тебя специалистом?
Дало обширную базу.
Помогли ли полученные знания при трудоустройстве?
Скорее нет, чем да.
Другое:
Как считаешь, стоит ли принимать участие в олимпиадах по программированию и тренироваться в решении задачек?
Совершенно не обязательно.
Как считаешь: важно ли знать структуры данных и алгоритмы их обработки?
Да.
Проходил ли дополнительные курсы, очные занятия?
Да.
Как вы можете видеть судьбы у людей разные, но одно можно выделить точно: каждый, когда понял, что он хочет в этом развиваться, двигался и продолжает развиваться в этом направлении. Это очень важно – никогда не останавливаться. Ну, и напоследок хотел бы предоставить немного инфографики.
Графики построены на данных людей, которые учатся в ВУЗе и/или сейчас работают. (P.S. данные по всем опрошенным доступны здесь: https://docs.google.com/spreadsheets/d/1utkv_GnvsU378ktW-Ztlcjdqb7zp8PCYShEBZOuLyjc/edit?usp=sharing)
Warning!
Хотел бы сразу предупредить несколько моментов:
Данных немного. Скорее всего выборка покажется не слишком информативной, но я хотел дать понимание во-первых важности высшего образования, а во-вторых взаимосвязи ВУЗа, специальности и последующей работы.
Вы можете сами исследовать эти данные и построить все необходимые графики. Самые интересные, по-моему мнению, я поместил в статью.
Если вы найдёте какие-то ошибки или неточности, а может захотите дополнить статистику, то прошу не медлить и сообщать, будем насыщать вместе!
Была допущена колоссальная ошибка в опросе – отсутствие вопроса про уровень владения английским языком. Очень надеюсь, что сообщество Хабра поможет исправить это недоразумение пройдя опрос!
Пройти опрос и помочь статистике можно тут: https://goo.gl/forms/W7DGa1htfFCZlzOD3
UPD: Спасибо, что проходите опрос!
- Самый популярный вид учебного заведения обычная школа "СОШ №xxx"
Также, почти все участники учились на 4 и 5, а любимым предметом были: математика, физика/информатика.
Подавляющее большинство участвовало в олимпиадах. Что, довольно ожидаемо.
Примерно половина участников являются призёрами и победителями олимпиад, в том время как остальные сыскали меньше успеха.
Баллы ЕГЭ.
Участие в хакатонах.
Конечно, большинство убеждены, что структуры данных и алгоритмы их обработки полезный навык.
Связана ли работа с образованием/специальностью участника?
Также отмечу, что большинство учится на бюджете. Специальности разные, но варьируются между 01.03.xx 02.03.xx и 09.03.xx. 17% сказали, что учится сложно. Подавляющее большинство участников также уверены, что алгоритмы либо важнее, либо их скорее важно знать. Можно ещё отметить, что должность (специализация работы) на данной выборке зависит не прямо пропорционально специальности, т.е. студент с ПМИ работает как и специалистом по машинному обучению, так и разработчиком корпоративных систем, мобильных приложений, так и преподавателем.
Насчёт важности диплома я могу сказать следующее: чтобы первый раз устроиться на работу вы должны как-то выделиться, вас должен как-то заметить и HR и технический специалист, который вас собеседует, одним словом – работодатель. Вы не поверите (вероятно), но когда я искал должность младшего разработчика C# все в первую очередь обращали внимание на образование. Т.е. настрой собеседующего сильно зависел от названия услышанного учебного заведения. Лично я заметил это в таких компаниях как: Леруа, Copter Express, МТС, Яндекс (хотя казалось бы, да?), Ланит БиПиЭм, Delta Solutions. Другие маленькие компании так и вовсе не пригласят на личную встречу без подтверждения наличия у вас высшего образования или факта, что вы являетесь студентом 3-го курса. Мне приходилось даже где-то лукавить, чтобы позвали. В итоге я всё же получил заветную работу в одной из этих компаний будучи студентом колледжа. Одно я понял для себя точно: иметь хорошую базу и достойный Вуз за спиной будет только большим плюсом!
Если остались какие-то вопросы, уточнения, то прошу в комментарии, чтобы я смог оперативно ответить.
Комментарии (48)
411
05.01.2019 00:04Честно говоря, я бы не рекомендовал ребёнку или несведующему родителю читать эту статью.
Я не могу дать прям вот идеальных советов для айти образования, но вижу одну огромную ошибку в этом всём: на протяжении где-то 11 лет обучения вы не предлагаете ребёнку (и студенту) хоть как-то понять, чем он на самом деле будет заниматься и какие результаты получать.
Иными словами всё это звучит как «выучи A-Z и тогда ты станешь программистом». Более того, вы советуете постоянно бывать на олимпиадах, а это скорей путь «научника», потому как результаты своей работы ребёнок будет видеть только в виде оценок в тесте. А работа программиста это построение программ, в том числе решением алгоритмически трудных задач, но не только.
На дворе 2019ый, есть масса простых способов сделать простые программы далеко не продвинутым программистам. Ребёнок, увлечённый игрой и понимающий, как сделать простой калькулятор урона, будет с большей радостью впитывать информацию о построении приложений и о математике, чем ребёнок, которого заставляют в 50ый раз считать данные из текстового документа и получить ответ.
Вспомните свою эйфорию от того, что программа запустилась и правильно работает, а теперь помножьте её на эффект увлечённости. Так и получится человек, который хочет в работать в этой сфере. Он будет тратить гораздо больше своего времени на это и получить гораздо лучшие результаты. И для работодателя он будет выглядет не как раздолбай кое-как закончивший айти факультет, а как талантливый и перспективный работник, которого хочется нанять.
И что более важно, что при таком подходе подросток лет 15-17 в своём 9-10 классе сможет понять, а нравится ли ему вообще создавать программы или это скучная штука и надо поискать альтернативы. Я видел много студентов у которых такая возможность возникала только ко 2-3 курсу и было уже поздно что-то менять. Они оставались в айти сфере и находили себе работу не программистом, но будь у них такая возможность на 5 лет раньше, они могли бы сделать более удачный выбор имея гораздо больше времени.
Резюмируя: не в образовательных учреждениях счастье, куда важнее раньше понять, чем хочешь заниматься.kot_mapku3 Автор
05.01.2019 00:26Частично, я разделяю вашу точку зрения, но вот в чём дело:
никто не запрещает учиться программировать на scratch или писать простые странички на html, можно и даже нужно (при наличии интереса) посещать кружки робототехники/программирования, возможно, дополнительные курсы как, например МШП или Юниум.
Когда я писал про среднюю школу, то имел в виду важность математики и физики, но не информатики. У многих есть проблема выбора профессии или непонимания зачем он этим занимается (как вы и описали ситуацию), но очень часто программированием интересуются те, кто играет или просто проводит много времени за компьютером. Странно полагать, что человек не сможет поинтересоваться этой сферой, понять нравится ему или нет. До 9 класса можно делать фактически что угодно, сколь угодно менять сферу, в которой хочешь развиваться и т.д. Да можно и позже (собственно, колледж как вариант это понять).
Также хочу заметить, что в самом начале статьи стоит warning "… для тех, кто хочет связаться с IT...". Ведь у любых других профессий есть такая же проблема. И ещё важно то, что в сильные ВУЗы попадают в большинстве мотивированные абитуриенты.
Я сейчас объясню посыл, возможно, он не такой явный в статье:
Здесь говорится о том, почему образование важно и где его получить, но не о том, что IT это супер круто и каждому надо сюда попасть. Безусловно, школьник сам должен решить в конце концов нужно это ему или нет.
Griboks
05.01.2019 00:16Забыли написать про самую главную и важную ступень: работа.
kot_mapku3 Автор
05.01.2019 00:27Возможно, стоит вынести в отдельное исследование/статью?
На самом деле, там и про магистратуру нет, да и про аспирантуру… Это же всё дополняемо, нужны только данные, интервью и т.д.
edogs
05.01.2019 03:17Понятно что статья «только для россии», но все же, если идешь на «программиста», то глупо не рассматривать возможность работы и/или обучения за рубежом пусть даже после обучения в россии.
А в этом разрезе крайне важно то, что не от всех вузов и не по всем специальностям российский диплом будет признан за рубежом.
В результате можно отучиться 5 лет мечтая поехать в кремниевую долину работать или в мит поучить магистра, а потом на собеседовании узнать, что с точки зрения визового офицера или западного универа у тебя неоконченное среднее, а не магистрская степень. Поверьте — это очень, очень обидно.
vasyan
диплом потом купить экстерном
К сожалению, это фантазии. Дипломов «экстерном» не купить, более того, экстернат как таковой вообще прикрыли. У нас достаточное количество знакомых готовых отвалить вполне такую ощутимую сумму за настоящий диплом (с проводкой, а не просто бумажку) ничего не смогли найти, хотя искали активно.Matshishkapeu
05.01.2019 18:03>> К сожалению, это фантазии. Дипломов «экстерном» не купить
Лет 10 назад примерно по такой схеме работало в массе заочное образование. Это было прибежище женщин в декрете и мужиков часто поставленных госконторами перед выбором — диплом хоть откуда или непрохождение следующей атестации (справка о том что человек обучается — спасала ситуацию до получений диплома). Многие из обучающихся прямо говорили, что весь процесс есть для них ни что иное, как покупка диплома в рассрочку. Система выглядела настолько испохабленной, что едва ли за 10 лет многое изменилось.vasyan
05.01.2019 20:18Да я об этом же явлении и говорю. У меня знакомые просто нанимали людей, которые курсачи писали и лабы делали, чтобы одиозным старичкам-боровичкам сдавать. А сами в это время работали.
edogs
06.01.2019 01:10Заочка это скорее покупка диплома с негарантированной (правила могут изменится пока учишься) затянутой (дольше чем очка) отложенной (диплом-то еще когда будет) доставкой.
Как покупка диплома когда он нужен «прямо сейчас» (или в крайнем случае в течении года) это не вариант. А на самом деле зря, т.к. человек может по специальности 20 лет уже работает, мог бы подтянув недостающие знания экстерном сдать все за год, а низзя, изволь оттарабанить 4 года минимум.
kloppspb
05.01.2019 07:27Я бы хотел представить вам несколько интервью с людьми связанными с IT
А кто все эти люди?kot_mapku3 Автор
05.01.2019 09:35Ну как, люди, которые получают или получили степень бакалавра/специалиста и уже работают в довольно крупных компаниях.
kloppspb
06.01.2019 02:12Угу. Я знаю, но вам не скажу.
Стандартные отмазки «почему не скажу» прилагаются.
sshikov
05.01.2019 14:30>Первое на что смотрит работодатель впервые – диплом.
На самом деле — нет.
А точнее так — если это HR, то он наверное смотрит на диплом, но это реально последнее, на что смотрит технический специалист на техническом интервью. Так что он может конечно иметь значения — но только если больше смотреть вообще не на что. Если же у человека есть хоть какой-то практический опыт — то он перевесит диплом в большинстве случаев.
Это чисто практический взгляд, если что. И когда меня интервьюировали, и когда я сам кого-то — никогда никто не интересовался дипломом (хотя в резюме конечно записано, что он есть).
vvd10
05.01.2019 15:16Само по себе решение связать свою жизнь с IT ранее 9 класса довольно странное. Да даже 9 класс довольно рано, чтобы так зацикливаться. Пока человек находится в неком заблуждении по выбранного пути он может пропустить своё истинное призвание.
А в остальном тут нечего обсуждать даже «Учись и будь хорошим мальчиком»kot_mapku3 Автор
05.01.2019 15:17Просто если человек вдруг точно решил(как, например, было у меня), то почему бы не сказать, что для него важно в ближайшем будущем. Если не знает и даже не думает об этом – ну и ладно, никто не заставляет в 9 классе выбирать прямо срочно.
i360u
05.01.2019 16:38+1Был у меня приятель — художник. Окончил престижную школу живописи, в которой его круто натаскали на академические подходы и технику. Но все его картины не вызывали во мне буквально никаких эмоций — это было чистой воды ремесленничество. И есть у меня знакомый иллюстратор-самоучка, который парой небрежных штрихов создает образы бездонной глубины. Он нигде не учился. Также и с программированием: есть огромная армия средних разработчиков, с дипломами и без. Они просто создают некий серый шум, средний по больнице. Их работа порой бывает очень важна, но никто ничего не потерял бы, если заменил бы любого из них кем-то другим. А есть люди, для которых программирование — это страсть. У которых есть амбиции. Которые хотят что-то доказать себе и всему миру. И абсолютно не важно, как они докатились до жизни такой и какие именно задачи решают — они несут свет. Сейчас программирование стало считаться престижным занятием, толпы неофитов хлынули в индустрию и существенно повысили уровень "серого шума". Ярким и талантливым личностям стало проще затеряться во всей этой возне "реакт-разработчиков", к сожалению. Советы из статьи совершенно никак не коррелируют с тем, каким именно разработчиком станет конкретный падаван, но мне ближе романтичный образ рокстар-программиста, способного принести свежие идеи и сделать мир хоть немного лучше. Обычно я отговариваю людей от того, чтобы вставать на этот путь, если ими движет только лишь желание потеплее устроиться. А если это занятие действительно интересно — ничто не помешает изучить все самостоятельно, материалов в сети — предостаточно.
kot_mapku3 Автор
05.01.2019 18:08Ну вы же в курсе, что Сергей Брин закончил Мэрилендский университет, затем получил магистра в Стэнфорде, а ещё Ричард Столман закончил Гарвард и затем работал в MIT, Эрик Реймонд закончил университет Пенсильвании. Примеров масса (их, собственно подавляющее большинство).
Выше я уже отвечал на комментарий, что посыл статьи в том, что если ты хочешь, то вот мол так и так, есть такие специальности и такие предметы, но я не призываю во что бы то ни стало попасть в IT только потому, что, как вы сказали, можно «потеплее устроиться».i360u
05.01.2019 20:07Путь программиста — это череда разочарований и озарений, это бессонные ночи проведенные над мануалами и кодом, это попытки сделать что-то, чего еще никто не делал и попытки сделать что-то, что сделано уже тысячи раз, но лучше. "Специальности" и "предметы" — это мишура. Она никак не определяет то, станете ли вы ниндзей или останетесь посредственностью. Зачастую образование только убивает в человеке способность нестандартно мыслить. Я знаю достаточное количество людей, увешанных дипломами, у которых при этом в голове кирпич вместо мозгов. То, о чем вы пишите — это всего-лишь один из путей, со своими достоинствами и недостатками. Не всем он нужен, не для всех подходит. Он далеко не оптимален. Ваш пример с американскими универами не показателен: в то время обучение в престижном вузе просто было фактором, позволяющим получить доступ к железу и передовой, на тот момент, тусовке. Сейчас почти все ключевые курсы можно послушать онлайн, и компы перестали быть экзотикой.
kot_mapku3 Автор
05.01.2019 20:21Если человек такой крутой как вы описываете, то скорее всего он даже не прочитает эту статью или посмеётся, но не более.
Я знаю достаточное количество людей, увешанных дипломами, у которых при этом в голове кирпич вместо мозгов.
Почему все вечно забывают что это за дипломы? Их может быть уйма и разных, но для того и существуют как минимум принятые сообществом стандарты и диплом ООО «Рога и Копыта» ничего не будет значить.
позволяющим получить доступ к железу и передовой, на тот момент, тусовке
Так, а сейчас есть суперкомпьютеры, учёные CS, это как раз шанс поработать вместе, использовать передовое оборудование.
Зачастую образование только убивает в человеке способность нестандартно мыслить
Возможно. Но у многих не убило.Merkat0r
06.01.2019 06:00диплом ООО «Рога и Копыта»
Да каэшн :))
В моем личном топе — бауманка и МАИ — прям рассадники сверхдолбобечикоф.
Причем, таких прям ооооочень самоуверенных.
nikbond
05.01.2019 18:28+1У меня мнение таково, что программирование — это ремесло, а значит путь программиста ничем не отличается от пути кузнеца. Если ты хочешь научиться ковать подковы — то надо взять в одну руку молоток, в другую железяку, и учиться ковать подковы. Итеративно. Естественно, с ментором за спиной, который будет за тобой-подмастерьем направлять и исправлять.
Стать кузнецом, отсидев 5 лет в аудитории и слушая людей, за всю жизнь ни одной подковы не выковавших — невозможно. Берите и куйте.
UPD: Самое важное(и почти единственное полезное), что можно найти в университете — это комьюнити и социальные связи.kot_mapku3 Автор
05.01.2019 18:44У меня мнение таково, что программирование — это ремесло, а значит путь программиста ничем не отличается от пути кузнеца.
Разве это путь ремесленника? Тут опять же, смотря что делаешь – уникальный парадный экземпляр кирасы или стандартные армейские доспехи. На вид одно и тоже, а на деле требуют разных навыков и подходов.
Естественно, с ментором за спиной, который будет за тобой-подмастерьем направлять и исправлять.
Не так просто найти ментора и как раз универ решает эту проблему комплексно.
Стать кузнецом, отсидев 5 лет в аудитории и слушая людей, за всю жизнь ни одной подковы не выковавших — невозможно. Берите и куйте.
Ну, во-первых сейчас 4 года, а во-вторых вам никто не запрещает закреплять теорию практикой.nikbond
05.01.2019 19:24Тут опять же, смотря что делаешь
Ну начинать придеться в любом случае с подковы. А потом куда душа ляжет. И в любом случае сначала нужно брать и ковать.
Не так просто найти ментора и как раз универ решает эту проблему комплексно.
Универ(постсоветского образца) не решает, универ дает доступ к локальному студенческому айти-сообществу, в котором действительно можно отыскать себе ментора, единомышленников для со-учебы, и т.д. Это, конечно, плюс. Но, во-первых, это язык не поворачивается назвать «комплексным решением проблемы», а во-вторых, менторов-энтузиастов за пределами университетов достаточно много, глобальное айтишное комьюнити очень открытое и дружелюбное.
Ну, во-первых сейчас 4 года, а во-вторых вам никто не запрещает закреплять теорию практикой.
Если бы речь шла о дихотомии теория-практика, то да. Но нет. Речь идет об огромном количестве бесполезной, нерелевантной либо безнадежно устаревшей информации, которая связи с практикой не имеет. В условиях дефицита ресурсов (времени и денег) — это не то что неполезно, это вредно.kot_mapku3 Автор
05.01.2019 20:04Почему вы считаете, что информация нерелевантная/устаревшая/бесполезная?
vasyan
05.01.2019 21:07Я не очень согласен с автором. Брать и ковать, безусловно надо. Но хорошо бы знать про свойства материалов. Хороший пример про ковку вот здесь:
youtu.be/c-ky7xKXRJk?t=564
Другое дело, что (я основываюсь на моей практике и практике моих знакомых), в универах ты приходишь учиться ковать, а тебя учат чему-то отстраненному. Кстати, именно ради соответствия запросам индустрии Яндекс запустили свою школу, а MIT отказался от Scheme в пользу Python.
lotse8
05.01.2019 21:51Языки программирования приходят и уходят, а математика вечна. Если знаешь базовые принципы строительства домов, то всегда построишь приличный дом из любых материалов и любыми инструментами. ЯП тоже обязательно учить нужно, я это совсем не отрицаю, но не надо давать им приоритет 1.
Laryx
06.01.2019 16:34ВУЗ — это в первую очередь, «корочка». Сейчас — обязательное условие практически на любом месте. Знания, умения, навыки — глубоко вторичны, если они вобще имеют значение. Если повезет попасть на «теплое» место — за простейшие поделки типа «автоматический капс» будешь получать сотни тысяч премии. А не повезет — за работы, которым весь Хабр подивится — будешь получать 15тр в месяц.
vasyan
Диплом нужен в трёх случаях:
1. Подать на рабочую визу.
2. Получить первую работу.
3. Работать в госсекторе.
Соответственно, если первая работа сама идёт в руки, а в вузе 3 года матана вместо CS, то на вуз можно забить, а диплом потом купить экстерном. И спокойно идти изучать программирование на практике. Универы в большинстве своём «учат думать», те сдавать всякую муть одиозным преподам. За это время можно пройти кучу онлайн-курсов на Coursera.
Главное помните, что говорил Джопс: время — самое ценное, что у вас есть.
Хотите тратить его на военку, физру и философию — пожалуйста.
kot_mapku3 Автор
Вы правы насчёт трех пунктов. Но опять же, посыл статьи в том, что качественные программы есть и они дают качественные практические навыки. Можно, в принципе, всё пройти на coursera, но что-то мне думается пока это не полноценная замена, а тот самый матан учить самому раз в 10 сложнее, нежели в универе (компании таких же студентов, готовых помочь друг другу, преподов дозированно дающих материал и т.д.).
Курсы, кстати, можно проходить параллельно. А на военку никто и не обязывает ходить. Есть полулайфхак, если интересно-распишу.
vasyan
Не, для меня универ в прошлом. Сейчас вспоминаю, как практически бесполезную трату времени. Самое умное, что я сделал в универе, это пошёл на пятом курсе работать, а надо было на третьем.
Если вам повезло с преподавателями и с учебной программой, то я вам завидую. За такие универы надо держаться и впитывать знания. У нас было два годных препода на весь матфак и те были довольно задёрганы.
Так что я бы советовал не смотреть на название вуза, а на отзывы о преподавателях.
На счёт матана, у меня он был три года, нафиг он в таком количестве программисту не нужен. Разве что тяночкам записки на парах писать.
Некоторое время назад я нанимал джунов после универа. Я думал, что если человек закончил универ, то он хотя бы знает, что такое ассоциативный массив и как он может работать. Оказалось, что про ассоциативные массивы люди не знают даже после матфака, что как бы говорит о качестве образования. Что, кстати, очень жалко, потому что люди приходили ко мне с горящими глазами и светлыми головами, и было просто жалко, что универ туда ничего хорошего не положил.
sshikov
>Можно, в принципе, всё пройти на coursera
В принципе, как говорится, можно и штаны через голову надевать. Проблемы многих сегодняшних онлайн-курсов, по большому счету, в том, что там некому задать вопросы.
> тот самый матан учить самому раз в 10 сложнее, нежели в… компании таких же студентов…
И очень сложно, кстати, заранее оценить уровень курса, его соответствие своему начальному уровню, и его полезность на будущее. Я вот смотрю на своих коллег, которые записались на курсы той же coursera, вижу, что за практические задачи они там решают, и понимаю, что ценность этих курсов для меня была бы отрицательной. Но из описания курса это понять практически невозможно. Это и оффлайн курсов касается, конечно же.
CH4
Вы сами кем работаете-то, можно поинтересоваться?
Что Вы изучите на практике?) Или на курсах?) Единицы курсов дают базу, так еще и стоят дай боже.
Тот же матан — ценнейшая вещь, я в свое время не учил — теперь очень туго приходится, в универе в разы проще было бы изучить.
Я уже вижу, как у обычного студента есть куча бабла на нормальные курсы.
Мы в разных вселенных живем.
Потом и выходят недопрограммисты, которые не понимают сложность алгоритмов и пишут 3 вложенных цикла или об ООП только краем уха слышали, а Паттерн для них ругательное слово.
Универ нужен, как дополнение, который дает направление для обучения. Плюс он учит «учиться», что является ключевым скиллом программиста. А вот будет студент ждать или параллельно учится-практиковаться — это уже другой вопрос.
Как мне говорили в универе — есть кодеры, а есть программисты.
Вы предлагаете плодить кодеров как раз, которые не имеют представления об архитектуре программы, методах проектирования и ведения проекта.
Я не говорю про КОНКРЕТНО ВАШ случай, а в общем. Человек без спец.образования тупо не знает, что ему нужно учить и не имеет базы. Он просто будет иметь минимальные знания языка, не более.
vasyan
Синьёр CRUD-девелопер и SPA-говнокодер на Vue. Уже лет 10 программирую и совершенно не понимаю, зачем надо было учить ТФКП, Матан, Механику сплошных сред и прочую муйню.
Пф. Приходишь на собеседования. Там тебя начинают спрашивать. Запоминаешь вопросы, начинаешь гуглить ответы. Профессиональная среда сейчас подскажет что читать лучше, чем любой препод.
Чтобы понять что такое сложность алгоритмов универы не нужны, нам это в школе рассказывали.
В школе у нас была хорошая подготовка к олимпиадам, а в универе нормальных курсов почти не было, мы всё читали в книжках находили в интернете. Учились по чужим исходникам. Потом чему-то менторы на работе учили. Скажем так, когда приходишь на работу, то там тебе быстро объяснят чего надо почитать и подтянуть.
Чему тогда 10 лет в школе учат. Мне кажется, более смешного оправдания бездарным преподам и бесполезным программам придумать сложно.
Я, кстати, не говорю, что универы не нужны. Я говорю, что ценность образования в российских вузах сильно преувеличена, и лучше потратить время на чтение книжек вроде того же GoF, чем на сдачу бесполезных предметов.
kot_mapku3 Автор
Тут из крайности в крайность. Конечно, если работа в основном связана с вебом, то математикой там почти не пахнет. Однако, не берём частные случаи, любительские скрипты, оптимизацию некоторых алгоритмов для какого-нибудь api сервиса, а к примеру, уже упомянутый SPA. Так вот, делать хорошо, плохо или безупречно – зависит от опыта, стремления и почти не зависит от универа, но в том то и дело, что это frontend разработка. У нас вот, например, даже в колледже уже есть ребята, которые работают на уровне junior или имеют свои мини-конторы. Тут кому что, на вкус и цвет как говорится…
vasyan
Я не говорю, что математика не нужна. Для CS нужна своя математика, много дискретки, а не много матана, нужна логика, мат.статистика, например, да куча всяких предметов, которым не учат, либо учат на факультативах, ибо в совковой программе у приматов этого не было, зато была какая-нибудь вычислительная математика, или сопромат (ты же инженер!). И культурология с филофсофией — это же университет!
hexploy
А можно поинтересоваться, какие перед вами стоят задачи для решениях которых нужны знания математического анализа?
Мне за 6+ лет в бекенде (телеком, финансовая сфера, крупный веб) понадобились разве что дискретка, мат. логика и немного мат. статистики.
tyomitch
Именно матан — вряд ли (хотя один мой бывший однокурсник занимается моделированием мышц в MATLAB, и у него там сплошной матан), а вот алгебра и теория групп, второе главное пугало вузовской программы — пригождается регулярно (криптография, 3д-графика, обработка изображений).
Но vasyan прав в том, что за всё время в вузе ни один препод «фундаментальных дисциплин» ни разу не коснулся вопроса, зачем его предмет вообще нужен.
andreyverbin
Математика нужна для решения любой реальной проблемы, для изобретения новых вещей. Хотите изобрести быстрый поиск, масштабируемую бд, прибыльную торговую стратегию, оптимальный расчёт кредитоспособности клиента и т.д. — применяете математику и довольно сложную надо сказать, далеко за пределами вузовского курса. Чтобы сделать очередную учетную систему математика не нужна.
Математика это ещё и язык, на котором люди вынуждены общаться, как только речь заходит о вещах, выходящих за пределы чувственного восприятия. Без него остаётся только применять аналогии и надеяться, что вас поймут правильно. Описать и передать сложные идеи так не выйдет. Нужно будет ждать пока кто-то все опишет формулой, затем в обществе установится определенная интерпретация и затем уже вы сможете ссылаться на сложные вещи с помощью привычных слов нормального языка. Процесс этот занимает десятилетия.
Если математика воспринимается как язык и метод исследования мира, то вместе с ней идёт и умение точно сформулировать свою мысль, умение исследовать проблему в мельчайших деталях. Если же смотреть на неё как на пачку теорем, то толку не будет никакого.
Математика программисту не нужна, она нужна человеку-разумному для исследования и решения сложных проблем. В вузах математику преподают очень плохо, также плохо как и программирование. Нормальных преподавателей почти нет, большинство нормальных предпочитают не работать за нищенскую вузовскую зп.
Пример из практики — многопоточный, неблокирующий отсортированный ассоциативный массив был сделан букавально несколько лет назад. До этого подобной структуры данных просто не существовало. Это больше 2000 строк на Scala, сейчас идёт в JDK под именем ConcurrentSkipList. Невозможно разработать такую вещь не доказав сначала ее свойства и корректность. Bubble sort ещё можно на коленке придумать и реализовать корректно, но такую штуку уже не выйдет, она слишком большая и сложная.
kot_mapku3 Автор
Насчёт того, что математику сейчас плохо преподают не соглашусь. Вообще мат. аппарат считается в России очень сильным. Хотя, возможно так только в топовых вузах, ибо в QS рейтинге, например по математике у нас всего два вуза в топ-100.
hexploy
Эм… А почему на мой комментарий с вопросом о примерах прикладного применения конкретного раздела (математического анализа) вы отвечаете пространным текстом о важности математики?
kot_mapku3 Автор
Первое, что пришло в голову – градиент. habr.com/post/413853
andreyverbin
Из того, с чем разбираюсь или использую прямо сейчас:
— Стохастические дифуры — разработка стратегий для market making.
— Тер. вер и статистика — сбор данных о производительности, оценка производительности, оценка и разработка торговых стратегий.
— Много всякого Computer Science — проектирование ПО, разработка и оценка алгоритмов и структур данных,.
— Абстрактная и линейная алгебра — мои собственные исследования в области проектирования ПО.
Матан для этих областей служит базой, сам по себе не используется.
avost
Пффф. Променять самое весёлое время студенчества и возможности узнать кучу интересных вещей на которые в работе никогда не будет времени на дополнительные пять лет к скукотище лабания crud-формочек в убогой уеб-студии? Чтобы стать аж целым вуй-специалистом? Ну, просто невероятную перспективу вы обрисовали! ;)
Igor_ku
Наверное, стоит согласиться, но только для российского\украинского образования. Бакалавр(Диплом) еще для того нужен, что б можно было получить баклавра в Европе (ну, у кого деньги есть или очень умный — в США). А вот в Европе как раз нет ни физры, ни философии и еще й диплом котируеться!
wrmax
В идеале ВУЗ должен давать и фундаментальные и практические знания. Причем максимально полно, чтобы студент мог выбрать, чем хочет заниматься.
В этом плане крайне странно, когда например кто-то делает свою площадку дублируя ВУЗ (митапы, хакатоны, конференции, обучающие курсы и прочее).
Гораздо логично, если все компании, которым нужны ит-специалисты, начнут развивать профильные ВУЗ-ы и получать хороших специалистов.
kot_mapku3 Автор
Вроде, Яндекс хотел совместно с какой-то компанией сделать ВУЗ. Но почему-то не пошло.