Event-driven • AWS • Java

Building scalable, observable cloud systems

Hi, I'm Kiryl Miadzvedzeu — Senior Java/AWS Engineer. I design and deliver event-driven platforms with Step Functions, Lambda, and DynamoDB. I love migrating legacy to microservices, reducing latency & cost, and adding solid observability.

Projects

Automotive Group — Calendar Management System

2021–2022

Internal Google-style calendar for an automotive group: schedule and manage events with filters, tags, and priorities; speaker profiles with photo + talk details; multi-user views for departments.

  • Java 11
  • Spring
  • Hibernate
  • Gradle
  • MS SQL
  • Flyway
  • RabbitMQ
  • Docker
  • GitLab CI
  • Testcontainers
  • JUnit
  • Mockito
  • Swagger/OpenAPI

SolbegSoft / Helmes — Risk & Asset Protection

2021–2022

Protection software for automotive & property insurance. Migrated parts of a legacy monolith to microservices; delivered new features, QA hardening, and stability improvements.

  • Java 8
  • Spring
  • EclipseLink ORM
  • Maven
  • Liquibase
  • SOAP
  • XML (SAXIF)
  • Tomcat
  • ActiveMQ
  • Ruleset
  • JUnit
  • Mockito

Shell Energy — Smart Metering Platform

2022–2024

Real-time metering for 2,200,000+ users. XML-only legacy monolith wrapped by adapters; traffic strangled to WebFlux microservices on Kubernetes. Observability via Prometheus/Grafana with RPS and hourly/daily/weekly ingestion metrics.

  • Java 17
  • Spring WebFlux
  • Spring Boot
  • RabbitMQ
  • PostgreSQL
  • Cassandra
  • Docker
  • Kubernetes
  • Prometheus
  • Grafana
  • Liquibase
  • Testcontainers
  • JUnit
  • Mockito
  • Cucumber
  • REST
  • XML
  • Maven
  • Git

Control-Plane: Event-driven tenant workflows

2024–2025

Internal multi-tenant control-plane for a SaaS platform: orchestrates full tenant lifecycle (onboarding, configuration, offboarding) using AWS Step Functions + Lambda. Implemented saga patterns with compensations, idempotency, fan-out/fan-in, and async SQS jobs. Built observability with CloudWatch/X-Ray and fault-tolerant retries. Achieved −25% Lambda cost and −30% p95 latency through provisioned concurrency, batching, and payload optimizations.

  • Java 21
  • Spring Boot
  • AWS Lambda
  • Step Functions
  • EventBridge
  • DynamoDB
  • SQS
  • Terraform
  • X-Ray

Experience

  • Backend Software EngineerGodel Technologies

    2024 – Present

    • Event-driven workflows: Step Functions, Lambda, EventBridge, SQS
    • Team setup: 5 backend developers, 1 QA, 1 DevOps, 1 Tech Lead, 1 BA, 1 ADC
    • −25% Lambda cost, −30% latency via optimization
    • Observability with CloudWatch & X-Ray
    • Process: Scrum mixed with Kanban for delivery flexibility
  • Backend Software EngineerGodel Technologies

    2022 – 2024

    • Smart metering platform; hundreds of microservices
    • Java 8 → 17, Spring 2.3 → 3.0 modernization
    • Shared libraries, 98% bug-free releases with robust tests
    • Agile workflow: Scrum + Kanban hybrid
  • Backend Software EngineerSolbegSoft / Helmes Group

    2021 – 2022

    • Risk management & asset protection for automotive/property insurance
    • Migrated parts of a legacy monolith to microservices; QA hardening
    • Team setup: 1 Tech Lead + 5 developers + 1 ADC
    • Agile workflow: Scrum + Kanban hybrid
  • Backend Software EngineerAutomotive Group — Calendar Management System

    2020 – 2021

    • Greenfield internal Google-style calendar (events, filters/tags/priorities, speaker profiles with photo & talk details)
    • Sole backend engineer in a 6-person team (1 BE + 5 FE)
    • Team setup: 9 backend developers, 1 ADC, 1 Tech Lead
    • Built from scratch in ~10 months + 2 months production support
    • Process: Scrum ceremonies with Kanban flow for tasks

Notes — Control-Plane (Step Functions + Lambda)

Project. Multi-tenant control-plane to orchestrate tenant lifecycle (onboarding, changes, offboarding) with AWS Step Functions for orchestration, Lambda for compute, EventBridge for scheduling/triggers, and SQS (+DLQ) for decoupling. Strong idempotency (“exactly-once perception”), retries with jitter/backoff, compensations for saga steps, and end-to-end observability.

Orchestration overview

EventBridge (triggers)Step Functions — SagaValidate InputLoad TenantDynamoDBParallel (fan-out / fan-in)Provision • ConfigureBilling • NotifySQS queueswork • retry • DLQasync steps / outboxCompensationscancel/bill rollback

Key decisions & patterns

  • Saga orchestration (retries with jitter/backoff, timeouts, circuit-breakers).
  • Idempotency: request keys + DynamoDB conditional writes → exactly-once perception.
  • Fan-out/fan-in via Parallel; async jobs in SQS (work/retry/DLQ) + outbox.
  • Observability: structured logs, RED/USE, X-Ray, canaries; SLO/SLI dashboards.
  • Testing: contract tests, local Step Functions, Testcontainers, fault injection.
  • Hardening: exponential backoff + jitter, poison-pill quarantine, dedupe, DLQ alarms.

Cold starts vs p95

SLO p95 ≤ 300 ms200260320380440ms (p95)0255075100cold / 1k invocationsp95 responseCold starts (per 1k)

p95 latency per step — before vs after (ms)

ValidateProvisionBillingNotifybeforeafter

~−30% p95 via batching, payload slimming, fewer network hops and waits.

My role

  • • Designed state machines, compensations, and idempotency strategies.
  • • Implemented Lambda handlers, SQS consumers, and inter-service contracts.
  • • Performance/cost tuning (Provisioned Concurrency, batching, memory tuning).
  • • Dashboards/alerts and on-call runbooks; cutovers and post-mortems.

Stack

AWS Step Functions, Lambda (Java), EventBridge, SQS, DynamoDB, API Gateway, Terraform, CloudWatch/X-Ray, GitHub Actions; Testcontainers, JUnit/Mockito, contract tests.

Shell Energy

Real-time metering for 2,200,000+ users; multiple meters per user (gas + electricity). A change-frozen XML monolith was wrapped by adapters and gradually strangled to WebFlux microservices on Kubernetes. Observability via Prometheus/Grafana with RPS and hourly/daily/weekly ingestion metrics.

Cutover to microservices25%
drag me
API GatewayLegacy MonolithXML contracts, change-frozenWrapped by adaptersWebFlux Microservices (K8s)Metering APIValidationAggregationBillingNotificationsReporting75% traffic25% trafficAdapters / Anti-corruption (XML over MQ/HTTP)
Phase 1 — Assess & Extract

Users

2,200,000+

Meters per user

Multiple (gas + electricity)

Observability

RPS + hourly / daily / weekly ingestion

  • • Identified bounded contexts around the legacy metering monolith (read-only, XML-only contracts).
  • • Built adapters / anti-corruption layer: XML over MQ/HTTP, schema contracts, idempotency keys.
  • • Established observability baseline: Prometheus + Grafana (golden signals, RED/USE), structured logs.
  • • Prepared data models for WebFlux microservices (CQRS read models for UI).

Highlights

  • • Event-driven flows with RabbitMQ; outbox + retry/backoff; deduplication.
  • • Dual-write & shadow traffic with drift detection and safe comparisons.
  • • WebFlux on Kubernetes (probes, HPA); blue/green & canary via Ingress.
  • • Latency reduction via I/O tuning & back-pressure; standardized metrics & tracing.

My Role

  • • Development of WebFlux-based microservices
  • • Database design and creation
  • • Data migration / “data pumping” from the monolith
  • • Deployments and CI/CD pipelines
  • • Writing unit and integration tests
  • • Functional discussions with BA/Tech Lead and the team

SolbegSoft / Helmes — Risk & Asset Protection

Protection software for automotive & property insurance. We adapted the product for a specific region: localization & compliance rules, integrations with regional systems, and configuration-driven feature toggles. In parallel, we migrated selected monolith parts to microservices and hardened QA/stability.

Regional adaptation workflowCore ProductOOTB featuresRegion Packlocale & complianceIntegration Adapterspolicy / claims / paymentsFeature Flagstoggle per regionRules Engineproduct/regulatory rulesMapping & Validationschemas • checksRegional systemsUnderwritingPaymentsDMV/Registryflowproductregion packadapters
R1R2R3R4R5beforeafter

Fewer incidents after QA hardening & adapter isolation (illustrative data).

My Role

  • • Adapted out-of-the-box features for a specific region (rules, locales, UX).
  • • Built integration adapters (policy/claims), mapping & validation layers.
  • • Configuration-driven toggles (feature flags) and rules engine changes.
  • • Helped extract modules from the monolith to microservices (contracts, endpoints).
  • • Tests: unit/integration, contract tests for adapters.
  • • Deployment support and functional scope discussions with BA/Tech Lead.

Automotive Group — Calendar Management System

Internal Google-style calendar for an automotive group: schedule and manage events with filters, tags, and priorities; speaker profiles (photos + talk details); multi-user views for departments.

Mon
Tue
Wed
Thu
Fri
Sat
Sun
1
2
3
Design Review
HM
SpeakerHelena Mall
UXMed
Design Review
Tag: UX
Priority: Med
4
5
6
7
Board Meeting
BS
CEOBen Smart
ExecHigh
Board Meeting
Tag: Exec
Priority: High
8
9
Press Briefing
HM
SpeakerHelena Mall
PRMed
Press Briefing
Tag: PR
Priority: Med
10
11
12
13
14
Product Demo
BS
CEOBen Smart
HM
SpeakerHelena Mall
LaunchHigh
Product Demo
Tag: Launch
Priority: High
15
16
17
18
Dept. Standup
InternalLow
Dept. Standup
Tag: Internal
Priority: Low
19
20
21
22
Partner Sync
HM
SpeakerHelena Mall
PartnerMed
Partner Sync
Tag: Partner
Priority: Med
23
24
25
26
27
Town Hall
BS
CEOBen Smart
HM
SpeakerHelena Mall
All-handsHigh
Town Hall
Tag: All-hands
Priority: High
28
29
30
TagPrioritySpeaker

Delivery model

  • • Client provided brand & full design system (Figma) — strict visual parity.
  • • Waterfall governance, but monthly demos with the client — feedback → iterative scope.
  • • Sole backend engineer in a 6-person team (1 BE + 5 FE).
  • • Built from scratch in ~10 months + 2 months production support.

My contributions

  • • API design (REST), authn/authz (LDAP), audit log.
  • • Recurring events, time-zones & DST correctness; ICS export.
  • • Priorities/tags/filters, speaker profiles (photo + talk details).
  • • CI/CD, Testcontainers, Flyway migrations; performance tuning and caching.

Contact

Warsaw, Poland · B2B · Contract · Remote/Hybrid/On-site