Роман Шуварик - старший інженер-програміст - або, як в народі кажуть, сіньйор девелопер - у компанії ElifTech, раніше працював у SoftServe, RetailMeNot, Intellias, має досвід роботи за кордоном - у США та Німеччині. Свого часу повернувся на Батьківщину, щоб поділитися досвідом з іншими і підняти загальний рівень якості ІТ в Україні.
З лютого 2017 року Роман ще й читатиме лекції у LITS. Отже, знайомтеся з автором і викладачем курсу Basic DevOps for WebDevelopers.
Роман, розкажи, будь ласка, цікавий випадок про себе, замість формального представлення.
Коли я ще працював у Німеччині і був звичайним собі фронтендщиком, стався випадок, який сильно вплинув на моє професійне життя.
Якось вранці забігає в офіс один з топ менеджерів компанії, бачить, що нікого окрім мене немає, і, майже в паніці, кричить: “Ваш сервіс лежить. Що ти робиш щоб його підняти?”. Все, на що я спромігся, це видавити: “Я лише фронтенд-інженер”. Знаєш, люди іноді розповідають, як в останні миті перед смертю, у них перед очима пробігало усе життя. От так і в мене було за ті кілька митей, поки менеджер переварював мою відповідь і, на кінець, видав: “А мені байдуже, будь ти хоч прибиральницею; сервіс - твоєї команди, значить, ти маєш його підняти”! Це і був переломний момент, коли я зрозумів, що у світі не існує поділу на фронтенд, бекенд, девопс; і, якщо ти хочеш бути цінним працівником, мусиш “драйвити” проект повністю, від початку і до кінця. Сьогодні я маю за своїми плечима роки практики, досвіду і своє бачення, якою може бути IT освіта. Саме тому я тут, в Україні.
Ти не раз змінював роботу і локацію, розкажи про найцікавіші проекти.
Зараз я працюю у компанії, яка дає можливість паралельно займатися цікавими проектами, як наприклад IoT. Оскільки моє хобі - це залізничне моделювання, то це якраз те, що зараз поглинає мій вільний час.
Над цікавим проектом я з невеличкою тімкою працював у Німеччині. Тоді я вперше побачив, як програмісти різного рангу і профілів можуть за короткий час організуватися і, не зважаючи на свої особливості, реалізувати реально крутий сервіс (щось на кшталт хакатону на роботі). Звичайно, нас винагородили, однак, найбільша насолода полягала в тому, що ми це могли зробити лише за три дні, швидко і якісно. В результаті, кожен учасник мав змогу вести свою частину завдання від аналізу до деплойменту, ніхто не чекав, поки зроблять бекенд, формалізують вимоги, чи поверстають мокапи. Кожен робив все, від початку і до кінця.
Тепер ти повернувся і став частиною нашої команди. У лютому в тебе стартує курс, тож нам було би цікаво дізнатися більше про твоє бачення сучасної ІТ освіти: що б ти залишив, а що - змінив?
До від'їзду у Німеччину я брав участь в освітньому проекті Lviv IT Cluster, що об’єднував викладачів університетів і експертів софт-компаній. Мені дістався 3-й курс “розробників”, яким за семестр я мав прочитати близько 20 лекцій з програмування. Я підготував курс, орієнтований на студентів вже з певною базою і знаннями, однак в процесі навчання виявив, що підготовки як такої в них не було взагалі. Прийшлося на ходу змінювати програму курсу і давати базові речі, які, судячи з навчальної програми, мали бути після мого курсу.
З часів мого навчання в Політехніці нічого не змінилося: застарілі залізо і навчальна програма, немає ніякого підходу до студентів. Нічого дивного, що викладач, який працює за копійчану зарплату, не може розказати студентам, які можливості відкриває світ ІТ, адже він сам цього не розуміє.
Безсумнівно, є винятки. Зазвичай, це молоді викладачі-аспіранти або ті, хто паралельно працює в ІТ-компанії. Вони проводять динамічні і цікаві уроки та вміють зацікавити студентів практичними завданнями. Таких небагато, однак вони намагаються змінити щось в навчанні.
А як щодо навчання школярів? Нещодавно закінчилася Година коду, в якій ти брав безпосередню участь. Чи є різниця між тим, як навчати студентів і школярів?
Щодо моїх власних спостережень, то вчити цікавіше наймолодших. Вони швидко схоплюють нову інформацію, і, що дуже важливо, взаємодіють. Я помітив, що вся група розв'язувала завдання набагато швидше, ніж поодинокі школярі. Старшокласники спокійніші і віддають перевагу самостійній роботі. А до університету вони взагалі втрачають навички працювати колективно. В той самий час, коли молодші класи гучно перекричуютчи одне одного, але, що найцікаве - колективно виконували завдання за завданням і потім бігали по всьому класу показуючи іншим, як пройти той чи інший рівень.
Як вважаєш, можна дорослих людей зацікавити навчанням?
Можна. Просто не потрібно оцінювати одноосібно. Звичайно, в кінцевому результаті плюсуються напрацювання особисті, але не менш важливим є і оцінка проекту загалом - чи реалізувала команда мету і виконала поставлену задачу. Так само і з програмуванням, в якому дуже важливим є вміння працювати у команді, тобто взаємодіяти.
Існує думка, що “ти повинен бути кращим в усьому і ти повинен бути сам”. Насправді, реальний світ показує, що ти повинен бути хорошим в тому, що робиш, але не потрібно йти до цього ціною інших людей. Допомагати іншим - це не поразка, а перемога. Адже тільки так можна досягнути спільної мети. Це те, що потрібно одразу пояснити: взаємодія набагато важливіша за конкуренцію.