Послуги з модернізації legacy-ПЗ
Модернізація legacy-ПЗ для систем, на яких досі тримається бізнес, але які його гальмують: прийняття проєктів від інших команд, оновлення до актуальних версій і поетапна заміна старих модулів без одномоментного переписування з нуля. Досі до нас від інших команд перейшло дев'ять систем, найстарішу з яких написано у 2008 році.
Як ми модернізуємо legacy-систему
Спочатку огляд у режимі лише читання
Код, залежності, розгортання та дані вивчаються від початку до кінця, перш ніж хтось змінить бодай рядок, із письмовим переліком ризиків, упорядкованим за впливом на продакшн.
Тести навколо наявного коду
Характеризаційні тести, що фіксують, як система працює сьогодні, разом з усіма її особливостями, тож кожна наступна зміна перевіряється на реальній поведінці, а не на пам'яті.
Оновлення фреймворків і середовищ виконання
Перехід з .NET Framework на актуальний .NET, з Java 8 на актуальну LTS-версію, з PHP 5 на PHP 8, з Python 2 на 3 та з AngularJS на Angular: крок за кроком, і кожен крок випускається окремо.
Заміна за патерном strangler fig
Нові модулі створюються поруч зі старою системою за шаром маршрутизації й по одній функції беруть на себе її роботу, доки старий код не можна буде вимкнути, і немає жодного дня, коли змінюється все одразу.
Модернізація баз даних
Бізнес-логіка, винесена зі збережених процедур у протестований код, зміни схеми, перетворені на версійовані міграції, і дані з непідтримуваних версій баз даних, перенесені зі звітом звірки.
Погашення боргу з безпеки
Непідтримувані залежності замінені, відомі вразливості виправлені, секрети винесені з файлів конфігурації в сховище, а сканування залежностей у пайплайні не дає боргу повернутися.
Наші інженери для legacy-систем для вашої команди
Виділені інженери для legacy-систем
Інженери для legacy-систем, які приєднуються до вашої команди на повний робочий день, працюють у ваших інструментах і за вашим процесом і звітують вашому керівнику. Співбесіду проводите ви, а український договір, зарплата, рахунки й відпустки на нас.
Модернізація як окремий проєкт
Окремий проєкт (напрям: модернізація) з визначеним обсягом, фіксованим планом і призначеним керівником з нашого боку, який відповідає за результат і звітує про хід роботи у ваших каналах.
Постійна співпраця: модернізація
Модернізація як постійна послуга: ті самі люди щомісяця, беклог, пріоритети в якому визначаєте ви, і години, які видно в нашому порталі та в рахунку.
На сторінці виділеної команди пояснено, як фахівці приєднуються до вашої команди, а на сторінці аутсорсингу описано реалізацію проєктів, прийняття систем від інших команд і те, як ми беремо оплату.
Хто працює над вашим проєктом (напрям: модернізація)
Технічний лідер
Відповідає за огляд, перелік ризиків і порядок робіт
Інженери з .NET, Java і PHP
Оновлення та рефакторинг мовою самої системи
Інженери з хмари та DevOps
Пайплайни, інфраструктура як код і перехід зі старих серверів
QA-інженери
Характеризаційні та регресійні тести
Модернізація кроками, а не одним переписуванням
Повне переписування на місяці зупиняє поставки й зазвичай втрачає поведінку, яку ніхто не записав. Натомість ми модернізуємо кроками: кожен достатньо малий, щоб його випустити, перевірений на тому, що система робила раніше, і вибраний за ризиком чи витратами, які він усуває, тож бізнес продовжує працювати на системі, поки вона змінюється.
Прийняття проєкту починається з огляду в режимі лише читання та письмового переліку ризиків ще до будь-яких виправлень. Іноді цей перелік показує, що модуль краще переписати, і тоді ми так і кажемо, з причинами письмово та з переписуванням, запланованим під захистом тих самих тестів.
Інші рішення, які ми реалізуємо
Розробка MVP
Розробка MVP для засновників і продуктових команд: визначення обсягу робіт, прототип у Figma, веб- або мобільна версія та запуск на стеку, на якому можна розвивати наступні версії. Виділені MVP-розробники або робота у форматі проєкту.
Розробка SaaS
Розробка SaaS: мультитенантна архітектура, підписки та білінг, корпоративний єдиний вхід (SSO), інструменти підтримки та релізи без простою. Виділені SaaS-розробники або робота у форматі проєкту.
Розробка вебзастосунків
Розробка вебзастосунків: клієнтські портали, внутрішні інструменти, дашборди та прогресивні вебзастосунки разом із бекендом і хостингом. Виділені веброзробники або робота у форматі проєкту.
Розробка API
Розробка API та інтеграцій: REST і GraphQL API, інтеграції зі сторонніми сервісами, подієвий обмін повідомленнями та вебхуки, з моніторингом кожного з'єднання. Виділені API-розробники або робота у форматі проєкту.
Міграція в хмару
Міграція в хмару: оцінка робочих навантажень, landing zone на Terraform, перенесення баз даних і застосунків в Azure, AWS або Google Cloud із запланованим перемиканням. Виділені хмарні інженери або робота у форматі проєкту.
Telegram- і Viber-боти
Telegram- і Viber-боти для бізнесу: замовлення, онлайн-запис, оплата через LiqPay, WayForPay або monobank, статус замовлення й боти для працівників, підключені до вашого сайту, CRM і обліку.
Чат-боти для бізнесу, установ і благодійних фондів
Чат-боти для підтримки клієнтів, запису, замовлень, передачі показників лічильників, вступників, громад і благодійних фондів у Telegram, Viber, WhatsApp, Facebook Messenger, Instagram і на сайті, на SendPulse, Botpress чи Copilot Studio або в коді.
Інтеграції з українськими сервісами
Ваш сайт, магазин чи CRM, підключені до Нової пошти, Укрпошти, LiqPay, monobank, ПриватБанку, Checkbox, Вчасно, Paperless, Prom.ua, Rozetka, KeyCRM і API Prozorro, без ручного переписування даних.
Розробка CRM
CRM-системи, налаштовані, доопрацьовані або створені під ваш процес: KeyCRM, SalesDrive, HubSpot, Pipedrive, Salesforce, Dynamics 365 або власна CRM, з інтеграціями й автоматизацією рутини.
Запитання про модернізацію legacy-систем
Переписувати чи модернізувати?
Зазвичай модернізувати. Переписування має сенс для модуля, поведінка якого добре зрозуміла, а код блокує кожну зміну; для решти поетапні оновлення та заміна за патерном strangler fig дають результат швидше й зберігають знання, закладені у старому коді. Огляд дає вам це рішення для кожного модуля письмово.
Розробники, які створили нашу систему, пішли. Чи зможете ви все одно прийняти її в роботу?
Так. Ми відштовхуємося від коду, бази даних, розгортання та людей, які досі користуються системою, а письмовий перелік ризиків розповідає, що ми знайшли, перш ніж ви вирішуватимете, що змінювати.
Чи продовжує стара система працювати під час модернізації?
Так. Виправлення та патчі безпеки на діючій системі виходять безперервно, а кожен крок модернізації випускається окремо, тож ніколи не буває періоду, коли бізнес чекає на нову версію.
Як швидко можуть стати до роботи інженери для legacy-систем?
Якщо відповідний інженер з модернізації вільний, старт залежить лише від вашої співбесіди, NDA і передачі прав на інтелектуальну власність. Інакше ми проводимо пошук, який зазвичай дає профілі кандидатів за два-три тижні, і ніхто не починає роботу, доки ви не скажете «так».
Як найняти фахівців через BigTree108, якщо вам потрібні інженери для legacy-систем?
Розкажіть про роботу, рівень і години, які вам потрібні. Ми пропонуємо одну-двох людей з їхніми профілями, ви проводите з ними співбесіду так, як зі своїм власним кандидатом, підписуєте один договір із ТОВ «БІГ ТРІ 108» і отримуєте один рахунок на місяць.
Кому належать результати їхньої роботи?
Вам. Кожен фахівець має підписаний із BigTree108 договір, за яким усі результати роботи передаються компанії, а наш договір із вами передає їх далі. Код, дизайн-макети та документи постачаються у ваші власні репозиторії та інструменти, а не зберігаються там, де змінити їх можемо лише ми.
Є система, до якої ніхто не хоче торкатися?
Надішліть репозиторій або опис системи. Ви отримаєте відповідь протягом одного робочого дня: план огляду та перші кроки після нього.