Все об обучении в «Школе 21» из собственного опыта. Что я вынес за эти три года и как нашёл работу. В конце поделюсь полезными ссылками и советами, если кто-то захочет повторить этот путь.

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

Два самых популярных вопроса о связке моих работы и образования – это почему и как. Почему после стоматологии я выбрал машинное обучение? Как я перешел в эту профессию? Заметил, что у каждого есть знакомый или друг, который хочет перекатиться в IT.

Еще один популярный вопрос это «Имя Ибрагим вам о чем-нибудь говорит?», но на него я еще не придумал смешной ответ.

Про свои мотивы пойти в машинное обучение и что именно я делал – напишу отдельно. В этой статье хочу остановиться на том, как я учился программировать и что думаю о «Школе 21» после того, как окончил ее.

TLDR: я прошел Школу 21, научился там кодить и нашел первую работу.

Это сертификаты об окончании школы. Один от нашей Школы 21, второй от французской École 42. Еще нам дали небольшую коробку с толстовкой и два значка. Капибара на красном – это символ моей коалиции в школе.
Это сертификаты об окончании школы. Один от нашей Школы 21, второй от французской École 42. Еще нам дали небольшую коробку с толстовкой и два значка. Капибара на красном – это символ моей коалиции в школе.

Школа 21 – бесплатная школа программирования 

Изначально, это франшиза французской École 42, но сейчас Школа 21 становится самостоятельным проектом Сбера. На сайте школы отмечены основные принципы обучения, которые попытаюсь пояснить: 

  • Без расписания, учителей и оценок – приходишь в школу в любое время и делаешь проекты.

  • Метод Peer-to-Peer – сидишь с другими обучающимися и пытаешься понять, что от тебя требуется в описании проекта. Также вместо учителей, проекты оценивают другие обучающиеся на основании чек-листа.

  • Геймификация – набираешь очки опыта, как в играх, чтобы получить 16 или 21 уровень и окончить школу.

Обучение в Школе 21 состоит из трех этапов.

 1) Подготовка к поступлению. Продолжительность: 3-4 часа.

2) Бассейн. Продолжительность: 4 недели

3) Основная программа. Продолжительность: 2-4 года. 

На первом этапе ты заполняешь заявку, проходишь две онлайн-игры на логику и память, снимаешь видеоинтервью. 

Второй этап – это месячный отбор, который называется «бассейн» (или piscine в оригинале). Название выбрано по аналогии с обучением плаванию. Тебя бросают в воду, но сначала в бассейне, прежде чем пускать в открытый водоем. 

Бассейн – это ежедневные задания по программированию, после которых примерно треть людей зачисляют на основное обучения. Бассейн проходит оффлайн, поэтому доступен только в трех городах России: Москва, Казань, Новосибирск. Каждый день на протяжении 4 недель, я проводил в кампусе часов по 10-12. Это было ужасно сложно, но очень круто. Больше всего навыков и знаний мне дал именно бассейн

Это фотография с бассейна, сделанная в августе 2018 года, когда я пришел в школу в 7 утра, чтобы подумать над задачами в тишине.
Это фотография с бассейна, сделанная в августе 2018 года, когда я пришел в школу в 7 утра, чтобы подумать над задачами в тишине.

Третий этап – основное обучение – более гибкое и мягкое, чем бассейн. Здесь сам выбираешь, какие проекты программировать. Я, например, писал проекты по компьютерной графике. Основное обучение  заканчивается на 16 или 21 уровне, темп сдачи проектов зависит от вас, поэтому время завершения программы школы – от 2 до 4 лет. Я учился с декабря 2018 по июль 2021. В мае 2019 начал работать и в школе делал проекты стажировок. Это когда раз в 6 месяцев делаешь презентацию о том, чем занимаешься на работе. После выхода на первую стажировку многие поступили так же, потому что начали набирать скиллы непосредственно на работе.

Параллельно со школой начал вкатываться в машинное обучение

Через пару недель после старта обучения, в школе самообразовался кружок по машинному обучению. Девушка, которая на тот момент уже работала дата-сайентистом, рассказывала по субботам о принципах работы некоторых алгоритмов машинного обучения. Она же и подсказала, какие бесплатные курсы пройти, чтобы получить нужный минимум знаний. Ресурсы, которыми я пользовался, чтобы выйти на стажировку и начать там обучать нейронные сети, собрал на гитхабе.

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

Нюансы школы, о которых стоит знать

 

Во-первых, если вы не из города с кампусом, вам нужны деньги, чтобы где-то жить во время бассейна и обучения. У меня в августе 2018 года на месяц жизни в Москве ушло 30 452 рубля. 

Траты во время бассейна. Сюда входил хостел по акции на островке.ру и питание. На время основного обучения мы с другом сняли квартиру в Подмосковье.
Траты во время бассейна. Сюда входил хостел по акции на островке.ру и питание. На время основного обучения мы с другом сняли квартиру в Подмосковье.

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

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

Скрин одного из командных проектов, когда нам нужно было реализовать свой рейтрейсинг на Си.
Скрин одного из командных проектов, когда нам нужно было реализовать свой рейтрейсинг на Си.

Я дополню принципы Школы 21 своими.

Они отличаются от тех, что озвучены на сайте школы, но основаны на моем личном опыте. 

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

  • Школа помогает держать под контролем перфекционизм. Особенно во время бассейна: заданий много, они сложные, постоянно меняются и никто не дает отсрочку дедлайнов. Постоянная смена заданий поддерживает динамику, а жесткая система, которая обнуляет прогресс за малейший недочет, отрезвляет и учит не переживать из-за ошибок. Боязнь ошибок часто приводит к бездействию. В программировании ошибка – это часть фидбек лупа, которая помогает быстрее продвигаться вперед. В медицине же напротив: цена ошибки совсем другая. Поэтому для перестройки отношения к ошибкам мне здорово помог именно бассейн Школы 21.

  • Школа 21 – это площадка. Такая же как и обычная школа или университет. То есть эти места не гарантируют, что тебе загрузят знания в голову. Но они дают возможность получить эти знания, опробовать и закрепить на практике. Постоянные мероприятия, собственные хакатоны и внутренние сообщества – это необязательные для обучения активности, которые, однако, повышают шансы найти новый проект, работу и нетворк. 

Советы для тех, кто просит

Для тех, кто заинтересовался, – посмотрите FAQ на сайте школы. Всем желающим, я советую пройти бассейн Школы 21, особенно  если живете в городе с кампусом (Москва, Казань, Новосибирск). Бассейн – это крутой опыт: главное, выделить хотя бы три недели на прохождение. Программировать уметь для старта необязательно, но прочитайте, как работать в командной строке. И познакомьтесь с синтаксисом языка программирования Си, чтобы было чуть легче на старте. 

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

Когда я учился в медицинском университете, сделал систему обучения, чтобы успешно справляться с повышенной нагрузкой и при этом успевать работать и жить. Тут можно почитать подробнее, но если коротко: учусь я помидорами по 25 минут, делаю заметки, но не веду конспектов, повторяю через вспоминание и объяснение того, что изучил. Иногда завожу отдельные доски с карточками для интервального повторения в анки.

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

Выводы.

Скажу честно. Для меня поездка на первый басссейн Школы 21 в месяц каникул была авантюрой. Но по итогу в школе я получил базис навыков в программировании, нашел первую работу, познакомился с кучей разных ребят и до сих пор дружу с несколькими из них.

P.S

Своими мыслями, рассуждениями и личным опытом я делюсь в своем телеграм-канале @ibragim_txt. Некоторые заметки оттуда легли в основу этого текста. Заходите почитать и поучаствовать в обсуждениях под постами.

Комментарии (20)


  1. nerudo
    16.11.2021 11:15
    +1

    Школа 21, а на сертификате 42. Это маркетинг такой?


    1. dissdoc
      16.11.2021 11:28
      +2

      Два раза школу закончил. Поэтому в два раза больше навыков :)


    1. Ibragim_bad Автор
      16.11.2021 11:37
      +1

      Изначально школа была франшизой Ecole 42, поэтому сертификат двойной. От Школы 21 и Ecole 42.


      1. nerudo
        16.11.2021 11:38
        +4

        Дает только половину ответа на Вопрос?


  1. putnik
    16.11.2021 12:29
    +6

    Как человек, наблюдавший за обучением в Школе 21 со стороны, не готов её никому советовать. Да, если вы всё же пройдёте её, то наверняка многому научитесь. Только это скорее вопреки, а не благодаря. Огромная часть обучения — это бесконечные циклы сдачи задач (тупые валидаторы, ничего не понимающие пиры и всё такое прочее). Вот ровно полная противоположность какой-нибудь Курсере, где делают всё возможное, чтобы обучение было лёгким и приятным. Тут же наоборот, вся система построена так, чтобы ученики страдали. Не говоря уже про дико токсичную атмосферу как со стороны кураторов, так и поведение пиров, которое никак не пресекается.

    В общем, кто прошёл — молодцы. Но система от этого хорошей не становится.


    1. tendzin1966
      16.11.2021 16:11
      -1

      Огромная часть обучения — это бесконечные циклы сдачи задач 

      вся система построена так, чтобы ученики страдали

      Хм... Какая хорошая рекомендация!


      1. putnik
        16.11.2021 16:44
        +4

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

        Что происходит: сначала вам нужно набрать баллы, для этого вы проверяете двух (если правильно помню) других учеников. Потом два ученика проверяют вам (на это тратятся баллы). После этого вы загружаете задачу в автоматическую систему, и она говорит, что у вас ошибка, поэтому задача не будет принята. Но при этом она не говорит, какая именно и где. Итого, вы потратили четыре часа, чтобы просто узнать, что ваша задача не будет принята.

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


        1. sergeyns
          16.11.2021 18:19

          Очевидно, их учат лучшим корпоративным практикам! *сарказм*

          Чтоб все по инструкции, все замучались, и никакого результата


        1. PP189B
          16.11.2021 19:40
          +1

          Отвечу как действующий ученик школы 21

          Для начала уточнения: автоматическая проверка проектов есть только на бассейне и 3-4 первых проектах основного этапа обучения. Далее только проверка с пирами и экзамены.

          Также стоит отметить, что система не всегда говорит "у вас есть ошибка, ничего не знаю". В большинстве случаев на почту приходит подробный (хоть и страшный) трейс проверки, да и на странице самого проекта отмечается, где примерно ошибка (например, по заданию надо реализовать набор функций, и проверка покажет, какая функция неправильная)

          Теперь по проверкам, которые, как вы говорите, долгие, душные и не приносят результата. В основном я буду иметь в виду основное обучение.

          Во-первых, сами проверки занимают существенно меньше времени, чем выполнение проекта. (Особенно когда приходят новые ученики с первыми проектами, там можно и пофармить очки проверок, хе.) И сдать проект с 2-3 раза -- норма (ну, сужу по большинству) , это не так страшно. Конечно, если не ходить в школу и делать проекты ближе к дедлайну, то да, уже на третьей попытке будут поджимать сроки и т.п. Но в целом школа даёт достаточно времени на ошибки.

          Во-вторых, неправильный проект или проверка чужих проектов приносят огромный опыт. Да, бывают по-настоящему душные пиры, которые возможно этот проект ещё даже не начали или знают слишком подробно, но оказывается, что это даже полезнее обычных проверок "у тебя все норм, держи все пункты". Тупые или душные вопросы могут навести на вполне важные и полезные мысли, про которые тебе казалось, что ты их знал чуть ли не лучше всех. Помним, что тут нет лекций и учителей, и надо как-то контролировать свой процесс обучения. Основная идея: "сможешь объяснить кому-то -- значит знаешь".

          В-третьих да, бывает, что твой проект заваливают на одной простой ошибке. Как сказал автор поста -- это очень хорошо воспитывает перфекционизм (, выпускать в прод программу с критическим баном -- не самое лучшее дело). Однако основную массу ошибок составляют критические: утечки, неопределенное поведение, ошибки в расчетах или архитектуре и т.п.

          (В-четвертых, скажу честно, что очень часто мелкие ошибки по факту прощаются пирами, особенно перед дедлайнами. )

          Так что в общем-то, никакого "подметания ломом" тут нет. Суровая правда: есть ТЗ, должен быть результат.


          1. sshikov
            16.11.2021 22:26

            >Во-первых, сами проверки занимают существенно меньше времени, чем выполнение проекта.
            Ну еще бы не хватало, чтобы ревью занимало больше времени, чем выполнение…

            >но оказывается, что это даже полезнее обычных проверок
            Обычных — это каких? Вот как-то не верится, что ревью со стороны сокурсников может быть (в среднем — наверное исключения бывают) полезнее ревью со стороны ментора, при условии что ментор более-менее хороший и опытный.

            >Основная идея: «сможешь объяснить кому-то — значит знаешь».
            Ну, идея-то неплоха, но — как вы понимаете, что он понял? Ну если вы на одинаковом (низком) уровне понимания темы, возможно, вы оба ошибаетесь? Ну и в целом, иногда полезно объяснить кому-то, чтобы понять самому, но если это единственный способ обучения — то он не выглядит таким уж хорошим. Иногда ведь полезно и опытных людей послушать.


            1. PP189B
              16.11.2021 23:58

              >Ну еще бы не хватало, чтобы ревью занимало больше времени, чем выполнение…

              Тем временем типичная сдача заданий в обычном универе, которые порой занимают месяц, а то и два...
              Так что да, потратить 4 часа (а вообще и меньше) на цикл проверки других и себя в сравнении с выполнением в неделю-две-месяц это вполне себе

              > Обычных — это каких?
              "у тебя все норм, держи все пункты" -- прям следом идет. Я имею в виду ситуацию с полностью правильным со стороны проектом, по которому даже специфичных вопросов задать негде, кроме "а что делает этот кусок кода?"

              > не верится, что ревью со стороны сокурсников может быть [...] полезнее ревью со стороны ментора
              На самом деле в школе много людей среднего уровня, в том числе с технических универов. Также в качестве проверяющих часто идут люди с высоким уровнем (буквально, уровень в системе школы), которые ушли дальше по проектам или вовсе прошли первую стажировку (не факт, что единственную, никто не мешает работать до стажировки как проекта), так что их уровень знаний тоже имеет некоторый вес
              Но да, это ни в коем случае не сравнится с ментором. Те же навыки командной работы, а то и хорошей архитектуры некоторые получают лишь на самой стажировке! Однако, само устройство школы явно намекает на важность отсутствия менторов, и я пожалуй перечислю пару важных пунктов:
              1. Школа учит учиться, разбираться в документации, следовать ТЗ самостоятельно, без подсказок выше. На первой работе и далее при изучении любых новых вещей менторов не будет.
              2. Школа ориентируется на практику и взаимодействие с окружающими людьми (P2P же). Собственно, даже с ментором нужно много практики
              3. Как я отметил рание, стажировка -- это не цель, как во многих "онлайн курсах с менторами с десятилетним стажем", а лишь один проект по завершении очень базового набора проектов (при медленном выполнении растягивается на год). Думаю, не стоит уточнять смысл этого

              >Ну, идея-то неплоха, но — как вы понимаете, что он понял? Ну если вы на одинаковом (низком) уровне понимания темы, возможно, вы оба ошибаетесь?
              Обычно на один проект 3 проверки. Так что попасть на 3 таких же непонимающих очень трудно. Но даже если и получится, те же знания пригодятся в следующих проектах, и игнорировать их неправильное понимание уже не получится, ну а там снова: здравствуй P2P

              >Иногда ведь полезно и опытных людей послушать.
              В интернете существует множество учебных материалов, лекций, простых видео, людей с рабочим опытом. Собственно, все это можно использовать и самому, не надо даже из дома выходить.
              Просто школа предоставляет место, в котором ты можешь сосредоточиться, среду, в которой фактически все твои единомышленники, и дедлайны, которые позволяют контролировать себя (ну и деньги, которые на тебя тратят, хе)


              P.S. Как опять же говорилось, школа как единственное место обучения -- не самая лучшая идея. Очевидно, что где-то надо брать и чисто профильные академические знания. Опять же, школа -- лишь место и окружение, средство для воспитания самообразования.


              1. sshikov
                17.11.2021 07:15

                >Как опять же говорилось, школа как единственное место обучения — не самая лучшая идея.
                Я примерно это же и имел в виду, просто другими словами. Идеи в общем-то все описаны разумные, просто кривая реализация способна испортить любую гениальную идею )


              1. ainoneko
                19.11.2021 14:49

                Обычно на один проект 3 проверки. Так что попасть на 3 таких же непонимающих очень трудно. 

                Не раскрыта тема с баллами для проверки: первый проект -- групповой, от 2 до 5 человек, с 3 проверками на попытку, поэтому проверяющие зарабатывают на нём три балла, а проверяемые теряют от 6 до 15 (по три каждый), так что скоро баллы в системе просто кончатся.

                1. Школа учит учиться, разбираться в документации, следовать ТЗ самостоятельно, без подсказок выше.

                А должна учить уточнять ТЗ, а не получать на каждый уточняющий вопрос ответ "не скажем".

                В большинстве случаев на почту приходит подробный (хоть и страшный) трейс проверки,

                А в меньшинстве (если статистика верна) -- просто "Build failed" для каждой функции.


          1. ainoneko
            20.11.2021 07:19

            > Как сказал автор поста — это очень хорошо воспитывает перфекционизм
            Разве автор поста сказал не противоположное?
            (Перфекционизм надо сдерживать («держать под контролем»).
            Из-за дедлайнов идеально не получится.
            «ошибка – это часть фидбек лупа» (другое дело, что с фидбеком на бассейне было не очень)).


    1. KoteMilote
      17.11.2021 15:29

      Зато бесплатно


  1. sergeyns
    16.11.2021 14:06
    +1

    Главный вопрос - потом в сбер на какую зп берут? И берут ли...


    1. sshikov
      16.11.2021 22:17

      А кто сказал, что кого-то берут? Автор вроде написал, что участвовал в соревновании, по итогам прошел еще интервью. Это почти такой же путь, как для человека со стороны… почти.

      Ну т.е. это не значит, что школа ничего не дает — это значит, что она дает возможность пройти интервью, например, помимо базового фильтра HR.


  1. Redrik05
    16.11.2021 14:44

    единственный плюс - школа бесплатная. Думаю, что обучение с ментором будет эффективнее


    1. iptester
      16.11.2021 22:14

      Нет никакого плюса, вас для участия в бассейне попросят подписать соглашение, в одном из пунктов которого является принудительное подписание договора которого вы не увидите, а если завалитесь, то будете должны 50000+ российских рублей


      1. PP189B
        17.11.2021 00:02
        +1

        Эта информация очень древняя и устаревшая.
        Штрафы отменили года 1.5-2 назад

        На самом деле и опыт автора поста тоже немного устарел, схему проектов очень поменяли, и теперь нету отдельных веток с графикой, алгоритмами, все идет вместе и комплексно

        Насчет плюсов, думаю, вам не интересно будет