Содержание
Курс Разработчик C++ — онлайн-обучение программированию на языке C++ с нуля в Яндекс Практикуме
Хотел бы поделиться своими наблюдениями о курсе «Разработчик С++». Курс стартовал 4 недели назад, плюс до этого — целый месяц потратил на решение задач бесплатной части курса.
Сразу поясню — команда курса постоянно собирает обратную связь со студентов — сначала путем заполнения анонимных форм, а сейчас — путем конкурса отзывов. За отзыв по теме конкурса была обещана пачка кофе 🙂 А иначе как еще замотивировать и до того загруженных на обычной работе студентов? Под студентами я имею ввиду как реальных студентов (молодежь), так и людей с опытом работы, с детьми, имеющих постоянную работу и кому приходится выделять из своего свободного времени пару часов в день на ознакомление с новой теорией и решение задач. Я больше отношусь ко второй половине, хотя пока и без детей.
Моя работа никак не связана с программированием. По большей части это научные эксперименты, написание статей, руководство научными проектами и научная пракика для студентов и школьников.
Программирование сейчас мне требуется от раза к разу, например, написать программу для обработки научных данных или разработать интерфейс к научному прибору. Все это я делаю на Delphi, тк ему легко было обучиться на примерах из интернета. В определенный момент даже стал думать, что вот в любой момент могу просто взять и устроиться программистом. Там зарплаты высокие, и даже можно из дома работать. Дальше сами знаете — если Идея запала в голову, то она не отстанет. На хабре стал больше интересоваться предложениями о работе, зарплатами, читать истории успешных разработчиков. И понял, что моих интернетных знаний Delphi не хватит, чтобы обеспечить желаемый уровень зарплаты. А что делать? Поступать снова в ВУЗ? Можно, но это время. Бесплатные онлайн курсы? Да, вариант. Не помню как, но вышел на платформу Packt — там сначала дается краткая теория на английском, затем задача. Причем решишь ты или нет задачу — неважно, можно посмотреть ответ и пройти дальше. В конце блока тест с выбором вариантом ответов (a, b, c). На середине третьего блока понял, что топчусь на месте.
Про видеокурсы на ютубе — да познавательно, но это как читать книгу по программированию — пока читаешь — все понимаешь. Начнешь решать реальную задачу, а такого в видео не показывали…
Как вариант был даже взять репетитора, но посмотрев стоимость быстро откинул эту идею.
Теперь собственно отзыв про Яндекс Практикум.
Узнал о курсе из рекламы на Хабре. Дают попробовать пройти вводный курс бесплатно. По итогу прохождения бесплатного блока студент разрабатывает свой поисковый сервер по поиску пропавших животных. Теория дается в забавной форме, в виде комиксов. Зачетная тема была с эффективным менеджером 🙂 После теории сразу идет подкрепление в тренажере. Да, система глючная, немногословная, но пока ты с ней борешься — сильнее погружаешься в код, сверяешься с теорией, перечитываешь задание и когда наконец появляется заветная надпись «Успех» ты аж подпрыгиваешь на месте от радости. И это реально работает. Хочется пройти дальше, а дальше ты не пройдешь пока не решишь текущую задачу. И так как у меня было совсем мало знаний по C++ мне потребовался месяц, чтобы успешно закончить бесплатный курс. По итогу у меня в портфолио появился первый реальный проект.
Про поддержку на бесплатном курсе.
Все что у вас будет, это связь с группой поддержки тренажера. В их компетенции нет задач помочь вам развиваться, давать наводящие подсказки. Там просто говорят: либо да, тренажер сейчас дорабатывается, подождите — исправим, либо присылают ссылку на авторский код задания и ты сам оцениваешь где ты ошибся или что от тебя ожидал тренажер.
В платном курсе такой халявы не будет.
Сначала ты тщательно изучаешь задание, потом пишешь код в тренажере, он проходит или не проходит проверку. Если не проходит — перечитываешь еще раз задание, корректируешь код, жмешь проверить — неудача. И начинается самое интересное. Попросить ответ не получится. Тут так не принято. Но есть наставник. Его задача нас настаивать (направлять). Иногда он дает подсказки, но как-то не очень понятно и в ограниченный промежуток времени (что оговорено). Поэтому есть второй вариант. То что реально помогает — это такие же студенты. Сейчас нас порядка 30 в группе. Есть среда общения и для каждого задания выделяется свой микрочат (Тред). В особо сложных заданиях происходят бурные обсуждения, попытки решить задачу таким или другим способом. И все в итоге решают. Причем никто не выкладывает готовый код. Иначе теряется смысл обучения.
Иногда в заданиях всплывают такие моменты, что в теории о них не упоминалось. Кажется странно, но на этот счет в самом первом вебинаре наставник полчаса нам рассказывал как самостоятельно искать ответы в интернете и как правильно задавать вопросы.
Тяжело ли работать и одновременно учиться? Да, очень тяжело. Первые две недели были самые тяжелые, ничего не успевал на работе, пытаясь скорее придумать решение задачи, вечером вместо привычных соцсетей продолжаешь решать следующие. Сейчас немного отпустило. Стало отчетливее видно, где нужно ускориться, где можно отложить, чтобы нормально работать на основноме месте. При этом, повторюсь, ты не один, если задача сложная — ее решают еще 30 таких же студентов и у части из них возникают такие же вопросы как у тебя, и при совместном обсуждении эти вопросы решаются — проверено.
Как резюме: да, это сложно — получать новые знания, да, это дорого, и это требует много времени, особенно на первом этапе. Но взамен вы получаете: новые знания (связанные с практическим применением), затраты на обучение окупятся за месяц-два при трудоустройстве, ну а про телевизор и соцсети по вечерам — можно и потерпеть. Как приятный бонус — в процессе обучения и общения в группе знакомитесь с интересными людьми.
C++ в Практикуме. Как обучить студентов плюсам, не отпугивая / Хабр
Качественное образование — это не просто формальный диплом именитого вуза или парочка сертификатов о пройденных курсах. Это прежде всего новые навыки и уверенное желание применять их на практике. Такое возможно, если человек на самом деле хорошо учился и если его хорошо учили. Ведь даже самую интересную дисциплину можно преподавать так, что студентам будет откровенно скучно.
Меня зовут Антон Полднев, я уже давно пишу в Яндексе на C++ и руковожу сервисом, написанным на этом языке. Параллельно я учу других людей навыкам разработки. С 2016 года я вёл курсы на Coursera, затем мы их прокачали и сделали на их основе курс для Практикума. В этом посте я расскажу, как мы учим людей C++, а также про основные особенности этого языка.
Языковые сложности. C++ VS Python
Да, плюсы́ — не такой популярный язык для студентов, как тот же питон, например. Если мы говорим о человеке, который решил впервые попробовать свои силы в программировании, то он с большей вероятностью пойдёт писать именно на Python, нежели на C++. Здесь дело и в пороге входа, который у плюсов ощутимо выше, и в том, что на Python куда проще получить в результате своих трудов полноценную работающую программу. Ведь там многое доступно сразу из коробки, нет лишних скобочек и связанных с ними сложностей. Работа с файлами там тоже заметно проще — в общем, просто берёшь и работаешь.
Сейчас даже в школах, где уделяют внимание программированию, учат способных учеников именно Python. Конечно, многие из нас с вами на уроках информатики начинали с Pascal или Visual Basic, в ряде школ наверняка они ещё остались. Но проблема Pascal в том, что обучиться-то ему можно, а вот найти применение в реальной жизни уже сложнее. А Python и простой, и дружелюбный, и проектов на нём много.
— Погоди, пост же про плюсы, — скажет внимательный читатель. Да, всё верно, вот и они. Штука в том, что с Python хорошо начинать. А вот дальше всё зависит от задач и желаний программиста. Если вам хочется (и интересно) писать куда более производительный код, над которым у вас будет полный контроль, то для этого понадобится что-то низкоуровневое. Например, Java, C++, C#, в какой-то степени Go.
И в этой низкоуровневости заключается двойственная природа плюсов. С одной стороны, язык изначально сам по себе низкоуровневый, и это круто. С другой стороны, его не очень удобно использовать. Если вы что-то сделаете не так, создавая программу на каком-то другом языке, она будет работать неэффективно или работать с ошибками. Плюсы же не прощают ошибок, и вместо неработающей программы вы вполне можете получить инферно, утягивающее в Страну Вечной Охоты всё, до чего дотянется.
Это так себе история, поэтому за плюсы активно взялись в начале XXI века и начали развивать язык. Как итог, сейчас на C++ не просто можно писать эффективный код. На C++ стало приятно писать эффективный и безопасный код.
Обузданная мощь
В плюсах, как и в других компилируемых низкоуровневых языках, есть статическая типизация кода, которой нет в Python. Благодаря ей вы можете чётко и ясно объявить, что такой-то объект имеет вот такой тип данных, что вот эта штука — число. И всё, после этого оно не станет, скажем, строкой. И это даёт возможность компилятору генерировать более эффективный код.
Программы на C++ быстрее благодаря более чёткой типизации
Программируя на C++, вы на самом деле чувствуете мощь — у вас куча возможностей. Как говорили в таких случаях Питеру Паркеру: «С большой силой приходит большая ответственность», что, кстати, тоже является хорошим стимулом для обучения.
Если вам интересно создавать эффективный код и в процессе перелопачивать огромные объёмы данных, то дополнительным челленджем в C++ станет не просто написать быстрый код, но написать его так, чтобы он был понятен остальным. Люди же будут его использовать, поддерживать и масштабировать — это не вещь в себе, это инструмент. Хороший, работающий и ремонтопригодный.
Ведь как только вы напишете одну хорошую и эффективную программу, вам наверняка захочется начать писать много таких же классных программ. Так, например, в Яндексе мы сейчас пишем множество самых разных сервисов на плюсах. Поэтому вопрос про поддержку отнюдь не праздный.
К счастью, у C++ за всё время накопилось множество хороших практик того, как писать понятный и поддерживаемый код. И это тоже интересный момент в плане обучения: задача усложняется, потому что у вас в руках уже не просто язык посложнее, но при этом и огромный набор инструментов, чтобы на нём хорошо писать. Этому тоже важно учить.
Как не надо учить людей C++
Хотя я выше и писал, что частенько в плюсы приходят из Python в поисках силы и контроля, лично я знаю не так уж и мало людей, для которых C++ стал первым языком.
Идеальный путь мне видится примерно таким.
В школе у вас было программирование, вас учили питону.
Затем вы аккуратно и постепенно переползли на плюсы.
В итоге хорошо разбираетесь в обоих языках, зная достоинства, недостатки и области применения каждого.
Это если сильно всё упрощать.
На самом деле для большинства ситуация выглядит примерно так.
В школе программируете на чём-то, что вроде бы и язык программирования, при этом совершенно бесполезный и в природе уже не встречается. Кроме учебников. Старых учебников.
Затем поступили в университет, а там — сюрприз — внезапно плюсы.
Но и это еще не всё. Вдобавок можно попасть на максимально академический курс. Там вам расскажут, что лет двадцать назад вот эти бородатые мужики придумали С, а вот указатель на память, под которым что-то может быть, напишите 10 строк кода и узнаете, что именно.
В общем, про метапрограммирование вы на таком курсе услышите разве что от других студентов. И то не факт.
Так нельзя делать, и вот почему. Допустим, новичку рассказали про С, попросили сначала (на курсе по C++, да) попрограммировать именно на С. Если элемент страдания на курсе возведён в культ, то студенты будут программировать ещё и на ассемблере, просто для того, чтобы ощутить ту боль и метания, которые испытывали инженеры.
Да, будет что рассказать у костра на конкурсе страшных историй. Но такой подход почти неминуемо вызывает отторжение ко всему семейству языков. И прелесть плюсов до человека, напуганного С и ассемблером, вы просто не донесёте. Разве что его нервная система будет очень крепка. Но тут не Спарта же, мы людей учим.
Менее страшный академический подход будет заключаться в том, что после С вам всё же расскажут про плюсы: смотрите, вместо массива есть вектор, и у него динамически изменяется размер, и всё делается за вас. И вроде как студентам радостно должно быть: круто-то как, само всё работает. Но зачем же тогда студентов перед этим полтора семестра заставляли вот этими руками писать по 50 строк кода, когда такая круть существует?
— А как надо?
А надо просто рассказать людям, что программирование — это не страшно, что можно научиться писать полезные программы, небольшие, на 10–20 строк. Потом плавно переключиться на C++ и показывать, как там всё круто работает и какой хороший код получается.
Этот подход мы применяли на Курсере. Он же у нас и в Практикуме: покажем человеку, какой язык классный. Классный сегодня, без попыток углубиться в историю и рассказов о его предыдущих архивных версиях. Просто покажем, как создать массив чисел. Или массив котиков, например.
Например, вот так мы объясняем студентам цикл while через хождение к холодильнику
Мы сразу говорим студенту, что если хочется набор объектов — используй тип «вектор». Он сам себе выделит память, сколько ему там надо, всё будет ОК, вообще в этой ситуации не думай про управление памятью. Хочется сделать множество элементов, которое можно быстро добавлять и искать в нём — вот тебе контейнер, без проблем.
Для того, чтобы пользоваться стандартными для языка контейнерами, векторами, множествами или словарём, не нужно понимать, как они внутри себя устроены.
А получается, что классическое образование и академический подход в этом плане занимаются археологическими раскопками, причём снизу вверх — с первого уровня, потом просто по хронологии, наслаивая все вехи развития языка. Чтобы через семестр стало понятно, что почти всё из услышанного ранее просто когда-то использовалось, да, но конкретно вам уже не пригодится. И спасибо за внимание.
Мы учим студентов на курсе, начиная с верхнеуровневых вещей, и потом уже раскрываем всё это подробнее, углубляясь в каждую тему. Про устройство контейнеров можно рассказывать уже через пару месяцев обучения, это тоже помогает разработчику прокачиваться. Потому что в отличие от других языков все стандартные средства, например, контейнеры C++ тоже написаны на C++. И мы даём задачки вида «Вы узнали, как на самом деле работает управление памятью. Теперь напишите свой список или вектор».
Всё это мы даём примерно в конце первой половины обучения, чтобы понять, как всё работает изнутри.
Обучение углублённым темам
В плюсах есть множество тем, в которых можно дополнительно попрактиковаться и расширить свои возможности. Например, динамический полиморфизм. Это когда мы пытаемся отчасти приблизиться к Python и заявить: этот объект имеет не совсем фиксированный тип и может быть то числом, то строкой. Но всё это происходит под вашим контролем! И потому всё ещё максимально эффективно для вашей задачи.
С другой стороны, есть полиморфизм статический — механизм, благодаря которому можно писать универсальный код, работающий для разных типов данных. Он выполняется так же эффективно, как код, заточенный под конкретный тип, и всё ещё легко читается. В общем, если вы что-то слышали про метапрограммирование — это оно. А самое приятное, что язык развивается и всё больше упрощает подобные сложные задачи.
И подобных примеров достаточно — они ограничены лишь любознательностью и готовностью изучать новое в, казалось бы, привычном языке.
C++ в Яндексе
А теперь расскажу, как C++ пригождается нам внутри компании. На нём хорошо писать сервисы, которые критичны с точки зрения нагрузки и скорости ответа. Сейчас я руковожу отделом разработки баннерной системы. Это сервис, отдающий рекламу на конкретный запрос конкретному пользователю. Рекламу мы показываем и на поиске Яндекса, и на других сайтах — соответственно, трафика через нас проходит огромное количество. Бо́льшую часть прибыли Яндексу приносит именно реклама. Это важный сервис, и он написан на C++.
К рекламному движку, как мы его называем, предъявляются жёсткие требования по нагрузке: за секунду нужно обрабатывать сотни тысяч запросов, и делать это нужно за десятки–сотни миллисекунд. Спроектировать и поддерживать такой сервис довольно тяжело. И современный C++ нам в этом помогает.
Известный всем поиск Яндекса сталкивается с похожими проблемами. Он тоже написан на плюсах, и наши команды активно обмениваются опытом разработки и проектирования высоконагруженных сервисов. Или взять, например, браузер: он должен быть эффективным и не замедлять систему пользователю, который установит его на свой компьютер и откроет пару сотен вкладок. Тоже C++, и тоже челленджи.
Чеклист «Как надо»
Закончить пост я хочу чеклистом, который поможет правильно преподавать плюсы. Возможно, не только их.
Убедитесь, что вы начали рассказывать про язык, а не про историю развития этого языка.
Убедитесь, что уже после первых уроков ваши студенты осилят написать рабочий код, простой и в то же время близкий к боевому. Давайте им все основные инструменты сразу.
Вообще не страшно рассказать про вектор и при этом не рассказать про шаблоны классов. Детали реализации обсудить всегда успеете.
А ещё не страшно рассказать про словарь и не рассказать, что такое бинарное дерево.
Не усложняйте. Любая популярная идея в своём ядре понятна и проста. Если это не что-то хитрое типа метапрограммирования, то про это не надо рассказывать сложно. Пусть, например, вы рассказываете про активное использование ссылок. Ссылки в массе своей пришли на замену указателям. Поэтому расскажите про ссылки и не рассказывайте про указатели. До поры до времени.
Расскажите про важность алгоритмов, хотя бы базово. Потому что плюсы — про эффективность. Нужно уметь оценить, что алгоритм А работает за линейное время, а алгоритм Б — за квадратичное.
Поэтому первый будет быстрее, ведь линейная сложность лучше квадратичной. Это полезная теория.
Убедитесь, что студент понимает, зачем вы ему это рассказываете. Если вы решили рассказать про словарь просто потому, что словарь — это круто, студент может не понять. Покажите, зачем ему словарь.
Рассказывайте про новое в языке. Быть современным важно.
Не рассказывайте вообще всё. Это ловушка для преподавателя: когда вы давно в C++ и хорошо знаете язык, хочется рассказать про него всё. Рискуете перенасытить студентов и усложнить подачу.
А усложнять не надо.
Вот так мы и учим наших студентов. Если у вас есть вопросы, с радостью отвечу.
Школа наук о данных
Учиться. Упражняться. Запуск.
Начните свое профессиональное путешествие по прикладным науке о данных с Y-DATA
Приложения Следующего класса будут открыты в апреле 2023 г.
. -25 часов в неделю
Где:
Кампус Тель-Авивского университета
Отраслевые проекты:
Реальные проекты ведущих компаний
Плата за обучение:
29 000 шекелей (или подать заявку на обучение, ориентированное на успех*)
Гибкое финансирование:
Плати, когда сможешь
разрыв между краткосрочными онлайн-курсами и очной программой на уровне магистра. Y-DATA разработан первоклассными экспертами из академии и отрасли и преподается в кампусе Тель-Авивского университета. Программа локализована для расширения израильского технологического сообщества и глобальной экосистемы ИИ.
Перейти к программе
Что мы предоставим
250 часов интенсивного обучения
очное обучение
Реальный отраслевой проект для вашего портфолио
Возможность получить образование, ориентированное на успех (окупайтесь только после того, как закончите обучение и начнете зарабатывать)
Доступ к ресурсам облачных вычислений
Работа в сети и многое другое — постоянное участие в сообществе экспертов
Что вы получите
Практический опыт работы с отраслевым проектом полного цикла обработки данных
Свободное владение Python и его соответствующими инструментами (scikit-learn, pandas, matplotlib, numpy)
Большой опыт работы с нейронными сетями и их приложениями в НЛП и компьютерном зрении. Знакомство с PyTorch и TensorFlow
Практика в чтении научных статей и презентации статей и текущих исследованиях
Сертификат об окончании
Y-DATA предлагает уникальное сочетание преимуществ, которых нет в других программах
Online courses | Offline courses | Advanced degree | Y-DATA | |
---|---|---|---|---|
In-depth understanding of theoretical foundations | ||||
Experience working on practical, real-world вызовы | ||||
Без авансовых платежей: возможность платить только после того, как будет принята на работу в поле | ||||
Introduction to current research and advances | ||||
Thorough candidate screening process | ||||
Time commitment compatible with working in parallel | ||||
Опытные | ||||
Доступ к вычислительным облачным ресурсам для всех ваших проектов |
Здесь мы, безусловно, делаем обобщение, и некоторые частные офлайн-программы или ученые степени в академии дают больше, чем упомянуто здесь. Тем не менее, эта таблица дает представление о различных путях, доступных для карьеры в науке о данных.0002 Опыт работы над практическими, реальными проблемами
Нет.
Процесс тщательного отбора кандидатов
Время, необходимое для параллельной работы
Опыт
Отраслевые наставники
Доступ к вычислительным облачным ресурсам для всех ваших проектов
Y-Data VS Offline Courses 9003
Опыт решения практических, реальных задач | ||
НЕТ АВТОМОБИЛЬНАЯ СТОИМОСТЬ: ВОПРИЯТАЯ ПЛАТИТЬ только после использования в поле | ||
Введение в текущие исследования и достижения | ||
ТОЛЬКО КАНДИДА. | ||
Опытные | ||
Access to computational cloud resources for all your projects |
Y-DATA vs Advanced degree
In-depth understanding of theoretical foundations | ||
Experience working on практические, реальные задачи | ||
Без авансовых платежей: возможность платить только после трудоустройства в поле | ||
Introduction to current research and advances | ||
Thorough candidate screening process | ||
Time commitment compatible with working in parallel | ||
Experienced | ||
Доступ к вычислительным облачным ресурсам для всех ваших проектов |
Наша команда
All Team
Процесс приема
Приложение
Предоставление заявки на заполнение формы
Test
Принять онлайн -тест. можно практиковаться в любое время здесь
Интервью
Расскажите нам больше о своем прошлом, опыте и интересах, а также о своей мотивации и целях программы. Во время интервью можно задать несколько технических вопросов
Заявления
и
Процесс приема
Как работает процесс подачи заявления?
Процесс подачи заявки состоит из трех этапов. Во-первых, кандидаты подают заявки онлайн через наш веб-сайт. Во-вторых, кандидаты проходят онлайн-тест. Тест оценивает аналитические и базовые навыки программирования и содержит вопросы по статистике и вероятности на уровне бакалавриата, вопросы по анализу данных и задачи по сокращенному кодированию (кандидаты могут выбрать один из нескольких популярных языков программирования, поддерживаемых нашей платформой). Тест должен быть завершен в течение трех с половиной часов.
Y-DATA предложит два отдельных 4-дневных окна для прохождения онлайн-теста в течение июля-августа. Кандидаты, прошедшие онлайн-тест, будут приглашены на личное собеседование с членами команды Y-DATA. Собеседование — это возможность для нашей команды узнать больше об истории, опыте и интересах кандидатов.
Какой уровень математических знаний ожидается от кандидатов?
Мы предполагаем, что наши студенты имеют как минимум степень бакалавра STEM или ее эквивалент.
Таким образом, мы ожидаем, что все кандидаты в полной мере будут знать материалы первого курса университета по математике. Чтобы обеспечить соответствующий уровень уже существующих знаний, мы требуем, чтобы все кандидаты завершили специализацию «Математика для машинного обучения» на Coursera до начала учебы.
У кандидатов, принятых в программу, стоимость курса будет вычтена из их платы за обучение.
Какой уровень знаний статистики и вероятностей ожидается от кандидатов?
Мы предполагаем, что наши студенты имеют как минимум степень бакалавра STEM или ее эквивалент.
Таким образом, мы ожидаем, что все кандидаты в полной мере овладеют материалом первого курса университета по теории вероятностей и статистике. Вы можете просмотреть основные темы по этим предметам, прежде чем проходить наш онлайн-тест.
Во время программы мы не будем преподавать эти темы с нуля, но мы дадим краткий обзор перед тем, как углубиться в более сложные темы, необходимые для последующих курсов машинного обучения.
Какой уровень навыков кодирования необходим для участия в программе? Вам требуется знание определенных языков?
Нам требуется некоторый опыт работы хотя бы с одним из распространенных языков программирования и понимание общих структур данных. Задания по программированию составляют большую часть онлайн-теста и предполагают наличие опыта программирования. Во время самой программы курсы и домашние задания будут на Python.
Мы рекомендуем кандидатам иметь практические знания Python до начала курса, но онлайн-тест также может быть выполнен на Java и C++.
Могу ли я подать заявку без опыта программирования?
Кандидаты без опыта программирования не смогут принять участие в нашей программе. Если у вас нет опыта программирования, но вы хотите начать работу в этой области, лучше всего начать с одного из практических курсов. Треки Data Analyst и Data Scientist предлагают возможность изучить Python и фундаментальные навыки, связанные с данными, с нуля и обеспечивают лучшую отправную точку для кандидатов с нулевым опытом программирования.
Не могли бы вы предоставить более подробную информацию об онлайн-тесте? Что я должен сделать, чтобы подготовиться?
В этом году онлайн-тест будет доступен на платформе Яндекс.Конкурс. Тест проходит в нескольких временных окнах в течение июля и августа — точные даты будут объявлены примерно за месяц до начала. Полная информация о формате, расписании и платформе экзамена будет предоставлена кандидатам незадолго до теста.
Здесь вы можете найти один из экзаменов прошлых лет. Вы можете использовать его для практики и чтобы лучше понять, какие вопросы ожидать — экзамен в этом году будет похожим по стилю и структуре. У пробного теста нет ограничений по времени или количеству попыток (в то время как реальный экзамен имеет ограничение в 3,5 часа и может быть сдан только один раз).
Помимо пробного теста, если вы не пишете код каждый день, мы рекомендуем освежить свои навыки кодирования. Если вы хотите отточить свои навыки Python, вот несколько хороших источников:
- Python для анализа данных Уэса МакКинни
- From Python to Numpy
- Канал PyData на YouTube
Time Commitment
Каковы временные обязательства для этой программы? Могу ли я совмещать это с работой или академической учебой?
Недельная рабочая нагрузка состоит из 9часов фронтальных занятий (один вечер в середине недели + утро пятницы) и примерно 20 часов самостоятельной работы над заданиями и проектами. Мы ожидаем не менее 80% посещаемости лекций и семинаров.
Из-за загруженности, в дополнение к 9 часам фронтальных лекций, мы требуем, чтобы у наших участников был как минимум один полный рабочий день для работы над классной работой и отраслевым проектом. Таким образом, кандидаты должны сократить штатные должности максимум до 80%, и мы настоятельно рекомендуем сократить их до 50% на время действия программы.
В некоторых исключительных случаях и на основе индивидуальной оценки мы можем разрешить избранным студентам пройти программу без отраслевого проекта, сохранив при этом работу на полную ставку.
Участие в программе во время работы над получением академической степени возможно, но сильно зависит от интенсивности отдельных программ.
Могу ли я принять участие в программе, если я работаю полный рабочий день и не могу сократить свою должность?
Это возможно, но во многом зависит от вашей приверженности.
По нашему опыту, совмещать работу Y-DATA с полной занятостью крайне сложно. Мы настоятельно рекомендуем всем нашим кандидатам сократить свои позиции, чтобы в полной мере использовать возможности, предлагаемые Y-DATA.
Кроме того, обязательным является посещение не менее 80% лекций и семинаров (один вечер в будний день и утро в пятницу), а еженедельные занятия в классе и упражнения требуют значительного количества времени и усилий.
Если вы считаете, что можете совмещать эту работу с полной занятостью, мы предлагаем возможность пройти программу Y-DATA без участия в отраслевом проекте. В этом случае вам по-прежнему необходимо пройти все курсы и выполнить все классные работы, как описано, но без дополнительной нагрузки отраслевого проекта.
Информация о программе
Получу ли я сертификат по окончании программы Y-DATA? Каковы условия его получения?
Да, вы получаете сертификат об окончании. Чтобы получить сертификат, вы должны набрать достаточное количество кредитов и выполнить все необходимые курсовые работы — не менее 80% посещаемости и не менее 80% домашних заданий, отправленных и оцененных как проходные (дополнительные требования к уровню курса будут опубликованы в начале каждый семестр).
Существуют ли разные дорожки для программы Y-DATA?
Да. Y-DATA предлагает два направления:
- Полный курс: Полная программа Y-DATA, включая отраслевой проект в ведущей компании технологической отрасли. Чтобы получить представление о типах проектов, посетите веб-сайт проекта.
- Без направления проекта: учащиеся, которые не могут посещать полную программу, будут иметь возможность участвовать в программе и завершить ее без участия в отраслевом проекте. Несмотря на то, что мы рекомендуем полный опыт Y-DATA, мы понимаем, что некоторые студенты не могут этого сделать.
Стоимость программы без отраслевого проекта составляет 24 000 шекелей.
На каком языке программа?
Программа полностью преподается на английском языке. У нас есть иностранные студенты и преподаватели, поэтому мы ожидаем, что все наши студенты будут свободно владеть английским языком.
Вы принимаете иностранных студентов? Предлагаете ли вы какую-либо специальную помощь иностранным студентам?
Y-DATA открыта для иностранных студентов — среди наших студентов и выпускников есть иностранные студенты. Если вы находитесь за границей, вы можете подать заявку в обычном порядке, и процесс приема может проходить удаленно.
Для участия в программе Y-DATA необходимо проживать в Израиле в течение ее срока действия. Согласно израильскому законодательству, для пребывания здесь в течение 8 месяцев (в случае отсутствия гражданства) необходимо иметь подходящую визу (студенческую или с разрешением на работу).
Иностранные студенты не могут участвовать в модели оплаты, основанной на успехе, но мы предлагаем специальные цены за обучение иностранным кандидатам, прошедшим процесс приема.
Мы сотрудничаем с международной программой для студентов-исследователей Тель-Авивского университета, которая может предоставить возможность получить статус студента и другие преимущества кандидатам с подходящей подготовкой.
Если вы рассматриваете возможность подачи заявки, но у вас есть особые потребности или вопросы, вы можете связаться с нами напрямую по почте
Стоимость
и
Варианты оплаты
Какова стоимость программы?
Стоимость программы Y-DATA составляет 29 000 шекелей.
Чтобы сделать программу доступной, мы также предлагаем модель обучения, основанную на успехе (SBE). Полная стоимость программы в SBE составляет 45 000 шекелей.
Как оплатить обучение по программе?
Существует два варианта:
- Предоплата : Вы можете заплатить полную стоимость авансом (оплата может быть произведена до 9 частями)
- Модель, основанная на успехе : Вы платите только 5 тысяч шекелей авансом (плата за обязательство) . Только после того, как вы закончите обучение и только когда вы начнете работать с ежемесячной зарплатой выше 18 тысяч шекелей, мы попросим вас вернуть 10% вашего дохода, пока вы не погасите полную стоимость программы в треке SBE.
Каковы условия модели успеха?
Модель, основанная на успехе, позволяет учащимся посещать курс без полной предоплаты.
Y-DATA инвестирует в студентов и верит в их способность добиться успеха, поэтому в этой модели нам платят только после того, как наши выпускники успешно работают в технологической отрасли.
Допуск к модели SBE зарезервирован для кандидатов, которые посвящают большую часть своего времени Y-DATA и не совместимы со значительной занятостью в течение всего курса.
После того, как студент закончит обучение и найдет работу, мы попросим его оплатить обучение следующим образом:
- Вы должны будете платить только после того, как закончите обучение и когда вы заработаете более 18 000 шекелей в месяц.
- Вы будете платить 10% от вашей зарплаты в течение двух лет, вплоть до стоимости обучения. Вы никогда не вернете сумму, превышающую общую сумму в 45 000 шекелей.
- Каждому учащемуся, принятому в модель, основанную на успехе, будет предложено внести депозит в размере 5000 шекелей (невозмещаемый) до начала программы. Эта плата будет вычтена из вашего плана погашения на основе результатов.
Кто-нибудь, принятый в программу, имеет право на модель, основанную на успехе?
Мы оставляем за собой право предлагать участие в модели, ориентированной на успех, тем учащимся, которые, по нашему мнению, наиболее подходят для ее использования.
Эта модель представляет собой возможность для кандидатов, которые полны решимости войти в мир науки о данных, но чьи нынешние обстоятельства затруднили бы участие в программе в противном случае. Это также возможность для высокомотивированных кандидатов, которые планируют значительно сократить свою занятость, чтобы посвятить максимум времени и сил учебе.
Когда
и
Где
Где проходят курсы?
Занятия Y-DATA проходят в Тель-Авиве, в кампусе TAU.
Когда запускается программа? Какое расписание?
Программа соответствует стандартному учебному году в Израиле. Учеба начинается в октябре и длится до июня в двухсеместровом формате.
В течение года проводится 8 часов фронтальных лекций в неделю – один вечер в будний день (17:00-21:00) и
в пятницу утром (9:00-13:30).
В этом году (2022-23 учебный год) занятия начнутся 25 октября.
Когда открывается прием? Каковы сроки процесса?
Прием открыт каждый год в апреле и длится до июля.
Онлайн-тест проходит в нескольких временных окнах в июле и августе.
Интервью проходят в августе и сентябре.
Даты временных окон онлайн-тестирования в этом году будут опубликованы в июне 2023 года.
Отраслевые проекты
Что такое отраслевые проекты? Каковы преимущества его выполнения?
Отраслевые проекты являются одним из ключевых элементов программы Y-DATA. Мы считаем, что лучший способ достичь глубокого понимания и истинного мастерства в работе с инструментами и приложениями машинного обучения — это работать над решением реальных проблем. Для этого Y-DATA устанавливает партнерские отношения с ведущими технологическими компаниями, предлагая нашим студентам практический опыт работы над проблемами науки о данных в реальных условиях. В течение второго семестра (январь-июнь) студенты Y-DATA выполняют один проект полного цикла по науке о данных, предлагаемый нашими компаниями-партнерами, предоставляя бесценный опыт при поддержке наставничества экспертов нашей школы и владельца данных проекта.
Сколько времени уходит на проект? Я буду работать один?
Работа в отраслевом проекте является серьезным обязательством как для студентов, так и для Y-DATA и компании-поставщика. Проект требует обязательств примерно один день в неделю в течение его продолжительности (январь-июнь). Это может быть работа на территории компании один раз в неделю или работа независимо от дома столько же в течение недели. Работа над проектами ведется в командах по 2-3 студента под наблюдением и руководством опытного наставника, назначенного Y-DATA, обеспечивающего глубокую профессиональную экспертизу, а также представителя компании, обеспечивающего внутреннее понимание данные и потребности бизнеса.
Где можно посмотреть примеры проектов?
Вы можете увидеть краткие примеры проектов этого года и более подробную информацию об отраслевых проектах на странице Проекты. Вы также можете прочитать полный каталог проектов на 2021-22 год здесь и изучить разнообразие потенциальных проектов.
Кроме того, вы можете посмотреть видео прошлых презентаций завершенных проектов студентов Y-DATA здесь:
- Demo Day 2022
- Demo Day 2021
- Demo Day 2019
Могу ли я сделать проект в компании, где я работаю?
Это вполне возможно, хотя зависит от студента и рассматриваемой компании.
Для многих студентов возможность выполнять отраслевые проекты в своих нынешних компаниях дает много преимуществ: знакомство с предметной областью проектов и необходимой базой знаний и системами, большую гибкость в получении времени, необходимого для работы над проектом, и многое другое.
Мы более чем готовы разрешить такие проекты, но они должны соответствовать определенным правилам: Прежде всего, у компании должен быть подходящий продукт или проект, управляемый данными. Кроме того, компания должна иметь опыт работы с данными и машинным обучением, что позволит осуществлять надзор и контроль над проектом. Наконец, компания должна быть готова к сотрудничеству и следовать регулярным рекомендациям по определению проекта.
Остались вопросы?
Следуйте за нами на FacebookПрисоединяйтесь к нашему сообществу Meetup
Заявки снова будут открыты в апреле 2023 года. привык к этому.
29 июля мы посетили Яндекс, крупнейшую технологическую компанию Европы. Яндекс предоставляет множество продуктов и услуг, связанных с Интернетом, начиная от поисково-информационной службы в начале девяностых и заканчивая онлайн-рекламой и транспортом сегодня. Присутствие Яндекса радикально изменило российские города за последние десять лет, особенно Москву. Трудно провести одну минуту на московских улицах и не увидеть активности, связанной с Яндексом: Яндекс-такси — самая посещаемая служба такси в городе, а люди, идущие с большими желтыми кубами доставки Яндекс-еды, наводняют город в обеденное время. .
Чтобы быть генеральным директором Яндекса, не нужно хорошо программировать
Елена Бунина – доктор высшей алгебры, автор более пятидесяти научных работ, профессор МГУ. Она научила меня программированию, когда я сам был студентом математического факультета МГУ всего лишь… десять лет назад! Сегодня Елена — генеральный директор Яндекса в России, и, как она говорит, у нее «очень забавный опыт программирования» .
В школе у нас была замечательная учительница по программированию — я был одним из лучших учеников, но только одну четверть. Потом он уехал в Израиль и приехал другой учитель, который мне не понравился. В остальное время я ничего не делал, так как мне не нравился ни процесс, ни преподаватель. К тому же в то время программировать «настоящего математика» было не престижно. После, когда я поступил на математический факультет, даже прямо было сказано: если ты хороший математик, то можешь у кого-то скопировать программирование. Так как мне это уже не нравилось, я усиленно копировал и ничему не научился. Все годы на математическом факультете для меня это был пустой набор знаний в плане программирования.
Потом, когда я защитил кандидатскую диссертацию по алгебре, я хотел преподавать на кафедре алгебры, но там не было места.
И все же нашлось место в отделе вычислительных методов. Правда, как сказал мой руководитель, был один нюанс — надо было преподавать программирование! Но я не умел программировать, понимаете? Итак, это был конец июня, а в начале сентября мне нужно было идти преподавать. Поэтому я установил C на свой ноутбук и попытался написать несколько программ, чтобы подготовиться. Когда начались занятия, у меня не было проблем с объяснением любого алгоритма у доски — это математика. Но мне было очень страшно учить программированию — мне не нравится и техническая сторона этого, я всегда ломаю всю технику, которая у меня есть! Единственная радость, которая у меня была, это то, что в группе всегда был кто-то, о ком я думал, обычно мальчик, который любил программирование, делал это хорошо, и я брал его себе в помощники. В вашей группе был Дэн, он проверял чужой код и находил ошибки. Он действительно спас меня! Иначе я бы там умер! В конце концов, мне разрешили преподавать алгебру, и только алгебру, а с , тогда я очень счастлив».
Проходим через Яндекс, и Елена пишет сообщение Дэну Озорнину (да, тому самому Дэну!), который забегает на пару минут поздороваться. Сегодня он работает в Яндексе и курирует группу разработки продуктов для смарт-устройств. Потом Дэн уходит на очередную встречу, а мы продолжаем нашу экскурсию.
» Я думаю, если бы моя жизнь сложилась иначе и мне пришлось бы учиться программированию на деньги, я был бы, наверное, каким-нибудь посредственным программистом. Но я думаю, что это не то, в чем я хорош. Я хорошо разговариваю с чел е кто работает в яндексе, на том же языке., », — говорит Елена.
Значит, чтобы стать генеральным директором Яндекса, не нужно очень хорошо программировать… «Нет, не надо! Но вы должны понимать, о чем идет речь. И я это понимаю, — улыбается Лена и перефразирует русскую пословицу: — Я понимаю, только не могу сказать .
Создавая мир Яндекса
После экскурсии по цветным этажам Яндекса и их невольно названным комнатам мы посещаем магазин Яндекса и его музей старых компьютеров. Елена покупает для младшей дочери куклу, одетую как Элиза из «Холодного сердца» — это кукла с Алисой внутри (вокальный помощник, разработанный Яндексом).
После экскурсии мы садимся с Еленой во внутренний сад Яндекса, чтобы поговорить о том, как Елена смотрит на свою жизнь сегодня. Пятнадцать лет назад ее пригласили в Яндекс для создания Яндекс-школы анализа данных, которая будет дополнительно обучать программированию студентов математических факультетов, чтобы они потом могли войти в Яндекс. Сегодня эта школа очень успешна. Это помогает Яндексу обновлять свою кадровую базу, которая сегодня почти достигла 15 000 человек. Елена стала директором Школы Яндекса в 2007 году, HR-директором в 2011 году, а затем генеральным директором по работе в России в 2017 году. Сегодня она работает над многочисленными образовательными проектами внутри Яндекса.
Я уже привыкла к Яндексу, люблю его, и сегодня сама создаю этот Яндекс-мир, говорит она. Хотя, конечно, я страдаю от того, что недостаточно исследую. Но я не думаю, что я мог бы действительно стать действительно великим ученым — я не люблю читать научные статьи, и вы должны это делать, чтобы стать великим. Мне нравится только писать статьи и рассказывать о математике другим!…”
Я очень счастлив, как сложилась моя жизнь . Я думаю, что я там, где я должен быть».
Мысли о нашей Alma Mater
Мы с Еленой учились на механико-математическом факультете МГУ.
Шестьдесят лет назад математический факультет МГУ был, пожалуй, лучшим местом для изучения и занятий математикой во всем мире, эти времена называют его золотым веком. Павел Александров был ответственным за математический факультет, и многие великие математики, такие как Петровский, Колмогоров, Курош и Марков, были руководителями профильных кафедр.