Сучасні професії та напрямки у галузі розробки програмного забезпечення. Н. Кіящук, заключне заняття теми «алгоритми і програми», 9 клас
Номер слайду 2
UI / ux. UI/UX дизайнери проєктують інтерфейси. Від їх професіоналізму буде залежати не тільки зовнішній вигляд сайта, але і його конверсія — користувачу приємно знаходитись на якісно виконаному ресурсі і виконувати на ньому потрібні діЇ, наприклад, підписувати. Сь на розсилки, здій. Снювати покупки, спілкуватись у чатах і на форумах.
Номер слайду 3
Хто такий UX/UI дизайнер. UI/UX дизайнер — це креативний фахівець, який проектує призначені для користувача інтерфейси. UI і UX — це два різних сторони дизайну, але частіше за все завдання по обох напрямках тісно пов’язані між собою, а тому їх робить один універсальний фахівець. Така професія має довгу історію. Будь-яке налаштування зовнішнього вигляду товару (упаковка, ергономічність, зовнішня реклама) можна назвати UI/UX-дизайном, адже з його допомогою кінцевий продукт стає зручним для покупця. Різниця тільки в одному — сучасні UI/UX дизайнери використовують сучасні інструменти. Як правило, UI-дизайнер працює в дуеті з UX-ом, але за останніми тенденціями обов’язки обох співробітників стала виконувати одна людина — UI/UX дизайнер. UI ( «User Interface») — «призначений для користувача інтерфейс», а UX («user experience») – це «досвід користувача». UI-дизайнер відповідає за візуалізацію додатку, роблячи його зручним і функціональним. Щоб продукт з комфортом візуально сприймався користувачем, фахівець UI відповідає за підбір форм, кольорів та інших параметрів. Що стосується UX-дизайнера, він більшою мірою відповідальний за функціональність дизайну. У підсумку: додатком легко і зручно користуватися.
Номер слайду 4
Dev. Ops. Dev. Ops — низка практик, призначених для пожвавлення взаємодії розробників із фахівцями інформаційно-технологічного обслуговування та зближення їхніх робочих процесів одне з одним.
Номер слайду 5
Хто такі Dev. Ops фахівці?Dev. Ops інженери – це фахівці, які розбираються з усіма можливими процесами циклу розробки й експлуатації. До них відносяться: розробка, тестування, архітектура продукту, оцінка ризиків захисту, різні способи автоматизації, підтримка продукту як до, так і після випуску. Більш того, фахівець розуміє, як працюють обидві команди розробників і експлуататорів. Dev. Ops умовно ділиться на кілька субролей: Build Engineer – професіонал, який відповідає не тільки за збірку коду, але і за розбір конфліктів і підтягування різних залежностей;Release Engineer – людина, яка відповідає за доставлення коду від команди розробників в продакшн, за фінальну гілку для тестування та ін. Automation Engineer – фахівець, який працює над автоматизацією всіх продуктів. Security Engineer – людина, яка відповідає за коректність тестів з безпеки, перебування слабких місць в компонентах продукту.
Номер слайду 6
QA Automation. Напрям QA було започатковано доволі давно, коли програми та додатки ще були записані на дискетах, а в ІТ працювали виключно розробники. Компанія Compaq випустила черговий продукт, але через деякий час користувачі виявили несправний функціонал. Девелопери переглянули код та зрозуміли, що припустилися суттєвої помилки та вчасно не зауважили цей баг. Це спричинило неабиякі збитки для компанії, адже весь наклад дискет довелося перевипускати. Подібний випадок не був поодиноким у масштабі індустрії, тому невдовзі виник напрям QA. Прямий обов’язок QA спеціаліста – знаходити дефекти через порівняння очікуваного та отриманого результатів. Тестування проводиться протягом усього життєвого циклу продукту. Проте, вартість виправлення бага на стадії проектування і розробки значно нижча, ніж після релізу. Виявлення бага на пізніх етапах спричиняє збитки та потенційні проблеми для компанії. Саме тому тестування було і залишається затребуваною функцією. З часом перелік обов’язків тестувальників розширюватиметься.
Номер слайду 7
У чому різниця між QA Automation спеціалістами та Manual QA?Перші пишуть код, який тестуватиме інший код, написаний розробниками. Для перших кроків в автоматизації тестування початківцям потрібно володіти основними поняттями з теорії мануального тестування (визначення тестування, його види, тест-план, баг, тест-стратегія тощо), та хоча б одну з мов програмування, наприклад, Java чи C#, на базовому рівні. Після початку роботи на реальних проектах ви часто стикатиметеся із ситуацією, коли в одному стрімі тести пишуться на Java, а в іншому – на Java. Script. Круто, якщо спеціаліст володіє обома мовами та зможе переключатися між потоками. Наразі найтрендовіші мови програмування для QA Automation – це Java, JS, C# та Python. Перехід з Java на C# або навпаки – не складний, а ось Python значно відрізняється від двох інших.
Номер слайду 8
Data Scienceце міждисциплінарна наука, яка використовує виключно наукові методи, процеси, алгоритми, статистику, сучасні технології та складні системи для глибокого розуміння даних та інформації. Data Science називають міждисциплінарною наукою тому, що в її основі лежать теорії, методи і практики з різних областей знань – математики, інформатики, комп’ютерних наук та багатьох інших. Data Science також використовує машинне навчання, аналіз даних, статистику для отримання достовірних результатів з різних даних. Тому не важко здогадатися, що дослідники даних – це фахівці, які відмінно розбираються в аналізі даних, та мають відповідні технічні знання та освіту, а також потрібні навички для вирішення складних завдань. Тому наука про дані та дослідники даних необхідні компаніям, оскільки саме вони можуть проаналізувати інформацію та надати цінні висновки, які допоможуть компаніям та їх бізнесу. Наука про дані (або data science)— це великі обсяги різноманітної структурованої і неструктурованої інформації, яка рухається з неймовірною швидкістю та яку складно проаналізувати за допомогою традиційних методів і технологій.
Номер слайду 9
Embedded розробка. Вбудо́вана, вбудо́вувана систе́ма (англ. embedded system) — спеціалізована комп'ютерна система або обчислювальний пристрій, призначений для виконання обмеженої кількості функцій,[1] часто, з обмеженнями реального часу. Комбінація апаратного та програмного забезпечення, можливо, з механічними або іншими частинами, призначена для виконання окремої функції.[2] Зазвичай, вбудовувані системи є складовою частиною пристрою, включаючи апаратне забезпечення та механічні елементи.