Найбільша PHP конференція України, 1 червня: хто буде і чому варто відвідати?
×Закрыть

10 причин опанувати Intelligent Automation

Декілька років тому я був звичайним Web-девелопером, досить успішно розвивався та піднімався кар’єрною драбиною. Та в певний момент зрозумів, що хочу спробувати щось нове, змінити свій профіль чи технічний домен. Саме в той час EPAM відкрив новий напрямок — Intelligent Automation. «Поварившись» 2 роки у сфері розумної автоматизації, вирішив поділитися своїм досвідом та розповісти про причини, чому саме зараз варто звернути увагу на ІA технології.

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

Так от, пошукавши більше інформації про ІА, я вирішив заглибитись у цю тему. За прогнозом Market Research Future, ринок інтелектуальної автоматизації й надалі буде щороку зростати вдвічі. Вже зараз помітний підвищений попит на ІА фахівців. І він буде рости так само, як і ринок автоматизації.

Джерело

На початку хочу зробити уточнення, щоб Intelligent Automation не плутали з іншим напрямком:

1. ІA — новий етап в розвитку програмування

Я починав працювати з Асемблером і Паскалем. Потім настала ера ООП. Зараз наближається час метапрограмування, коли з існуючих сервісів та інструментів ми створюємо продукт. Іншими словами, зараз все відбувається на вищому рівні — можна брати готові блоки, поєднувати їх в один механізм. У такому вигляді вони ідеально працюють. Все йде до вищих рівнів абстракції.

Інтелектуальна автоматизація — це наступний крок розвитку. Вона буде актуальною щонайменше ще 5-10 років (доки не автоматизується більшість процесів у бізнесі). І якщо вам хочеться інвестувати свій час у щось нове, що буде стабільно розвиватися, це хороша перспектива. Щоб почати працювати в цьому напрямку, вистачає аналітичного мислення та досвіду роботи з певною мовою програмування. Ідеально, якщо це Java чи .NET, адже ваші знання будуть корисні при використанні ІА платформ:

Скажу більше, розібратись в IA простіше, аніж вивчити Java чи іншу нову технологію з нуля. І це не залежить від вашої сеньйорності. Більшість платформ автоматизації намагаються зробити інтерфейс user friendly. Тому вхід у цю спеціальність легший. Отож, якщо ви вже розробник та працюєте з певною технологією, яка, наприклад, відмирає, або ви займаєтесь автоматизованим QA, вам буде досить легко зрозуміти процеси в Intelligent Automation.

2. Короткий цикл від ідеї до впровадження

Від моменту, коли ми зібрали вимоги до процесу (що саме треба запрограмувати), до моменту, коли ми розгорнули проект на продакшені і отримали зворотній зв’язок від клієнта та кінцевого користувача, проходить у середньому два-три місяці.

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

3. Можливість працювати з різними інструментами, бібліотеками, сервісами

Саме через те, що життєвий цикл імплементації одного бізнес-процесу короткий, ми можемо швидко переключатися на нові інструменти, працювати з різними платформами, бібліотеками, сервісами і т. д. Тому розробник, котрий займається інтелектуальною автоматизацією, має можливість спробувати різні варіанти у своїй роботі. Деколи необхідно реалізувати складні алгоритми, деколи — прості. Частину роботи треба робити окремо під клієнта. У таких випадках доводиться писати кастомну логіку. Бізнес-логіка може описуватись певними алгоритмами чи правилами. Якщо це зробити складно, можуть допомогти алгоритми машинного навчання (Machine Learning). Для цього має бути історична інформація, яка показує, як ця логіка працює. Застосування машинного навчання — це теж певний челендж. Для цього треба проаналізувати/нормалізувати дані й натренувати алгоритми.

Так, на одному з проектів перед нами стояла задача — автоматизувати розпізнавання відсканованих документів, які надійшли на поштову скриньку. В першу чергу треба було проаналізувати, чи є вкладення певного типу файлів (pdf, jpeg, тощо). Якщо так, ми вважали, що це документ, який треба розпізнати та обробити.

При розпізнаванні поставало три задачі. Перша — перевести зображення в текст (OCR). Часто якість документів була поганою. Багато з них були надіслані факсом, тому їх треба було підготувати до розпізнавання.

По-друге, потрібно було розпізнати тип документу. Причому, якщо зображення складаються з однієї сторінки і тут не було проблем, то pdf-файли могли містити 10-20 сторінок, кожна з яких могла бути іншим документом. Наприклад, там могли бути водійські права, резюме, сертифікати и т. д. Загалом більше 120 типів документів. Чимало з них не мали єдиного стандарту, для прикладу резюме чи звіти витраченого часу. Врешті-решт ми досягли 73% розпізнавання. На обробку кожного нового документу йшла хвилина.

Третя задача — розпізнати, хто саме вказаний в документі. На кожному документі ім’я та прізвища були у різних місцях. Допомагало те, що у нас була база імен, які могли зустрічатися в тих документах. Але ми не знали, де саме у документах це шукати — іноді ім’я та прізвище стояли не поруч, інколи було багато шумів після розпізнавання. В цій задачі ми досягли 93% розпізнавання імені і прізвища. Додатковим викликом було те, що текст в якому ми шукали імена — був неточно розпізнаний, і через це траплялися помилки. Як результат, ми були змушені використовувати алгоритми наближеної схожості слів. В цій задачі ми досягли результативності 93%.

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

4. Робота з різними платформами/технологіями

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

Зараз існує більше 15 платформ для інтелектуальної автоматизації. Ми працюємо з трьома — WorkFusion, UiPath та Karpow. При чому написані вони на різних мовах (наприклад, Java чи .NET). Наші розробники мають можливість переключатися з однієї на другу без особливих ускладнень.

5. Технічні виклики

На проектах нам постійно доводиться вирішувати різного роду виклики. Вони пов’язані з тим, що вже використовує клієнт. Зокрема:

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

Зараз IA не обмежується простими завданнями автоматизації. Ця технологія часто поєднується з штучним інтелектом (АІ) і машинним навчанням (ML). Відповідно стає можливою автоматизація більш складних завдань за допомогою неструктурованих і напівструктурованих даних. Наприклад, обробка заробітної плати, управління ланцюгами постачання та інше.

6. Простота реалізації та масштабування

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

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

7. Заглиблення у бізнес клієнта: розуміння бізнес-логіки, розвиток комунікаційних навичок

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

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

Тому під час запровадження Intelligent Automation в компанії клієнта важливо разом з ним розібратися у всіх його процесах, пройтись по кожному кроку і задати запитання. Необхідно допомогти йому зрозуміти, автоматизація якого процесу принесе клієнту найбільшу вигоду. Ми заздалегідь можемо порахувати, скільки часу в компанії людина або кілька людей витрачають на певну роботу, скільки часу потребує імплементація платформи та скільки коштує ліцензія. Як результат, можемо розрахувати, за скільки часу окупиться імплементація того чи іншого процесу. Але для цього всього потрібно добре розібратися із загальною бізнес-логікою та прокачати свої комунікаційні навички для продуктивного спілкування із клієнтом.

8. Твої пропозиції та рекомендації мають значення для замовника

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

9. Жвавий інтерес з боку нових і старих клієнтів

Практика Intelligent Automation у львівському офісі В EPAM за два роки виросла з 0 до 27 спеціалістів. Retail, Travel, Finance, Healthcare — це далеко не повний перелік, де можна застосовувати розумну автоматизацію. Наразі ми співпрацюємо з шістьма замовниками у різних сферах і за цей час ми зекономили їм мільйони доларів. Як нові, так і старі клієнти, які дізнаються про новий напрямок, виявляють зацікавлення спробувати його у себе.

Клієнт отримує такі переваги після впровадження Intelligent Automation:

  • Аудит процесів. Зазвичай клієнт сам не може оцінити повної картини усіх своїх процесів. Під час їх аудиту, який ми проводимо перед запуском роботи, клієнт бачить чимало напрямків, які можна було б оптимізувати, зробити краще, дешевше тощо.
  • Економія коштів. Є компанії, де працівники роблять рутинні задачі, які часто повторюються та займають багато часу, або є базовими і їх легко відтворити. В обох випадках автоматизація зменшить кількість людської праці, що, в свою чергу, зекономить кошти.
  • Платформа вже дає інтерфейс для взаємодії. Не потрібно вигадувати щось нове.
  • Стабільна точність результатів. На відміну від людини, у комп’ютера не буває поганого самопочуття чи настрою, помилок через втому, тощо.
  • Робота не по годинах, а в потрібних обсягах. Наприклад, не доведеться наймати більше персоналу напередодні свят та «високого сезону». Якщо навантаження збільшується, достатньо оплатити більше ресурсів у хмарі, і вони працюватимуть 24/7.
  • Статистика. У клієнта завжди є доступ до точної статистики усіх процесів.
  • Ріст доходів при тих самих витратах. Якщо бізнес зростає, не потрібно наймати нових людей, навчати їх тощо. Витрати не виростуть, максимум знадобиться більше хмарних ресурсів.

10. Те, що ти робиш, змінює бізнес клієнта, і ти це відчуваєш в реальному часі

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

З чого почати

Для тих, хто також вирішить спробувати ІА, рекомендую звернути увагу на такі ресурси, які зібрав для початківців. Спробував сформувати список безкоштовних тренінгів, проте також подав декілька корисних платних варіантів:

Заради справедливості, скажу декілька слів, кому ІА може бути менш цікавим:

  • QA automation спеціалісти, яким цікавий тільки процес тестування як такий і вони не планують переключатися на девелопмент;
  • девелопери, які фокусуються тільки технічній стороні, а розвиток бізнесу їх зовсім не цікавить;
  • девелопери, які хочуть працювати тільки з одним вузьким технічним стеком.

Висновок

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

LinkedIn

9 комментариев

Подписаться на комментарииОтписаться от комментариев Комментарии могут оставлять только пользователи с подтвержденными аккаунтами.
піднімався кар’єрною драбиною

Хіба не сходами?

Круто: то чем я занимаюсь уже 6 с лишком лет наконец начало считаться ИТ и получило модную аббревиатуру даже — IA
Звучит почти также круто как AI или IoT 🙂

Не круто: ни слова о Corezoid. А это между прочим одна из лучших IA платформ. И лучшая из тех кто реализует логику конечного автомата и стейт-машину. Сейчас пробую осваивать Node-Red, но блин как ему далеко до Corezoid’a

Подождём ещё пару таких статеек и напилю обзор своего входа в ИТ не меняя ни рабочего места, ни даже стола и стула 🙂✌️

Corezoid — це не IA прийнаймі не в тому значенні який вкладають туди вендори RPA.
Corezoid це швидше цілиться в ринок інтеграційних рішень, але фокус на російськомовний ринок природньо не дає їм сильно вирости, SnapLogic один з лідерів ринку інтгеграції.
Node-RED — це взагалі з іншої опери. Якщо вже вам хочеться автоматизації то подивіться до jBPM. Але це точно не рішення для IoT. В них інші вимоги і інші підходи.

Cпасибо за экспертное мнение.

Corezoid — це не IA прийнаймі не в тому значенні який вкладають туди вендори RPA.

Я изначально не эксперт в определениях. Просто делаю работу как умею. Судя по статье, я делаю в Corezoid именно то о чем статья. Поэтому и порадовался. Ничего не ищу, ни советов, ни правильных решений

але фокус на російськомовний ринок природньо не дає їм

Расскажите это Western Union одному из их крупнейших корп. клиентов. И коренному лондонцу по имени Джейсон, для которого я клепал халтурку недели две назад :) И да, регистрация в Redwood CA прям так и кричит о фокусе на русскоязычный рынок ))

Якщо вже вам хочеться автоматизації то подивіться до jBPM. Але це точно не рішення для IoT.

Приставочка j смущает. Пугаюсь java и ее замысловатого ООП с 2013-го :) C IoT не работаю пока. Но, на самом деле Node-RED — это как раз для IoT.

Халтурка — це рівень звичайно. Компанія в якої всі testimonials на російській — це звичайно що глобальний продукт.
Метро цілого бота для viber зробила.
В них продукт принаймі по описам виглядає достойно, але на даному етапі на глобальному ринку з теперішньою подачею їм ловити нічого. Можна звичайно що продати 1-2 інсталяції, локальному офісу, але продавати це на рівень якогось CTO/CIO середнього рівня корпорації я не бачу як.
GDPR — 0, сертифікацій (SOC 2, ISO 27000, ....) - 0.
Містечковий сервіс для нерозвиненого ринку.
Це не значить що це не можна виправити, це лише значить що зараз позиціювання і можливості платформи для глобального ринку недостатні.

1) Я не вызывался с Вами спорить и что-то Вам доказывать. Ваши замечания вызывают на самом деле только улыбку. Но я пожалуй подробно отвечу. Толком даже не вам, а может кому будет интересно. ;)

2) Для начала, я не сотрудник компании Middleware и не продавец Corezoid. Вероятно Вы неправильно уловили суть моего посыла. В противном случае не понятно, зачем мне адресовать нарекания про «подачу» и т.п. если я никак не связан с компанией и ее маркетингом. Я написал коммент и отзыв просто как довольный пользователь технологии, читай IA-разработчик в терминах статьи. Я даже не их клиент напрямую, я тот кто делает эти самые IA решения используя Сorezoid.
Могу сказать, что за шесть лет в этой теме у меня было пять только крупных проектов. Из которых лишь один как-то связан с ботами и вообще с уведомлениями. Поэтому пишу что пишу с полной уверенностью и знанием дела, в отличии ОТ.. услышавших где-то про бота Метро. Ну и тут как и в любой другой области разработки — skills matter. Того же бота, хотя это далеко не показатель внедрения и возможностей, можно сделать оочень по-разному. Я Metro-бота не клацал, без комментариев.

3)

Халтурка — це рівень звичайно

Наверное придется пояснить значение слова и что имелось в виду. Халтуркой «на російській» называют неосновную временную работу в счет своего свободного времени, а не что-то плохо или некачественно сделанное.

Приведен был этот пример не как УРОВЕНЬ применения или квалификации, а как свидетельство того, что таки знают о продукте и знают многие. И это по идее должно быть понятно из контекста. С чего Вы взяли про локальность непонятно. — И за бугром тоже знают. И не только гиганты вроде Western Union, а и предприниматели поменьше.
Поясню: обычно инновации в бизнесе «стекают сверху», cначала Amazon, Google -> в конце продавцы на базаре -> не наоборот. Поэтому показатель известности здесь как раз меньшая величина компании -> не наоборот. Если бы заказчик был еще и из глубинки, а не из столицы другой страны, то пример был бы еще ярче -> не наоборот.

Раскрывать что-то из проделанного мы тут не станем, но поверьте делают на C. далеко не только ботов. :) Например из новинок в последних версиях — есть возможность запустить «изнутри» любой проект имеющий работающие исходники на GitHub (пока сам не пробовал, но это уже в prod.). Хотя лично знаю и компанию ребят, которые занимаются профессионально именно ботами и имеют постоянный поток заказов. Это их основной вид деятельности и один из любимых/популярных инструментов там.. «скажите как его зовут..Co па-ра-ра-ра-па-пам Re» ну вы поняли :)

4) Особенно улыбают Ваши взятые с потолка тезисы про «местячковый уровень».
Если Western Union — незнакомые слова, то может PSM Awards 2018 поможет. Или погуглите Finovate. Без имен, но в Украине, только из известных мне клиентов, 4 крупных банка, крупнейшая курьерская служба, крупнейший ритейлер техники и несколько больших сетей супермаркетов. ( это помимо Вашего бота Metro, хотя о Metro краем уха я слышал).
Из не Украины, например тот же WoT (не надо ж расшифровывать? ), VISA, MasterCard, еще несколько банков.. И это все инфа годов 16-17, сейчас очевидно их гораздо больше. Все это знаю наверняка, т.к. когда-то «зондировал» рынок на предмет востребованности и актуальности технологии. Честно, Вы понятия не имеете кто и как продвигает это на мировом уровне и где :)
Но зачем эти голые слова, когда есть Google -> finovate.com/category/corezoid

Эх, блеснуть увы не получилось, соболезную :) Честно, я Вас понимаю, тоже иногда проскакивает такое желание. И отвечу Вам словами одного из оппонентов в моих подобных фейлах, а сейчас друга и единомышленника: «обсуждай то в чем ты эксперт и занимайся своим делом». Думаю на этом разговор исчерпал себя целиком и полностью. НО если по каким-либо причинам, будь то принадлежность к топ-компании, лычка Architect или просто ЧСВ Вам не позволят НЕ оставить за собой последнее слово — дело Ваше. Разрешаю :) Гните пальцы, печатайте все, что заблагорассудится. Любые ереси и даже обоснованную критику. НО так или иначе — здесь у меня всё. И более детального экскурса в мир Corezoid НЕ будет.
Не для Вас и не здесь :) Удачи!

Я не вызывался с Вами спорить и что-то Вам доказывать.

Довольно иронично начинать так ответ с 5-ю развернутыми пунктам )

Подписаться на комментарии