article-spots
article-carousel-spots
programs
Історії

DWBI: про особливості напрямку, задачі та особистий досвід

22 січ 2021

Напрямок Business Intelligence часто плутають з Business Analysis. Разом з Христиною Зуєнок, ВІ-розробником в ЕРАМ, ми з’ясовували які завдання вирішують фахівці у цій галузі та якими знаннями потрібно володіти, щоб розпочати кар’єру в BI. А ще Христина розповіла про свій досвід навчання на освітніх програмах ЕРАМ і першому проєкті, а також дала корісні поради для початківців.  

Про вибір професії  

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

Зрештою, іспит з інформатики я склала краще, ніж із суспільствознавства, і вступила на факультет «Прикладна математика та процеси управління». У нас була сучасна і різноманітна программа: викладали front-end на JavaScript, компонентне програмування на C#, вчили працювати з базами даних PostgreSQL, також були курси з С++ та Java, обчислення на кластерах зі Scala. В університеті я отримала чудову теоретичну базу, залишалося лише обрати конкретний напрям, в якому я хочу працювати і розвиватися, з чим у мене виникли деякі складнощі. Думаю, таке трапляється з багатьма.  

Про вступ до освітніх програм EPAM  

У той час мій приятель проходив навчання з Java в EPAM. Він порадив мені напрямок Business Intelligence. Ми обоє не до кінця розуміли, чим потрібно буде займатися. Але мій знайомий знав, що у програмі є теми, які мене цікавлять: робота з базами даних, побудова конвеєрів їх обробки. Я переглянула програму, подала заявку і за кілька днів вивчила про бази даних все, що встигла, навіть використання індексів та інші непрості речі.  

На очній співбесіді мене запитали в яких базах я працювала і чи знаю що-небудь про Business Intelligence. Тоді я сказала, что точно знаю, що таке BI і хочу розвиватися саме в цьому напрямку. Хоча насправді я не надто уявляла, чим займаються спеціалісти у цій галузі. Його взагалі часто плутають з Business Analysis. Тому зараз, через майже два з половиною роки в ЕРАМ, коли проводжу співбесіди за студентами, я теж запитую, чому вони обрали саме BI, чи знають вони, чим займаються BI-розробники.  

Про різницю між Business Analysis та Business Intelligence  

Зазвичай я пояснюю різницю між цими напрямками так: якщо ти бізнас-аналітик, то у тебе більше спідкування із замовником. Часто завдання аналітика полягає в тому, щоб розібратися у бізнес-процесах клієнта і цю інформацію донести команді, складати задачі та консультувати технічну команду з усіх бізнес-питань. «Своєю мовою» запитати у бізнес-аналітика простіше, до того ж замовник не завжди доступний. Аналітик — це такий щит, який відділяє команду від замовника і допомогає уточнювати вимоги, з’ясовує потреби бізнесу, але не пише код. Він також може робити запити до бази даних, приймати участь у підготовці візуалізацій, перевіряти тест-кейси, але всю розробку виконує ВІ-інженер. Я завжди кажу: якщо хочеш багато розробки, то треба йти в ВІ, а якщо хочеш більше спілкуватися із замовником і розбиратися у бізнес-процесах, то в ВА.  

Якщо показати різницю між двома напрямками лише одним запитанням, то для ВІ це буде «Що сталося?», а ВА-спеціалісти поставлять його так «Чи станеться це знову?». 

Робота ВІ-інженера як правило стосується трьох сфер: Data Warehouse Modeling – створення сховища даних, ETL-процесів (Extract, Transform, Load), які дозволяють витягти та завантажити дані у сховище, і Reporting – власне візуалізації цих даних. Ці три щирокі напрямки завжди присутні в тому чи іншому вигляді в кожному ВІ проєкті і часто перетинаються між собою. В результаті роботи ВІ-команди виходить обробити й представити дані компанії так, щоб керівник міг подивитися на графіки і з легкістю отримати відповідь на вічні питання бізнесу: як зробити ефективніше, дешевше і швидше. У ВІ-інженера в ЕРАМ один проєкт може бути пов’язаний з візуалізацією, інший — зі створенням сховищ і з візуалізацією не мати нічого спільного. ВI-розробник — це такий собі T-shaped-спеціліст.   

Про процес навчання  

Чого я очікувала від навчання? Мені якомога швидше хотілося розпочати працювати, тому що в університеті давали багато теоретичних знань, а ось практики не вистачало. Мені здавалося, щоб працювати і отримувати гроші, потрібно бути мегаспеціалістом, що роботодавці неохоче беруть новачків, мовляв, «приходьте із досвідом». Тому мені так сподобалося, що на освітніх програмах ЕРАМ співробітники вчать студентів того, що справді знадобиться в роботі та, з великою ймовірністю, за умови успішного завершення навчання, запрошують у компанію.  

У тренінг-центрі була доброзичлива атмосфера. В університеті всі викладачі були серйозні та поважні, а тут всі розмовляють на «ти». Якщо запитуєш у викладача що-небудь, він відповідає: «ось, дивись, я робив схожу класну штуку на проєкті, зараз тобі про неї розповім». Найцінніше те, що викладачі — не теоретики, а з практики знають, про що говорять.  

Про програму навчання 

Навчатися було складно. Наприклад, у мене не дуже вкладалося у голові, як написати нестандартний SQL-запит до бази даних без циклів, до яких я звикла. Дехто з одногрупників вже мав досвід вирішення подібних задач, а я іноді сиділа й розв’язувала їх до пізньої ночі.  

Завдання виконувати було непросто, але ми обговорювали їх на заняттях і отримували звортній зв’язок від тренерів. У всіх були особисті фідбеки, а в кінці всі рішення розбирали разом, але анонімно. Таким чином було зрозуміло наскільки успішно ти впорався із завданнями порівняно з іншими студентами, але не було ніяково через невдачі.  

З того, що ми вивчали, пізніше в роботі я застосовувала практично все. У нас в програмі був SQL — це основне, що має знати ВІ-розробник. Ми писали запити до бази даних, і цю навичку ми використовуємо в роботі майже щодня. Нам викладали аналітичні функції, агрегації, перетворення. Мабуть, найбільш екзотичними функціями користується тільки половина моїх колег, але все одно це було корисно. Також ми вивчали візуалізацію даних: розбиралися, як будувати графіки, і що для цього можна підготувати на стороні бази, а що перетворити на стороні front-end. З галузі ETL ми вивчали Talend, один з найбільш популярних ETL інструментів у світі. У програмі не було такого, що виявилося б нецікавим або непотрібним.  

Про початок кар’єри  

Так вийшло, що я почала працювати в EPAM ще на першому етапі навчання, тобто другого етапу зі студентським проєктом в лабораторії у мене не було. Коли я навчалася на тренінгу, з’явилася можливість пройти інтерв’ю із замовником і відразу потрапити на реальний бізнес-проєкт, тому далі я паралельно закінчувала навчання і вже працювала у компанії.  

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

Я зробила багато графіків про все, що спало на думку стосовно цього завдання. Ці графіки ми будували в Tableau — інструмент гарний та інтуїтивний, з нього легко починати вивчення візуалізації і він користується популярністю в замовників. Один з графіків, наприклад, показував, що люди з високою успішністю часто самотні. Я так і написала у звіті, що у цій вибірці найбільш успішним людям не вистачає часу на особисте життя. Інтерв’юерам такий підхід сподобався, і я потрапила у компанію. Через рік я знайшла ці візуалізації та зрозуміла, як багато тоді не знала, але приємно було оцінити, як я професійно виросла за цей час.  

Про задачі на першому проєкті  

В EPAM з’явився проєкт, на якому необхідно було використовути для звітності новий продукт Exago BI. Цей інструмент тоді майже ніде не застосовувався. В EPAM не було спеціалістів із досвідом роботи саме з цим інструментом. Тому вирішили взяти на проєкт спеціаліста із серйозним досвідом у візуалізації, а до нього у команду набрати чотирьох ВІ розробників-початківців, які вивчать роботу з програмою з нуля. На той момент сам інструмент був не дороблений до кінця. Це був унікальний досвід, коли ми дописували продукт, який був на стадії стартапу.  

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

Про плани розвитку в професії  

Зараз я точно знаю, що продовжуватиму розвиватися як технічний спеціаліст, тому що мені подобається займатися розробкою, перевіряти новий функціонал, з’ясовувати, як все працює, автоматизовувати рутину. Напевне, я б хотіла стати архітектором або Chief-інженером, щоб приймати участь у технологічному розвитку, а не тільки бачити готовий результат.  

Поради новачкам у BI  

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

Більше практикуйтеся. Є люди, які читають, наприклад, про бази даних, проходять теоретичні курси, дивляться відео. Краще встановити цю базу даних і спробувати виконати з нею якісь найпростіші задачі. Коли людина приходить на співбесіду і каже «мені було цікаво, але я нічого не спробував», мені здається, що насправді людині це було не дуже й потрібно. Якщо дійсно хочеться розвиватися в якійсь сфері, краще «покопирсатися» на практиці. Не сподобалося — перейти до іншого. Тільки так можна зрозуміти, чим справді подобається займатися.  

Експериментуйте. Як говорив один мій викладач ще в школі: «Програмування — наука експериментальна». Завжди пробуйте щось нове, не бійтеся відходити від того, що написано в статтях і канонах. Що б ви не наробили (якщо це не робоче середовище, звісно), завжди врятує  «ctrl+z», врешті решти, ми ж не лікарі :)  

Щоб стати різностороннім ВІ-розробником, потрібно мати хоча б базове уявлення про мови програмування. Це допоможе додати новий функціонал для завантаження даних або будь-яку іншу кастомізацію. Наприклда, в роботі ми іноді використовуємо Tibco Spotfire. Якщо цим інструментом треба зробити складну візуалізацію, то доведеться написати код для функцій на JavaScript, який використовується й у web-розробці.  

Щоб пройти співбесіду на тренінг потрібно розуміти, що таке база даних. Тобто знати в який момент просто велика кількість таблиць перетворюється на неї, як ці таблиці повинні бути пов’язані між собою, як правильно зробити ключі. І, звичайно, SQL. Це найбільш базове, що потрібно спробувати, якщо плануєш працювати з базами даних. Спробуйте створити базу, завантажити до неї excel-файл із даними, підключити пробну версію Tableau і зробити графіки, хоч якось візуалізувати інформацію. Таких кандидатів після співбесіди я відразу рекомендую зачисляти на навчання. Не забувайте й про англійську, про неї теж у всіх в ВІ-лабораторії запитую, іноді прошу просто розповісти англійською, чого ви хочете від тренінгу або як пройшли вихідні.  

Ось кілька корисних посилань на матеріали, які я раджу почитати новачкам:  

ETL with Talend — це зручний і корисний інструмент ETL для інтерграції даних. У Talend є окремий продукт для підготовки даних, перевірки якості даних, інтергації даних та додатків, управління даними і великих даних.  

MS SQL Server Database — матеріали з баз даних. 

Reporting with Tableau — безкоштовні уроки з інструменту візуалізації Tableau.