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

Сьогодні я працюю розробником програмного забезпечення, використовуючи технології Microsoft, але так було не завжди, оскільки я розпочав свою професійну кар’єру як юрист у відділі корпоративного банкінгу. На відміну від багатьох сьогодні, я не відвідував жодних навчальних таборів і не хотів змінити роботу, оскільки фінанси та банківська справа були недостатньо привабливими.
На диво, це сталося просто тому, що я хотів автоматизувати свою роботу, звичайну роботу. Детальна історія наведена нижче.
Початки
Після закінчення факультету фінансів і банківської справи в 2010 році я почав працювати в BNP Paribas Corporate Banking. Спочатку я був помічником менеджера зі зв’язків, а потім спеціалістом з кредитної документації. Це був чудовий досвід, і найбільше мене зацікавила корпоративна банківська справа. Крім того, я вірив, що посада кредитного аналітика — це те, чим я хотів би займатися принаймні протягом наступних кількох років.

Однак протягом перших трьох років у мене була лише одна проблема... багато нудних завдань, тому в якийсь момент я почав запитувати себе, чи можу я щось зробити, щоб зробити це менш ручним. На жаль, через те, як працюють банківські системи та стан існуючих процесів (зокрема банківського законодавства), було мало що можна зробити для автоматизації процесів, принаймні я так вважав.
До середини 2013 року ми мали дві серйозні проблеми з одним із існуючих клієнтів. Через поєднання людської помилки та недосконалості банківських процесів наш клієнт не міг отримати доступ до свого кредитного овердрафту протягом дня (я вважаю, що це було кілька мільйонів злотих для середнього підприємства, яке використовує його для щоденних операцій). Це сталося через те, що підрозділ банку, який надає банківські продукти, повинен керувати процесом поновлення кредиту, який вимагає ручного відстеження терміну погашення кредиту клієнта; і коли прийде час, бізнес-аналітик і менеджер із зв’язків повинні підготувати повний фінансовий аналіз і запит на поновлення для відділу кредитних ризиків. Ми зазнали невдачі.
Ця ситуація була можливістю запропонувати автоматизоване рішення. Я розробив невелику настільну програму для Windows, яка працює у фоновому режимі та відстежує термін погашення кредитів клієнтів; вона надсилає сповіщення електронною поштою команді за 14, 7 і 3 дні до терміну погашення кредиту; і навіть якщо 3 дні зазвичай недостатньо для обробки поновлення, це часто дозволяє підготувати запит на технічне продовження, скажімо, на два тижні, щоб уникнути закриття кредитної лінії (банківські системи роблять це автоматично).
Хоча це не зовсім ідеальна програма (немає SOLID або DRY, дивне поєднання ООП і процедурний код), написаний протягом 2 тижнів у Delphi (VCL framework), це спрацювало для нас. Здавалося, що завжди є спосіб покращити роботу за допомогою автоматизованих рішень, навіть якщо ви не є частиною ІТ-підрозділу. Щоб виконати завдання, потрібні лише аналітичне мислення, креативність, певна технічна майстерність і бажання навчатися новому.
Загалом, це був цікавий досвід роботи з автоматизацією, але все ж я вважав, що займаюся фінансами/банківською справою, а не ІТ-бізнесом.
DFDS Polska
Через кілька місяців я вирішив продовжити свою кар’єру в одному з центрів спільного обслуговування в Познані. DFDS Polska – це компанія, яка належить великому датському логістичному та поромному оператору DFDS A/S. Компанія була заснована в 2013 році і почала переносити багато своїх бухгалтерських процесів з різних країн до Польщі, щоб значно скоротити витрати на заробітну плату. Я приєднався до компанії в березні 2014 року, і лише через два дні в новому офісі я вилетів із міста Познань до Осло на двомісячний процес переходу.

Що я вперше помітив під час міграції, так це те, що система бухгалтерського обліку компанії (VISMA) була дуже незграбною і дуже застарілий. Таким чином, довелося виконати багато виснажливих завдань, включаючи непотрібну паперову роботу. У той момент я бачив два варіанти: прийняти це і жити з цим; або залишити. Але пізніше я почав думати про третій варіант: змінити це, вдосконалити процес самостійно, автоматизувати його незалежно від цього. І ось що сталося.
Після перехідного періоду моїми завданнями були:
- Підготуйте кредитні рекомендації для нових і існуючих клієнтів (DFDS Seaways AB у Швеції).
- Зробіть записи в журналі та обробляйте нагадування відповідно до норвезького законодавства.
- Підготуйте фінансовий звіт для фінансового менеджера (DFDS Seaways AS у Норвегії).
- Співпрацювати зі спеціалістами з Головної книги та кредиторської заборгованості.
Оскільки перенесені процеси та стара система обліку не допомагали, я вирішив використати Excel і VBA автоматизувати процес звітування лише для себе. Це спрацювало досить добре, і мій керівник групи запитав, чи можна розширити функціональні можливості, щоб інші також могли ними користуватися. Я дав позитивну відповідь і почав використовувати Access із JET-SQL, локальною базою даних, розміщеною в спільна папка на загальному диску, тому одна копія Excel може читати/записувати з одного джерела даних, дані з системи обліку були взяті окремо з файлу CSV, підготовленого хлопцями з BI, і кілька разів на день скидалися із сервера (автоматично).
Це призвело до створення програми на основі Excel із використанням лише кількох ключових компонентів: Excel, Access, JET-SQL, VBA, дані CSV із системи обліку. У 2014 році це був не найсучасніший стек технологій, який тільки можна було собі уявити, але, будучи офіційно нетехнічним і поза ІТ-підрозділом, це було єдине, що можна було зробити самостійно. Тим не менш, я вважаю, що був справді спритним, я створював і тестував у швидкому темпі, тоді як інші користувачі також тестували це та використовували в щоденній роботі.
У період з жовтня 2014 по 2016 рік я частково працював кредитним контролером і розробником VBA над програмним забезпеченням, яке я назвав TR Tool for Debt Management. Він забезпечив відсутні функції в системі бухгалтерського обліку. Його ключові особливості:
- Підключення до консолідованої бази даних VISMA.
- Двопряме підключення до MS Access.
- Класи ризику та індекс якості.
- Знижена вартість Рахунок-фактура та рейтинг портфоліо.
- Журнал дзвінків для кредитного контролера.
- Приватна адресна книга та автоматична програма масової розсилки.
Continuous Improvement Team
Успіх TR Tool призвів до появи багатьох менших проектів автоматизації з використанням подібного підходу та, по суті, привів до створення групи безперервного вдосконалення, яка була створена після того, як стару команду проекту було звільнено між 2016 і 2017 роками. Ми з командою могли зосередитися на обслуговуванні поточних рішень і створення нового за допомогою інструментів Microsoft, зокрема:
- Microsoft Visual Studio Professional, Visual Studio Code.
- Хмарні служби Azure (AppServices, SQL Server/Database, WebJobs, Azure Functions, Azure Active Directory).
- Сервери Microsoft Exchange.
- Локальна база даних SQL VISMA.
- NET Framework 4.5 і пізніші версії NET Core 2.1, 2.2 і 3.1.
- Початкове завантаження з jQuery, Матеріалізуйте за допомогою jQuery, React.js за допомогою Bulma/Bloomer.
- Мови: C#, JavaScript, Delphi.

Пізніше команда була розширена і складалася з трьох розробників і власника продукту. Ми застосували концепції Scrum та інструмент Azure DevOps для керування щоденною роботою та завданнями. Ми також створюємо документацію, використовуючи модель C4, прийнятий стандарт у DFDS A/S на той час. ІТ-архітектор мав схвалити наші проекти.
ABSL Diamonds Awards 2017

Крім переходу від бухгалтерії до програмування, 2017 рік був присвячений ще чомусь. Наш керуючий директор (Radek Mierzejewski) розповів нам про другий випуск ABSL Diamonds Awards.
ABSL означає Association of Business Service Leaders – це провідна організація, що представляє бізнес-послуги в Польщі. Він організовує понад 100 зустрічей, тренінгів і семінарів, щоб заохотити компанії ділитися своїми знаннями та досвідом, надихати одна одну та будувати відносини з представниками галузі та особами, які приймають рішення.
Ми вирішили подати основний проект, який я створив для DFDS Polska (TR Інструмент для управління боргом), на ABSL Diamonds Awards у категорії Business Excellence.
Ми не лише підготували подання, але й створили коротку відеопрезентацію (необов’язкову, але дуже інформативну). Ми зробили це в середині лютого.

Наприкінці лютого 2017 року ми отримали номінацію. Також ми дізналися про наших конкурентів та їхні номіновані проекти. У той час ми ледве вірили, що зможемо перемогти.

Через місяць ми поїхали до Варшави, щоб відвідати ABSL Gala. У нас були рідкісні нагоди зустрітися зі спільнотою Shared Services, представленою в цілому менеджерами та керівниками.

Ми конкурували з 3M Global Service Center Poland, який мав великий бюджет проекту та понад 15 розробників. Ми були раді прийняти перемогу під час ABSL Poland Gala в березні 2017 року. Ключем до нашої перемоги було те, що у нас були невеликі ресурси, але ми змогли досягти гідних результатів; тоді як нашим конкурентам довелося витратити мільйони на проект.

Це відео є рідкісним уявленням про подію. Це було справді грандіозно, і нам було дуже весело.

Мобільний додаток (iOS/Android)
Вже маючи два роки досвіду та готовність зайнятися розробкою мобільних пристроїв (у мене був попередній досвід роботи зі Swift і Cocoa), я погодився створити нову компанію з трьома іншими людьми та створити програму для Swift і Cocoa платформи.
Велика розробка відбулася в період із серпня 2018 року до лютого 2019 року. Це був мобільний додаток, який дозволяв знаходити паби та бари та вимагати один напій на 24 години. Ми стягували невелику плату (щомісячну підписку) за послугу, тож із вартістю одного напою (19 злотих) можна було отримати до 30 напоїв у різних пабах/барах.

Бізнес розвивався, і через кілька місяців ми почали покривати витрати. У нас були плани змінити бізнес-модель (як відповідь на зміну потреб клієнтів), а також перенести мобільний проект на Google Flutter.

На жаль, проект було скасовано через COVID-19 на початку 2020 року, і ми збираємося закрити компанію цього року.
Деякі технічні деталі:
- База даних Azure SQL.
- NET Core 2.2, WebAPI, MVC.
- Інтеграція з API PayU (пізніше API PayLane) для обробки платежів (повторюваних і разових, у тому числі BLIK).
- JavaScript/jQuery та Bootstrap для веб-сайту компанії.
- Фреймворк FireMonkey (мова Delphi) для кросплатформної мобільної програми.
- Google Cloud Платформа, Firebase.
IT Magination і не тільки
Більше ніж три роки я працював над внутрішніми рішеннями, де контроль якості навіть не був частиною нашого процесу. Наприкінці 2020 року я вирішив приєднатися до Software House, яка постачає програмні продукти для зовнішніх клієнтів, тобто витрати, час виходу на ринок і якість є критично важливими складовими. Це дає мені новий досвід, якого я не міг отримати в DFDS Polska.
На цьому закінчується історія про те, як я як розробник перейшов із фінансів і банківської справи в сферу інформаційних технологій.