Три года подряд я проводила лето на стажировках в компании Google: сначала в Цюрихе, затем в Лондоне и, наконец, в Саннивейл (город в штате Калифорния, США). В этом посте я поделюсь тем, как подавать заявки и проходить собеседования, какими проектами я занималась и чем стажировки в Европе отличались от США. А еще расскажу, чем Цюрих понравился мне больше Кремниевой долины, где лучше обеды и вечеринки и почему я пока решила остаться в России.
Питерская Вышка
GSoC 2019: Проверка графов на двудольность и трансформеры монад
7 мин
4.6KПрошлым летом я участвовал в Google Summer of Code — программе для студентов от компании Google. Ежегодно организаторы отбирают несколько Open Source-проектов, в том числе от таких известных организаций, как Boost.org и The Linux Foundation. Для работы над этими проектами Google приглашает студентов со всего мира.
Как участник Google Summer of Code 2019 я делал проект в рамках библиотеки Alga с организацией Haskell.org, занимающейся развитием языка Хаскелль — одного из самых известных функциональных языков программирования. Alga — библиотека, представляющая типобезопасное представление для графов в Хаскелле. Она используется, например, в semantic — библиотеке компании Github, строящей по коду семантические деревья, графы вызовов и зависимостей и умеющей их сравнивать. Мой проект состоял в добавлении туда типобезопасного представления для двудольных графов и алгоритмов для этого представления.
В посте я расскажу про свою реализацию алгоритма проверки графа на двудольность на Хаскелле. Несмотря на то, что алгоритм является одним из самых базовых, его красивая реализация в функциональном стиле заняла у меня несколько итераций и потребовала довольно много работы. В результате я остановился на реализации с трансформерами монад.
Как участник Google Summer of Code 2019 я делал проект в рамках библиотеки Alga с организацией Haskell.org, занимающейся развитием языка Хаскелль — одного из самых известных функциональных языков программирования. Alga — библиотека, представляющая типобезопасное представление для графов в Хаскелле. Она используется, например, в semantic — библиотеке компании Github, строящей по коду семантические деревья, графы вызовов и зависимостей и умеющей их сравнивать. Мой проект состоял в добавлении туда типобезопасного представления для двудольных графов и алгоритмов для этого представления.
В посте я расскажу про свою реализацию алгоритма проверки графа на двудольность на Хаскелле. Несмотря на то, что алгоритм является одним из самых базовых, его красивая реализация в функциональном стиле заняла у меня несколько итераций и потребовала довольно много работы. В результате я остановился на реализации с трансформерами монад.
+18
C++ Russia: как это было
10 мин
3KЕсли в начале пьесы вы говорите, что на стене висит код на С++, то к концу он должен непременно выстрелить вам в ногу.
Бьярне Строуструп
С 31-го октября по 1-е ноября в Петербурге прошла конференция C++ Russia Piter – одна из масштабных конференций по программированию в России, организуемая JUG Ru Group. Среди приглашённых спикеров – члены комитета по стандартизации C++, докладчики с CppCon, авторы книг издательства O'Reilly, а также мейнтейнеры таких проектов, как LLVM, libc++ и Boost. Конференция ориентирована на опытных разработчиков на C++, желающих углубить свою экспертизу и обменяться опытом в живом общении. Студентам, аспирантам и преподавателям университетов предоставляются очень приятные скидки.
Московское издание конференции можно будет посетить уже в апреле следующего года, а пока наши студенты расскажут, что интересного они узнали на прошедшем мероприятии.
Бьярне Строуструп
С 31-го октября по 1-е ноября в Петербурге прошла конференция C++ Russia Piter – одна из масштабных конференций по программированию в России, организуемая JUG Ru Group. Среди приглашённых спикеров – члены комитета по стандартизации C++, докладчики с CppCon, авторы книг издательства O'Reilly, а также мейнтейнеры таких проектов, как LLVM, libc++ и Boost. Конференция ориентирована на опытных разработчиков на C++, желающих углубить свою экспертизу и обменяться опытом в живом общении. Студентам, аспирантам и преподавателям университетов предоставляются очень приятные скидки.
Московское издание конференции можно будет посетить уже в апреле следующего года, а пока наши студенты расскажут, что интересного они узнали на прошедшем мероприятии.
+10
Отладка алгоритмов на графах — теперь с картинками
11 мин
11KПредставим типичную ситуацию на первом курсе: вы прочитали про алгоритм Диница, реализовали, а он не заработал, и вы не знаете, почему. Стандартное решение — это начать отлаживать по шагам, каждый раз рисуя текущее состояние графа на листочке, но это жутко неудобно. Я попробовала исправить положение в рамках семестрового проекта по Software Engineering, а в посте расскажу, как у меня в итоге получился плагин для Visual Studio. Скачать можно тут, исходный код и документацию можно посмотреть тут. Вот скриншот графа, который получился для алгоритма Диница.
+29
ZuriHac: практикуемся в функциональном программировании
7 мин
4.4KВ июне этого года в небольшом швейцарском городке Рапперсвиле уже в десятый раз прошло мероприятие под названием ZuriHac. В этот раз на нём собрались более пятисот любителей Хаскелля, от новичков до отцов-основателей языка. Хотя организаторы называют это мероприятие хакатоном, всё же оно не является конференцией или хакатоном в классическом смысле. Его формат отличается от традиционных программистских. Мы узнали про ZuriHac по счастливой случайности, поучаствовали в нем, а теперь считаем своим долгом рассказать о необычной находке!
+17
Как решать NP-трудные задачи с помощью параметризованных алгоритмов
11 мин
18KНаучно-исследовательская работа, пожалуй, самая интересная часть нашего обучения. Идея в том, чтобы ещё в университете попробовать себя в выбранном направлении. Например, студенты с направлений Software Engineering и Machine Learning часто идут делать НИРы в компании (в основном, JetBrains или Яндекс, но не только).
В этом посте я расскажу о своём проекте по направлению Computer Science. В рамках работы я изучил и реализовал на практике подходы к решению одной из самых известных NP-трудных задач: задаче о вершинном покрытии.
Сейчас очень быстро развивается интересный подход к NP-трудным задачам — параметризованные алгоритмы. Я постараюсь ввести вас в курс дела, рассказать несколько простых параметризованных алгоритмов и описать один мощный метод, который очень мне помог. Свой результаты я представил на соревновании PACE Challenge: по итогам открытых тестов мое решение занимает третье место, а окончательные результаты будут известны 1 июля.
В этом посте я расскажу о своём проекте по направлению Computer Science. В рамках работы я изучил и реализовал на практике подходы к решению одной из самых известных NP-трудных задач: задаче о вершинном покрытии.
Сейчас очень быстро развивается интересный подход к NP-трудным задачам — параметризованные алгоритмы. Я постараюсь ввести вас в курс дела, рассказать несколько простых параметризованных алгоритмов и описать один мощный метод, который очень мне помог. Свой результаты я представил на соревновании PACE Challenge: по итогам открытых тестов мое решение занимает третье место, а окончательные результаты будут известны 1 июля.
+25
Зачем идти на «Промышленное программирование» в Питерскую Вышку?
3 мин
4.7KВ этом году в Высшей школы экономики в Санкт-Петербурге запускается новая магистерская программа «Промышленное программирование». Эта программа, как и магистерская программа «Разработка программного обеспечения» в Университете ИТМО, создана в сотрудничестве с компанией JetBrains. Сегодня мы расскажем, что общего у этих двух магистратур и чем они отличаются.
UPD. С 1 сентября 2020 года образовательная программа «Промышленное программирование» меняет свое название на новое и будет называться «Машинное обучение и анализ данных»
UPD. С 1 сентября 2020 года образовательная программа «Промышленное программирование» меняет свое название на новое и будет называться «Машинное обучение и анализ данных»
+7
AR, робототехника и катаракта: как мы съездили на российско-немецкую школу по программированию
8 мин
1.6KВ середине марта в Мюнхене прошла Joint Advanced Student School 2019 (JASS) — недельная англоязычная студенческая школа-хакатон++ по разработке программного обеспечения. О ней в 2012 году уже писали на Хабре. В этом посте мы расскажем о школе и поделимся впечатлениями нескольких студентов «из первых рук».
Каждый год компания-спонсор (в этом году — Zeiss) предлагает ~20 студентам из Германии и России несколько проектов, а через неделю команды должны представить свои наработки по этим направлениям. В этом году нужно было либо сделать видеозвонки с дополненной реальностью под Android, либо придумать и запрототипировать UI для системы predictive maintenance, либо поучаствовать в секретном Project Cataract.
Вся работа — на английском. Организаторы нарочно составляют смешанные команды из российских и немецких студентов для (бес)культурного обмена. Более того, по чётным годам школа проходит в России, а по нечётным — в Германии. Так что это прекрасная возможность для студентов разной степени подготовки получить не просто опыт работы, а опыт совместной работы с иностранцами.
Каждый год компания-спонсор (в этом году — Zeiss) предлагает ~20 студентам из Германии и России несколько проектов, а через неделю команды должны представить свои наработки по этим направлениям. В этом году нужно было либо сделать видеозвонки с дополненной реальностью под Android, либо придумать и запрототипировать UI для системы predictive maintenance, либо поучаствовать в секретном Project Cataract.
Вся работа — на английском. Организаторы нарочно составляют смешанные команды из российских и немецких студентов для (бес)культурного обмена. Более того, по чётным годам школа проходит в России, а по нечётным — в Германии. Так что это прекрасная возможность для студентов разной степени подготовки получить не просто опыт работы, а опыт совместной работы с иностранцами.
+7
Информация
- В рейтинге
- Не участвует
- Откуда
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Зарегистрирован
- Активность