Технології

Автоматизація білінгу. Як Олег Моргоч за допомогою ШІ оптимізував процеси в США

23 вер•NV

Щомісячні нарахування, підготовка й розсилка рахунків десяткам клієнтів здаються звичною частиною роботи. Такі завдання легко відкладати, коли компанія вирішує, що автоматизувати насамперед, хоча саме вони забирають чимало часу.

Із цим зіткнувся програмний інженер Олег Моргоч. Фахівець розробляє корпоративні системи й щодня використовує інструменти штучного інтелекту. Водночас кілька років увесь процес залишався для нього ручним. Далі розповідаємо, як Моргоч самостійно проаналізував кожен етап, спроєктував рішення та повністю автоматизував цю роботу.

Олег Моргоч,

програмний інженер

Один процес, двадцять клієнтівЗа білінг в американській компанії, що друкує матеріали на замовлення клієнтів, відповідав Олег. Щомісяця для кожного з двадцяти замовників потрібно було сформувати звіт, на підставі якого виставляли рахунок. За рік компанія готувала 240 таких документів. Для трьох-п'яти клієнтів процедура не вимагала б значних зусиль, але обробка двадцяти звітів щомісяця вже створювала помітний обсяг ручної роботи.

На цей процес йшло від години до півтори, іноді більше.

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

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

З VB.NET на C#За рішенням керівництва Олег упроваджував автоматизацію у два етапи, щоб не змінювати весь білінговий процес одразу. Спочатку система почала автоматично генерувати звіти та надсилати їх клієнтам, запускаючи при цьому відповідні скрипти для відповідних клієнтів,

для одних перед генерацією звіту, для інших — після генерації. Вся поведінка системи відповідно до клієнта і всі клієнти задаються у одному XML-файлі, який слугує Road-мапою для роботи розробленого фреймворку. Тому для додавання нових клієнтів чи зміни в існуючих перекомпіляція системи не потрібна. Оператору навіть більше не потрібно працювати з системою напряму, оскільки її запуск заплановано в планувальнику завдань Windows сервера у щомісячному режимі. Кількість повторюваних дій зменшилася, але формування та надсилання звітів і далі потребували його участі. На другому етапі Олег повністю переписав систему.

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

Для переписування коду Олег використав штучний інтелект як робочий інструмент. Попередню версію було написано мовою VB.

NET, яку нині рідше застосовують у корпоративній розробці. За допомогою GitHub Copilot інженер переніс програму на C#, поширенішу мову тієї самої платформи .NET, та оптимізував її внутрішню логіку. Окремо Моргоч створив невеликий допоміжний інструмент, який автоматично запускав і перевіряв звіти всіх клієнтів.

У GitHub Copilot програміст міг обирати модель для роботи з кодом. Для цього проєкту він використав одну з моделей OpenAI, яка, за його оцінкою, найкраще виконувала поставлені завдання та враховувала сучасні практики розробки. Найбільше технічних труднощів виникло під час перевірки даних. Після формування файлу система мала підтвердити, що це звіт потрібного клієнта і що в ньому перелічено виконані замовлення. Олег окремо продумав і протестував цю логіку.

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

Перед підключенням створеного за допомогою штучного інтелекту інструмента Моргоч перевірив,

чи відповідає він вимогам компанії та як новий код впливає на швидкість системи й навантаження на сервер. Нове рішення не мало сповільнювати інші корпоративні програми.

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

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

Компаніям з обмеженим бюджетом Моргоч радить починати з одного конкретного завдання,

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

Робота над білінгом також дала Олегу досвід інтеграції окремих програмних модулів. Він налаштовує їх так, щоб дані автоматично переходили від одного етапу до іншого. Для створення й аналізу коду, який з'єднує ці частини, інженер використовує штучний інтелект.

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

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

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

Подальші плани інженера викладені в бізнес-плані BillingBridge AI. Він передбачає створення платформи для підключення застарілих білінгових систем до API, хмарних сервісів і аналітики без повної заміни ERP або бухгалтерської інфраструктури. Серед потенційних ринків у документі названо Північну Америку та Європу.

Віталій Ізосімов

Дія

Читайте ще