
В даній статті пропонується незалежний погляд на розвиток та перспективи ІТ галузі у майбутньому, як вища університетська освіта реагує на ці тренди. Які є ІТ спеціальності, які є відмінності між ними, і власне як зробити свій вибір. Цей матеріал є записом розмови з завідуючим кафедрою математичного моделювання та інтелектуальних обчислень в інженерії Олексієм Олександровичем Водкою, та директором навчально-наукового Інституту комп’ютерного моделювання, прикладної фізики та математики (ІКМ) Олексієм Олександровичем Ларіним.

Водка Олексій Олександрович – завідувач кафедри математичного моделювання та інтелектуальних обчислень в інженерії, кандидат технічних наук, доцент, лауреат премії президента України для молодих вчених.

Ларін Олексій Олександрович – директор навчально-наукового Інституту комп’ютерного моделювання, прикладної фізики та математики (ІКМ) доктор технічних наук, професор.

Кафедра математичного моделювання та інтелектуальних обчислень в інженерії – випускаюча кафедра за спеціальностями 122 “Комп’ютерні науки” та 113 “Прикладна математика”, готує спеціалістів у галузі математичного моделювання з 1930 року, з 1999 року готує фахівців з комп’ютерних наук, кафедра входить до складу Навчально-наукового Інституту комп’ютерного моделювання, прикладної фізики та математики (ІКМ).

Інститут комп’ютерного моделювання, прикладної фізики та математики (ІКМ) – Сьогодні Інститут комп’ютерного моделювання, прикладної фізики та математики – це унікальний синтез глибокої фізико-математичної підготовки, фундаментальних основ комп’ютерних наук, сучасних інформаційних технологій та навичок практичного інженера. Надаємо академічну університетську освіту та напрями її прикладної реалізації – це ренесанс всесвітньо відомої системи підготовки – “фізтех”.
Вступ

Сьогодні багато молоді замислюється над тим аби зв’язати своє майбутнє з ІТ бізнесом. Це реакція на активне зростання ІТ галузі у світі та в Україні, на існуючий шалений попит на відповідних фахівців.
Сучасне ІТ пройшло етап трансформації, і виросло з інформаційно-розважального та офісного застосунку до тотальної діджиталізації, що поступово та невпинно проникає в усі сфери життя, в усі галузі економіки. ІТ-шники створюють програмні сервіси та продукти для фінансового сектору, медицини, сільського господарства, звісно, інженерії та техніки і так далі. Інформаційні рішення стають все більш спеціалізованими, а тому складними та розгалуженими, майже всі мають мережеві компоненти, здійснюють передачу та обробку великої кількості даних.
Сьогодні для будь-якого продукту є нормою використання інтернет технологій, зростає використання елементів фізичної мікроелектроніки для збору потоків даних та методів штучного інтелекту для інтелектуального аналізу цих даних для автоматизованого прийняття рішень.
Складність програмних продуктів, які створюються, визначає особливості життєвого циклу та методології їхньої розробки. Сьогодні ми завжди працюємо в командні над конкретними проектами. Ці проекти мають пройти типові для виробництва стадії:
- Формування технічного завдання;
- Проектування майбутньої програми (формування моделей, алгоритмів, створення архітектури майбутньої системи, вибір технологій для реалізації);
- Реалізації — застосування існуючих технологій для відтворення задуманого;
- Тестування та впровадження.
Я хочу наголосити, що гнучкі методології реалізації цього циклу на сьогодні передбачають спіральне відтворення та контрольовані ітерації. Це, в певному сенсі, перемішує етапи між собою. Але чим складнішим завдання, тим важливіша є спеціалізація та незалежність фахівців для кожного конкретного виду робіт. Для успіху проекту важливо досягнути якісних результатів на всіх етапах.
Перший етап — постановка технічної задачі — це переведення проблеми зі звичайної предметної області у мову програмістів. Відповідні фахівці повинні мати добрі знання в області ІТ технологій та існуючих підходів. Тут важливими є перетин аналітичних навичок зі SoftSkills (м’які навички, наприклад спілкування, взаємодія в команді тощо).
Другий етап, мабуть, найбільш складний та творчий — це створення ІТ рішення. Відповідні фахівці мають розробити концепцію, ідею, визначити моделі та підходи, і розробити алгоритми для реалізації. Це творча робота, яка разом із цим потребує аналітичного підходу та глибинних знань в галузі комп’ютерних наук, математики та, інколи, фізики. Без якісної вищої освіти буди справжнім архітектором нових ІТ рішень неможливо!
Третій етап — технологічний — фактично мова йде про наявність у спеціалістів гарних знань в області технологій та навичок їхнього застосування. Відповідних спеціалістів часто називають кодерами — тобто людьми, які пишуть програмний код. Технологічною також можна назвати й роботу, яка потребує навичок використання ІТ інструментів для різних застосувань.
Остання (четверта) стадія будь-якої ітерації життєвого циклу є тестування — це переважно рутинна робота. Багато традиційних його складових може бути автоматизовано. У найближчому майбутньому слід очікувати трансформації — переходу на використання інтелектуальних аналітичних завдань в галузі оцінки якості продуктів і сервісів, забезпечення стабільності їхнього функціонування. Така робота стане аналітичною і вимагатиме не лише технічних навичок, але й глибинних теоретичних знань.
Якщо підвести резюме розгляду основних етапів створення ІТ продуктів та/або сервісів, то є два глобальних напрямки: робота з технологіями (технологічний), та проектування систем (інженерний).
Фахівець інженерного напрямку — це той, хто вигадує, проектує, моделює нові рішення та аналізує результати;
Фахівець технологічного напрямку — це той, хто володіє інструментами, адекватними для реалізації того що вигадав інженер.
Парадигми в ІТ
Сучасний ІТ-світ складається з чотирьох основних парадигм, і вони вже коротко були розглянуті вище, однак для кращого розуміння спеціальностей поглянемо на них ще раз.
Отже перша, ближча до фізики та заліза, пов’язана з програмуванням для пристроїв, девайсів, таких як: розумні гаджети, різноманітні трекери, побутові пристрої, й не тільки побутові. Розумні девайси широко використовуються в сучасному машинобудуванні, інженерії. Зараз вже їх дуже багато, і вони все більше і більше проникають у наш світ. Це все, так званий, hardware. Але це розробка програм для hardware, програмування для заліза.
Друга частина — це класична розробка програм, software development у класичному розумінні. Розробка веб сервісів, мобільних застосунків, розробка класичних desktop-програм. Ця сфера є дуже потужною і буде активно розвиватись у наступні роки.
Третя частина — це математична частина. Назвімо її «Аналітика та моделювання». Ми розуміємо, що чим далі просувається діджиталізація, тим більше даних виникає. Тому потрібно ці дані аналізувати. Тут є вирішальними системи штучного інтелекту, інтелектуального аналізу даних та інші складні алгоритми. Це новий, цікавий, бурхливий світ, і він є складовою частиною ІТ галузі. Тому, як і в попередніх напрямках, потрібні програмісти, які будуть це все реалізовувати у вигляді коду.
І остання, четверта, але майбуть найбільша частина, пов’язана з управлінням та адмініструванням складних інформаційних систем. З часом всі інформаційні системи стають складнішими, це характерно для всіх систем, від тих, що використовуються у звичайному супермаркеті, до надзвичайно потужних систем на основі хмарних технологій. Тому ефективне управління такими системами стає все більш важливим.
Вище були представлені чотири блоки:
- Програмування пристроїв;
- Класичне програмування;
- Аналітика та моделювання;
- Управління та адміністрування;
І кожна ІТ-Спеціальність спирається на них. А для того, щоб було краще зрозуміти — ми підготували для вас інфографіку.
ІТ Спеціальності: з чого вони складаються?
Тепер давайте поговоримо, на яких спеціальностях в університетах України й Світу готують фахівців і для яких напрямків діяльності: де більше інженерного, а де більше технологічного.
Спеціальності 121 — Інженерія програмного забезпечення та 126 — Інформаційні системи та технології
Типовими технологічними спеціальностями є 121 — Інженерія програмного забезпечення та 126 — Інформаційні системи та технології. Ці дві спеціальності відповідно до міжнародних стандартів освіти, та стандартів МОН України своїм найбільшим фокусом у навчанні визначають технології та засоби розробки програмного забезпечення та інформаційних систем. 121 спеціальність готує класичних програмістів — кодерів, а 126 — фахівців зі створення, адміністрування та супроводу інформаційних систем. Для роботи тут надзвичайну цінність має практичний досвід та актуальність технологічних навичок. Попит на відповідних фахівців в Україні зараз є величезним, оскільки діючий ІТ-бізнес має out-source та out-staff моделі, тобто виконують роботи за вже сформованими завданнями та проектами. Проте слід відзначити, що останні тенденції свідчать про зміну орієнтації більшості Українських компаній на сервісну модель або продуктову. Це з часом призведе до змін вимог до фахівців і їхнього призначення.
Спеціальності 122 — Комп’ютерні науки та 123 — Комп’ютерна інженерія
Класичними інженерними ІТ-спеціальностями є 122 — Комп’ютерні науки та 123 — Комп’ютерна інженерія — це ті спеціальності, які готують фахівців для створення нових алгоритмів та нових технічних ІТ-рішень. Фокус навчання в цих спеціальностях лежить на алгоритмах та методах збору і обробки даних, інформації. У навчальному процесі суттєва увага приділяється фундаментальній математичній підготовці, теоретичним аспектам інформатики та, інколи, фізики. Фахівці з цих спеціальностей є архітекторами ІТ-рішень, відповідають за їхню якість, ефективність, достовірність моделей. 123 спеціальність при цьому зосереджується на програмуванні пристроїв, на роботі із так званим hardware. Спеціалісти мають добре розумітись на електроніці, вміти програмувати на “низькому” рівні, на рівні взаємодії програм з обладнанням, на рівні драйверів, сенсорів, процесорів та рівні операційних систем.
122 спеціальність своїм серцем має науки про обчислення та алгоритми. Вона містить досить багато математики, яка надає аналітичності у підготовці, готує до іншої парадигми ІТ-роботи у порівнянні з класичною розробкою. Це парадигма полягає в тому, що кінцевим результатом роботи фахівця є комп’ютерна модель (у формі: математичній, алгоритмічній чи цифровій). Модель яка здатна відтворити у цифровому вимірі реальний фізичний процес або об’єкт, який дозволяє автоматизовано (без участі людини) прийняти рішення, знайти оптимальні чи ефективні параметри. Слід відзначити, що питанням програмування приділяється багато уваги, так само як і знанням в галузі технологій. Дійсно, 122 спеціальність приділяє увагу математичні підготовці більше за спеціальності технологічного спрямування, але моделі та алгоритми тут розглядаються не самі по собі в абстракції, а у вигляді програм, які слід придумати та реалізувати. Фахівці пишуть код та створюють програми, які аналізують, оптимізують, класифікують, візуалізують і, звісно, такі, які будуть вбудовані в інформаційні системи чи програмні застосунки вже для кінцевого призначення. ІТ сектор у світі зараз як раз переживає бум та трансформацію щодо постійно зростаючого попиту на фахівців з відповідною підготовкою — це і спеціалісти в галузі штучного інтелекту, машинного навчання, Data Scientists. Слід також наголосити, що сьогодні ми живимо у час коли найбільші наукові та технологічні ІТ центри обговорюють створення та впровадження мета-всесвіту — віртуальної цифрової копії навколишнього світу, яку передбачається інтегрувати у наше реальне повсякдення. І це не лише про віртуальну та доповнену реальність як візуалізацію комп’ютерних моделей — це про створення моделей, які здатні давати нам відповіді аналогічні до реальних об’єктів, які вони представляють. Для того, щоб відтворити таку амбітну задачу та стати частиною нової цифрової ери, бути серед її інженерів та архітекторів необхідно не просто володіти певними технологіями, але й розумітись на законах природи та математичних рівняннях, які їх моделюють.
Спеціальності 124 — Системний аналіз та 113 — Прикладна математика
На цьому місті дуже доречно пригадати найбільш математичні спеціальності 124 — Системний аналіз та 113 — Прикладна математика, які підходять у навчанні до описаних вище проблем саме з боку математики. Різниця тут полягає у тому що фахівці з першої спеціальності більше фокусуються на розробці, але здійснює аналіз систем для їхньої подальшої комп’ютерної реалізації (дивись перший етап життєвого циклу), або здійснюють аналіз самої інформаційної системи задля її оптимізації чи підтримки ефективності (дивись останній етап життєвого циклу). 113 спеціальність згідно ж її назви це про математику яку слід прикладати для вирішення практичних задач. Основа спеціальності це підготовка фахівців, які вміють створювати адекватні математичні моделі для різних практичних задач та обирати математичні методи і підходи для вирішення цих задач. Ми згадуємо 113 спеціальність в контексті ІТ оскільки реальна реалізація прикладних математичних методів можлива лише зі застосуванням в якості інструменту, так званих, обчислювальних методів та відповідних алгоритмів. Сучасний прикладний математик має велику базову підготовку з ІТ-дисциплін, однак дуже великий обсяг часу спрямовано на вивчення математичних методів моделювання та застосуванні цих методів у вигляді програм.
Резюме
Як резюме, хочу сказати, що на всіх ІТ спеціальностях готують фахівців, які здатні створювати нові програми, працювати зі складним спеціалізованим програмним забезпеченням, вчать сучасним технологічним інструментам та базовим знанням в галузі математики і програмування. Основне питання щодо різниці в спеціальностях — це питання на який аспект більше часу та більше уваги приділяється, якщо увага та час концентрується:
- на технологіях, які слід застосувати для розробки програм то це 121;
- на питаннях проектування, створення моделей й алгоритмів з подальшим програмуванням, то це 122;
- на управлінні та взаємодії з пристроями hardware, то це 123;
- на управлінні і розгортанню інформаційних систем – 126;
- на питаннях моделювання та аналізу та 113 та 124.
Висновки:
Ми розібрали основні спеціальності ІТ галузі, і можна побачити весь спектр базових ІТ-напрямків, і побачити відображення цього спектру крізь призму конкретних спеціальностей. ІТ всесвіт розвивається та стає все більш широким, яка майбутня робота більше Вам підходить — технологічного спрямування, чи спрямована на створення нових алгоритмічних та архітектурних рішень — це вирішувати саме Вам.
Якщо ви шукаєте куди вступати, то зверніть увагу на освітні програми:
- 122 — Комп’ютерні науки. Освітня программа: Моделювання, проектування та комп’ютерна графіка.
- 113 — Прикладна математика Комп’ютерне та математичне моделювання
Обрайте свій шлях у ІТ-майбутнє.
Обирайте НТУ «ХПІ»
Корисні посилання:
Ми підготували для вас деякі корисні посилання.
- Освітня програма зі спеціальності 122 Комп’ютері науки. Моделювання, проектування та комп’ютерна графіка. Освітня траєкторія Моделювання процесів, обробка та аналіз даних
- Освітня програма зі спеціальності 113 Прикладна математика Комп’ютерне та математичне моделювання.
- Сайт кафедри математичного моделювання та інтелектуальних обчислень в інженерії
- Сайт факультету ІКМ
- Інші освітні програми на сайті Інституту комп’ютерного моделювання НТУ ХПІ
- Інші освітні програми в НТУ ХПІ
- Виникли запитання? Долучайтесь до нашого телеграм чату для 113 спеціальності. Та для 122 спеціальності. Живе спілкування і відповіді на всі питання