Колаборація та автоматизація у фронтенді. Чому ми навчилися за 13 шкіл

Всім привіт. Колеги нещодавно писали у цьому блозі, що відкрилася реєстрація до наступної Школи розробки інтерфейсів у Москві. Я дуже радий новому набору, адже я був одним із тих, хто вигадав Школу у 2012 році, і з того часу постійно їй займаюся. Вона еволюціонувала. З неї вийшло ціле міні-покоління розробників з найширшим кругозіром і здатністю взяти на себе в проектах взагалі все, що пов'язане з фронтендом. Хтось із випускників працює в Яндексі, хтось ні.

Колаборація та автоматизація у фронтенді. Чому ми навчилися за 13 шкіл

ШРІ – як сервіс: теж потребує різних форматів взаємодії, автоматизації та експериментів. Ось про це і поговоримо сьогодні на Хабрі. Будуть корисні посилання для кандидатів.


Не хочу сильно повторюватись: вся основна інформація про ШРІ 2019 є на сайті. Тільки нагадаю про можливості для хлопців із інших міст: вкажіть в анкеті, якщо хочете пройти першу частину (з 7 вересня до 25 жовтня) заочно. Звичайно, тим, хто впорається з тестовим завданням, ми не відмовимо й у очній участі — сплатимо хостел та харчування.

Ми запрошуємо до ШРІ всіх, хто цікавиться фронтенд-розробкою та відчуває гостру нестачу в практиці. Під час Школи студенти здобувають досвід командної розробки, навчаються системному мисленню та прокачують навички, необхідні для майбутньої роботи в Яндексі та схожих компаніях. Кар'єрний трек випускників ШРІ виглядає приблизно так: спочатку вони стають молодшими розробниками, потім розробниками та згодом керівниками груп.

Це буде сьома Школа у Москві та чотирнадцята, якщо враховувати всі міста, де її проводили – Сімферополь, Мінськ, Єкатеринбург, Санкт-Петербург. У нас гнучкий проект. Щоразу ми прислухаємося до зворотного зв'язку студентів: щось змінюємо, прибираємо, додаємо виходячи з їхніх потреб та змін в індустрії.

Початок навчання

Ми робимо вступне завдання досить складним. За змістом завдання для набору в Москві схоже на те, що було у мінській ШРІ цього року. Ми дамо завдання на динамічну верстку, на написання JavaScript, і потрібно буде розібратися в новій предметній області. За нашими підрахунками, на його виконання піде 5-7 днів, може трохи більше.

Після зарахування до Школи учасники мають пройти два етапи. На першому з них студенти слухають лекції, виконують домашні завдання та потім розбирають їх разом із викладачами та іншими студентами прямо на заняттях. Виходить сильний ефект синергії.

Одна з лекцій обов'язково проходить у більш інтенсивному форматі, ніж інші. На ній ми займаємося алгоритмами: кілька годин поспіль учні практично пізнають ключові алгоритмічні прийоми.

Під час другого етапу учасники об'єднуються один з одним у невеликі команди та працюють у режимі хакатонів (ми називаємо їх шрикатонами). Весь другий етап студенти працюють над реальними проектами під менторством Яндекса. У фіналі захист проектів. Найвдаліші мають реальний шанс потрапити у продакшен.

Так було завжди.

Як ШРІ змінювалася

Вперше ми провели Школу у 2012 році. Спочатку ідея була в тому, що нам самим не вистачало фахівців і ми вирішили їх вирощувати. Але навіть тоді ми не обмежували студентів у тому, де їм потім працювати. Важливо вирішувати високорівневе завдання — посилювати велику екосистему, повертаючи до неї випускників із набутим глибоким розумінням фронтенду. На конференціях та зустрічах із розробниками видно, як цей процес приносить свої плоди.

Формати та програма

Раніше були лише лекції із домашніми завданнями та захистом випускного проекту. До того ж лекції широкі, розраховані на базовий рівень знань студентів. Поступово ми зрозуміли, що це не так багато сенсу. Вся інформація і так доступна в онлайні, важливіше мотивувати студентів самим знайти потрібну інформацію, задати їм правильний вектор і загалом прищепити бажання навчатися. До того ж, за роки проведення ШРІ у нас накопичилося багато матеріалу за базовими темами, і ми регулярно його оновлюємо.

Сьогодні більше концентруємося на громадському аналізі домашніх завдань. Це важлива частина процесу освіти. Спільний розбір найпоширеніших проблем у кожній темі після кожної лекції добре допомагає на практиці закріплювати матеріал.

Коли вигадали формат шрикатонів, це додало певного boost процесу. До того студенти готували випускні проекти вдома самотужки. Ми подумали, що було б ефективніше прокачувати командну роботу. Цей скіл якраз складно отримати, якщо ти розробник інтерфейсів, який працює в невеликій компанії, і тим більше якщо фрілансер. На шрикатонах у кожній команді є ментори з Яндекса – досвідчені розробники, вони допомагають студентам налагодити взаємини та побудувати робочий процес.

Колаборація та автоматизація у фронтенді. Чому ми навчилися за 13 шкіл

Один із шрикатонів

Ще ми пробували формат об'єднаних шкіл, коли працювали у контексті «Мобілізації» — освітнього проекту 2017 року щодо розробки мобільних продуктів. Об'єднували в команди одночасно студентів зі ШРІ, Школи менеджерів, Школи мобільної розробки та Школи мобільного дизайну.

Цього року хочемо повторити щось подібне: зробимо змішані команди зі ШРІ та студентів із Школи бекенд-розробки.

Перевірка тестових завдань

Щороку тестове завдання стає трохи складнішим для вступників, а його перевірка трохи легша для нас. До першої школи прийшли десятки заявок — ми перевіряли їх тоді вручну. Цього року буде близько двох тисяч заявок. Довелося оптимізувати процес перевірки: ми зробили єдиний чек-лист та розподілили перевірку завдань серед великої кількості людей. Минулої ШРІ ми вже пробували, і на цій посилюватимемо різні автоматизації та напівавтоматизації перевірочного процесу. Наприклад, будемо використовувати автотести для швидше перевірки робіт, перш ніж віддати їх на експертну оцінку розробнику.

Команда

В організації та проведенні ШРІ задіяно близько ста осіб. Це розробники інтерфейсів із усього Яндекса з усіх відділів, навіть із бізнес-юнітів. Хтось допомагає складати програму, хтось проводить лекції чи курирує шрикатони. Оскільки організаторів багато, це не заважає поточним робочим завданням співробітників. Для них тут теж користь: вони навчаються навчати інших, ментувати і загалом робити складніші проекти. Win-win.

Люди

Як і в наших вакансіях та стажуваннях, тут немає обмежень за віком. Ми чекаємо студентів вузів та спеціалістів, які мають мінімальний досвід фронтенд-розробки. Для нас важливо, щоб у людини було бажання та здатність навчатися.

Студент ШРІ перебуває у прикордонному стані: він уже щось знає та вміє, але у нього можуть бути відсутні системні знання та досвід командної розробки у великих компаніях, йому не вистачає практики. ШРІ не навчає з нуля.

При цьому ви можете не бути фронтендером, а займатися, наприклад, дизайном, технічним проектним менеджментом або бекенд-розробкою. У будь-якому випадку, якщо ваших знань і досвіду достатньо для виконання тестового завдання, є сенс йти вчитися в ШРІ. Поглиблене знання фронтенду дозволить краще розуміти проблематику колег.

Якби кожен дизайнер і менеджер, з якими ми працюємо, мали такий рівень розуміння розробки інтерфейсів, усім точно стало б краще.

За роки проведення Школи ми помітили, що розробники, які приходять працювати в Яндекс із ШРІ, показують чудові результати на внутрішньому реві.

Ми пов'язуємо це з тим, що у ШРИшників правильний спосіб мислення та архетип учня. Вони дивляться на світ з розплющеними очима, не соромляться питати, якщо щось незрозуміло. Вміють працювати самостійно та легко поєднуються з іншими.

З інших міст

Ми привозимо студентів з усієї Росії, тому що активне навчання та спільне проживання з однодумцями створює дуже інтенсивний режим – тим самим вириваючи їх із домашнього контексту. Це як літній табір, студентський гуртожиток чи популярний нині формат колівінгу. Деякі учасники з Москви заздрять і просять підселитися до однокурсників у хостел.

Очно-заочне навчання

Цього року перший етап із лекціями та домашніми завданнями можна буде пройти у заочному режимі, віддалено — прямо зі свого міста. Але на другий етап необхідно приїхати до Москви, оскільки далі розпочинається магія командної роботи. Поки що ми не знаємо, скільки місць буде доступним для віддаленого навчання. Тут важливим є психологічний момент групової динаміки, важливо відчувати причетність до групи.

Нам хочеться, щоб студенти, які навчаються на одному потоці, спілкувалися, ставали друзями. Якщо половина вступників навчатиметься віддалено, а потік буде занадто великим, наприклад, 100 чоловік, то виникне неприємний ефект самотності в натовпі. Тому на одному потоці ми зазвичай маємо 30–40 студентів.

Статистика переходів в Яндекс

З кожного потоку останніх років ми беремо на стажування та вакансії від 60% до 70% випускників.

Загалом у ШРІ відучилися 539 студентів, 244 з них стали співробітниками Яндекса (не рахуючи тих, хто був лише на стажуванні). Зараз у компанії працюють 163 випускники.

Зі Шкіл минулого року ми працевлаштували в компанію 59 осіб: 29 стажерів, 30 штатних розробників. Випускники працюють у найрізноманітніших сервісах Яндекса: Директі, Пошуку, Пошті, головній сторінці, Маркеті, Геосервісах, Авто, Дзені, Метриці, Здоров'ї, Грошах.

БЕМ та гібридний підхід до мобільної розробки

ШРІ не зав'язана на БЕМ. Звичайно, якщо говорити про розробку інтерфейсів, ми маємо на увазі таку, що склалася в Яндексі — тобто великі навантаження, багато користувачів, високі стандарти якості та увага до деталей. Навіть для створення маленьких регіональних сайтів важливо розуміти підмурівок професії, розбиратися, на чому можна заощадити і чому, а на чому ні. На прохання студентів ми одну з лекцій присвятили БЕМ, оскільки ця методологія багато де стала стандартом.

Ми навчаємо саме веб-розробку та супутні технології, а також мобільну розробку та мобільну верстку в контексті веб-технологій, використовуємо гібридний підхід до створення додатків. Тому в ШРІ ми не торкаємося аспектів програмування нативного на Swift, Objective-C, Cocoa, C++, Java. Також не торкаємось розробки під React Native.

Відкритий вебінар

Цієї середи, 19 червня, о 19:00 мск мої колеги і я організуємо вебінар про Школу — відповімо на запитання тих, хто думає вступати або вже почав робити завдання (зрозуміло, в коментарі до цієї посади теж прийду). Ось посилання на YouTube можна натиснути «нагадати».

Що почитати для підготовки

Корисні сайти

- Сучасний підручник JavaScript
- WebReference
 
Книги

- JavaScript. Детальний посібник (6-е видання), Девід Фленаган
- Ідеальний код, Стів Макконнелл
- Рефакторинг. Поліпшення існуючого коду, Мартін Фаулер  
- Книга Git
 
Курси на Udacity (посилання)

- Linux Command Line Basics
- Browser Rendering Optimization
- Website Performance Optimization
- JavaScript
— Networking for Web Developers
- HTML5 Canvas
- Responsive Images
- Responsive Web Design Fundamentals
- Offline Web Applications
- Web Tooling & Automation
- JavaScript Testing
— Intro to Progressive Web Apps
- Software Testing
— Object-Oriented JavaScript
 
Відеоматеріали

- Канал Академії Яндекса
- Матеріали ШРІ
- Скринкаст за Node.js
- Скринкаст по Webpack 
- Скринкаст по Gulp
- Основи ES6
- Підручник Javascript для початківців
- Javascript Fundamentals
- Modular Javascript
- React JS Tutorials
- Redux Tutorials
- LearnCode.academy
- CodeDojo
- JavaScript.ru
- Розробники Google
- Розробник Microsoft
- Facebook Розробники
- Технострім Mail.Ru Group
- НОУ ІНТУІТ

А спробувати себе у вирішенні завдань можна на CodeSignal.

Це не повний перелік, є ще багато корисних матеріалів. Ми швидше хочемо, щоб вступники звернули увагу на певні теми, надали їм час. Важливо, щоби студенти самі захотіли шукати інформацію.

Джерело: habr.com

Додати коментар або відгук