ПриватБанк— є найбільшим банком України та одним з найбільш інноваційних банків світу. Займає лідуючі позиції за всіма фінансовими показниками в галузі та складає близько чверті всієї банківської системи країни.
Ми шукаємо досвідченого Java розробника, який прагне працювати в динамічному середовищі та розділяє цінності взаємної довіри, відкритості та ініціативності.
Ми прагнемо знайти цілеспрямованого професіонала, орієнтованого на якість та результат.
Основні обов’язки:
Проєктування та розробка нових функціональних модулів складних інформаційних систем на базі Java 21
Підтримка, рефакторинг та оптимізація існуючих програмних комплексів для підвищення їх продуктивності та стабільності
Розробка архітектури даних та проєктування схем баз даних (SQL та NoSQL)
Впровадження складних архітектурних патернів, таких як Saga та Orchestration, для забезпечення цілісності розподілених систем
Побудова високоефективних інтеграцій через REST API та черги повідомлень (Kafka/RabbitMQ)
Налаштування систем моніторингу та спостережуваності (Observability) за допомогою OpenTelemetry та Micrometer
Розробка метаданих-орієнтованої архітектури (Metadata-driven architecture) та створення декларативних шаблонів обробки даних
Написання чистого, тестованого коду з використанням сучасних підходів до автоматизації тестування (JUnit 5, Testcontainers)
Участь у процесах Code Review, обмін технічним досвідом всередині команди та менторство колег
Проєктування стратегій міграції даних та управління схемами через Liquibase
Участь у прийнятті архітектурних рішень та виборі технологічного стека для нових підсистем Робота з Docker та Docker Compose для забезпечення консистентності середовищ розробки та розгортання
Основні вимоги:
5+ років досвіду комерційної розробки на Java
Досвід роботи з Jackson 2.x/3.x на рівні конфігурування ObjectMapper та використання TypeReference/builder-based підходів
Досвід роботи з брокерами повідомлень Kafka або RabbitMQ (проєктування топології, partitioning, робота з DLQ, розуміння гарантій доставки)
Досвід структурованого логування за допомогою Logback/SLF4J (MDC, custom appenders)
Глибоке знання Java 21 та вище (включаючи Reflection, Generics, Annotation Processing, Records, Sealed classes, Pattern matching)
Впевнене знання SQL та досвід проєктування складних схем (нормалізація, індексація, Table-per-Type)
Впевнене володіння Spring Boot 3.x/4.x (Spring Security, RestClient, HikariCP)
Практичні навички роботи з реляційними базами даних (PostgreSQL) та розуміння принципів роботи MongoDB
Навички роботи з Docker та Git (розуміння branching strategy та PR flow)
Вміння працювати в команді, прозорість у комунікаціях та довіра до колег
Розуміння та застосування ідемпотентності та компенсаційних механізмів у розподілених транзакціях
Високий рівень відповідальності та увага до деталей
Здатність до інноваційного мислення та нестандартних рішень
Фокус на потребах клієнта та кінцевого користувача
Стресостійкість та здатність ефективно працювати в умовах стислих термінів
Критичне мислення та аналітичний підхід до вирішення проблем
Буде перевагою:
Досвід роботи з Workflow Engines (Temporal, BPMN) та розуміння State Machines
Досвід роботи з Quartz Scheduler (кластеризація, стратегії обробки misfire)
Досвід використання MapStruct для мапінгу об’єктів
Знання SpEL (Spring Expression Language) або інших мов виразів
Просунуте володіння PostgreSQL (JSONB, CTE, віконні функції)
Практика Property-based тестування (jqwik)
Розуміння теорії графів (DAG traversal, topological sort)
Розуміння архітектурних компромісів (Trade-offs: consistency vs performance, sync vs async)
Своїм співробітникам ми пропонуємо:
Роботу в найбільшому та інноваційному банку України
Офіційне працевлаштування та 24+4 календарних дні відпустки
Конкурентну заробітну плату
Бонуси відповідно до політики компанії
Корпоративна фінансова допомога у критичних ситуаціях
Медичне страхування та корпоративний мобільний зв’язок
Корпоративне навчання



