Ми шукаємо Tech Lead, який візьме на себе технічне лідерство в команді розробки AdaptiveCash Platform.
AdaptiveCash — це enterprise FinTech платформа, що автоматизує процеси управління готівкою для банків та інкасаторських компаній. Платформа об’єднує складні операційні процеси, інтеграції з банківськими системами та клієнтські портали в єдину технологічну екосистему та використовується банками у різних країнах світу.
Наразі ми розвиваємо нове покоління платформи AdaptiveCash, що включає клієнтські та партнерські портали, інтеграційні API та масштабовану cloud ready архітектуру.
Команда та зона відповідальності
Ця роль — про технічну відповідальність. Ви відповідаєте за те, як побудований і працює код, за технічні рішення на рівні модулів і за технічну якість того, що команда випускає в продакшн.
Що ви будете робити
Технічне лідерство
- відповідати за технічну реалізацію рішень, вироблених спільно з архітекторами та CTO;
- деталізувати архітектуру до рівня конкретних модулів, компонентів та контрактів API;
- ухвалювати технічні рішення всередині своєї зони: структура коду, підходи до реалізації, вибір бібліотек, план рефакторингу;
- виносити на обговорення з архітекторами випадки, коли реалізація показує, що початкове рішення потребує перегляду;
- задавати та підтримувати технічні стандарти команди: code style, підходи до тестування, робота з помилками, логування, обробка інтеграційних збоїв.
Hands-on розробка
- писати код на найскладніших та найкритичніших ділянках платформи;
- розробляти та розвивати Web API для інтеграцій з банківськими системами та партнерами;
- працювати з enterprise кодовою базою та складною бізнес-логікою, включно з legacy-частинами;
- оптимізувати продуктивність сервісів та роботу з базою даних — від профілювання до переписування важких запитів;
- брати участь у CI/CD процесах, релізах та розборі продакшн-інцидентів.
Робота з командою
- проводити code review та стежити за технічною якістю того, що потрапляє в основну гілку;
- технічно менторити розробників, підтягувати middle-рівень до самостійності;
- допомагати з декомпозицією задач та технічною оцінкою обсягу робіт;
- бути технічною точкою входу для QA: пояснювати логіку змін, допомагати з відтворенням та локалізацією дефектів, впливати на те, які ризики покриваються тестами;
- брати участь у технічних співбесідах та в технічному онбордингу нових інженерів.
Комунікація
- працювати з бізнес-аналітиками над технічною здійсненністю вимог та їх декомпозицією;
- доносити технічний контекст і ризики до архітекторів, CTO та product-сторони зрозумілою мовою;
- ескалювати технічні ризики вчасно, з варіантами рішень.
Наш технологічний стек
Backend
- .NET
- ASP.NET Core
- REST API
- NHibernate або інша ORM
- Oracle, MS SQL або PostgreSQL
Frontend
- React
- JavaScript / TypeScript
(Angular або Vue розглядаємо як додатковий досвід)
Infrastructure
- Azure DevOps
- CI/CD pipelines
- cloud або on premise deployment
Minimum qualifications
- 5+ років комерційного досвіду розробки програмного забезпечення;
- досвід у ролі Tech Lead, Lead Engineer або senior-інженера з фактичною технічною відповідальністю за напрямок чи модуль;
- глибокий досвід розробки production систем на платформі .NET;
- досвід розробки Web API та інтеграційних сервісів;
- впевнений досвід роботи з реляційними базами даних (Oracle або MS SQL), включно з оптимізацією запитів у складних системах;
- досвід роботи з ORM;
- досвід технічного проєктування модулів enterprise-систем;
- досвід розробки SPA-додатків (React, Angular або Vue) — достатній, щоб рев’ювити frontend-код та ухвалювати рішення щодо клієнтської частини;
- системний досвід проведення code review;
- досвід технічного менторства.
Ми очікуємо, що Tech Lead на цій позиції:
- самостійно реалізує найскладніші функціональні модулі системи;
- тримає в голові систему цілком, а не лише свою задачу;
- вміє працювати в моделі, де архітектура розділена з архітекторами та CTO — аргументовано дискутує, а не мовчки погоджується;
- може взяти відповідальність за технічне рішення та його наслідки;
- розбирається у складній бізнес-логіці та вміє пояснити її іншим;
- утримує баланс між швидкістю доставки та якістю кодової бази;
- працює з інтеграціями зовнішніх систем і розуміє їхні ризики;
- дає предметний технічний фідбек на code review, а не формальні апрув.
Буде плюсом
- досвід розробки FinTech або Banking систем;
- досвід роботи з NHibernate;
- досвід роботи саме з Oracle;
- досвід інтеграції з зовнішніми системами (REST, SOAP);
- досвід роботи з cloud інфраструктурою (Azure, AWS або інші);
- досвід роботи з великими enterprise системами та legacy кодовою базою;
- досвід роботи в команді з виділеною архітектурною функцією;
- досвід розбору продакшн-інцидентів та побудови моніторингу;
- досвід участі в технічній оцінці кандидатів;
- технічна освіта у сфері Computer Science або Software Engineering.
Ця позиція може не підійти, якщо
- у вас немає досвіду комерційної розробки .NET застосунків;
- ви працювали лише з front end технологіями;
- ви шукаєте перехід у менеджмент — тут переважна частина часу залишається в коді;
- вам принципово потрібна повна одноосібна власність над архітектурою — вона розділена з архітекторами та CTO;
- ваш досвід обмежується навчальними або pet project проектами.