↓ Download PDF

Oleg Dmytriienko

Architect · Agentic & Distributed Systems
20 Years of Experience
// Location: Osaka, Japan · Remote
// Focus: Agentic & Distributed Systems
// Akka SDK · Effect TS · Fintech

uakennysoft@gmail.com
linkedin ↗ · github ↗
BIO

"Architect and hands-on engineer with 20 years across frontend and backend. AI agents are distributed systems: they hold state, call unreliable tools, run for minutes or days and must survive crashes. That's the problem space I've worked in for two decades: event sourcing, sagas, durable workflows, delivery guarantees. Today I build agentic systems on both sides: Akka SDK on the JVM (Lightbend certified) and Effect TS in TypeScript. I take a product from idea to production and own it there, using AI to move fast without trading away reliability or maintainability."

MentorshipPassionate mentor with a track record of leveling up engineering teams.

Engineering Principles

Reliability over cleverness

Maintainability as a first-class feature

Event-driven consistency

Functional purity where it counts

Employment History

Shift4 (formerly Credorax, Finaro)

Senior Fullstack Engineer

2021 – Present
  • ▹Reverse-engineered undocumented legacy applications with zero knowledge transfer, then rearchitected them around NgRx and RxJS — making implicit state explicit and eliminating a class of hard-to-reproduce state-related bugs.
  • ▹Refactored the codebase to a reactive, modular architecture, making state transitions explicit and traceable — which simplified feature work and made regressions easier to isolate.
  • ▹Designed and built the Billing domain frontend from the ground up, establishing the architecture, component library, and data flow patterns that the team continues to build on today.
  • ▹Expanded scope to fullstack, delivering end-to-end features across Spring Boot microservices and Angular — shipping complete features without waiting on separate backend availability.
AngularTypeScriptNgRxRxJSReactive ProgrammingState ManagementREST APIsHTML5SCSSSpring BootJavaHibernateJPAMicroservicesDockerCI/CDGit

BrainRocket (formerly Soft2Bet)

Frontend Architect

2020 – 2021
  • ▹Designed and implemented a framework for rapid casino integrations and seamless addition of gaming features into the betting flow.
  • ▹Defined and delivered a scalable solution architecture based on headless components and custom directives, abstracting complex state management and backend communication.
  • ▹Acted as Technical Lead for a team of two senior engineers, guiding architecture decisions and ensuring high development standards.
  • ▹Enabled developers to focus on UI/UX and feature delivery by encapsulating core logic within reusable building blocks.
  • ▹Reduced dependency on highly specialized engineers by enabling HTML/CSS-focused developers to contribute effectively with minimal programming knowledge.
  • ▹Conducted knowledge transfer sessions and established best practices that accelerated team onboarding and got new contributors productive quickly.
AngularTypeScriptRxJSNgRxComponent ArchitectureHeadless UIState ManagementREST APIsHTML5SCSSAgileArchitecture Design

Thomson Reuters / Refinitiv (via EPAM Systems)

Senior Software Engineer

2019 – 2020
  • ▹Diagnosed and resolved critical Angular performance bottlenecks in complex table views within the first sprint — introducing NgRx state management and targeted rendering optimizations that restored smooth interaction on large data tables.
  • ▹Improved overall application responsiveness and scalability through structured state handling and change detection optimizations.
  • ▹Designed and implemented a sequential recursive algorithm to enable isomorphic data transformation between Excel (XLS) files and Angular Forms.
AngularTypeScriptNgRxRxJSPerformance OptimizationChange DetectionState ManagementAlgorithmsData TransformationExcel (XLS)Reactive Forms

Slated

Senior Software Engineer · B2B Contract

Dec 2018 – Aug 2020
  • ▹Built the Angular frontend for Slated — a Hollywood-based platform and the world's leading marketplace for packaging and financing independent films — delivering a polished, professional UI for filmmakers, talent, crew, and investors.
  • ▹Designed and implemented the Messaging domain from the ground up: a role-based, multi-account system enabling users to communicate as themselves, as a named producer, or on behalf of a project — reflecting how dealmaking in the film industry actually works.
  • ▹Managed complex multi-identity session state with NgRx and Firebase as the reactive data layer — real-time updates flowed through the store, keeping messaging state consistent across producer, project, and personal identities within a single session.
AngularTypeScriptNgRxRxJSFirebaseMaterial DesignMessagingRole-Based ArchitectureMulti-AccountState ManagementREST APIsHTML5SCSS

28 Stone

client: Tullet Prebon / TP ICAP

Senior Fullstack Engineer → Frontend Lead

Apr 2016 – Dec 2018
  • ▹Joined as a Senior Fullstack Engineer (Java/GWT), then took ownership of the entire frontend for a greenfield project built for Tullet Prebon — a leading global interdealer broker in the TP ICAP group, facilitating wholesale trading across fixed income, rates, equities, energy, and commodities markets.
  • ▹Designed and implemented a fully reactive trading application frontend: WebSocket-driven real-time market data, live order book state, and a composable strategy framework supporting basic call/put options through to advanced structures — butterfly, bespoke, and custom multi-leg strategies. Adopted Angular 2 from beta and deployed via OpenFin for professional desktop trading.
  • ▹Contributed to backend development using Spring Integration patterns and Solace messaging broker, gaining full-stack visibility across the event-driven trading pipeline and enabling tighter coordination between frontend state and backend message flows.
AngularTypeScriptRxJSJavaGWTSpring IntegrationSolaceWebSocketOpenFinReal-TimeFinancial MarketsEvent-DrivenHTML5SCSSREST APIs

C.T.Co

client: Swiss Re

Senior Fullstack Software Engineer

Mar 2014 – Mar 2016
  • ▹Designed and implemented a re-insurance portal for Swiss Re — one of the world's largest reinsurers — end-to-end: backend in Java with Spring Framework and Spring Integration flows, frontend in GWT (Java-to-JavaScript compiler and UI framework).
  • ▹Engineered a resumable web-based file uploader capable of handling gigabytes of data and recovering seamlessly after a browser refresh. At a time when the HTML file API lacked low-level access, built an ActionScript plugin to handle file chunking and heavy client-side hashing operations — solving a problem pure JavaScript simply could not.
  • ▹Earned an internal 'Exceptional' engineer rating — the highest performance classification at C.T.Co — recognised for technical quality, ownership across the full stack, and delivering solutions to problems that had no off-the-shelf answer.
  • ▹Conducted internal GWT training courses for engineers on the team — covering architecture fundamentals, data binding patterns, and the nuances of compiling Java to JavaScript at production scale.
JavaSpring FrameworkSpring IntegrationGWTActionScriptRe-InsuranceFile UploadResumable UploadEvent-DrivenPortal DevelopmentREST APIsFullstack

Amber Games

Software Engineer

Apr 2013 – Apr 2014
  • ▹Part of the core team that built Strategoria — a real-time strategy browser game in the spirit of StarCraft — entirely from scratch. No frameworks, no libraries, no scaffolding. Every layer hand-crafted in plain Java: an in-memory database, a clustering and sharding solution, and a full dependency injection framework built from first principles. Demos are still live on YouTube.
  • ▹Integrated LuaJ as a dynamic scripting engine, enabling game logic and unit behaviours to be authored and hot-swapped at runtime without recompilation — cleanly separating engine concerns from game design in a system with zero framework support.
  • ▹Operated deep in the fundamentals: demanding multithreading, custom data structures tuned for real-time simulation, algorithm-heavy game state management, and applied mathematics for game mechanics — solving problems at a level where off-the-shelf solutions simply do not exist.
JavaLuaJMultithreadingAlgorithmsData StructuresGame DevelopmentReal-Time SystemsIn-Memory DatabaseClusteringShardingDependency InjectionLow-Level EngineeringMath

Playtech

Software Engineer

Feb 2012 – Jan 2013
  • ▹Contributed to a team at Playtech — one of the world's largest gambling software companies — building a framework for rapid gambling application development, enabling consistent game delivery across platforms with reduced per-integration overhead.
  • ▹Built a plugin system enabling a single shared portal to host independently deployable game modules — each game loaded on demand with a defined communication contract between the portal shell and the game runtime. Conceptually equivalent to what Module Federation later formalised: runtime composition of independently built artifacts over a shared interface.
  • ▹Deep R&D into cross-platform development: adopted PlayN (Google's cross-platform game framework) to author a single Java codebase that compiled to JavaScript via GWT for web, and ran natively on Android and iOS — a single logic layer shared across all three platforms without duplication.
JavaGWTPlayNAndroidiOSCross-PlatformGamblingFramework DevelopmentR&DJavaScript

Luxoft

client: Deutsche Bank ODC

Software Engineer

Jun 2010 – Feb 2012
  • ▹Worked on a Portfolio Management application for Deutsche Bank through Luxoft's Offshore Development Center — at a time before frontend/backend separation was standard, owning the full stack: Spring Framework for business logic, MyBatis and SQL stored procedures for data access, and GWT for the UI.
  • ▹On a second portal project, built interactive data presentation widgets (portlets) using the Flex framework — delivering charting components and visualisations that surfaced financial data from multiple departments in a unified banking interface.
  • ▹Conducted internal GWT training courses for colleagues — sharing practical knowledge of the Java-to-JavaScript compilation model, component architecture, and UI patterns that the team relied on daily.
JavaSpring FrameworkGWTMyBatisSQLStored ProceduresFlexPortletsChartingBankingPortfolio ManagementEnterprise

DioSoft

client: State Street Bank

Software Engineer

Nov 2009 – Jun 2010
  • ▹Implemented a Rich Internet Application (RIA) for State Street Bank — one of the world's largest custody and asset servicing banks — through DioSoft, using Java EE (J2EE) and Oracle WebLogic Application Server.
  • ▹Delivered interactive data views for custody and fund administration workflows — presenting portfolio positions, transaction status, and asset data across accounts in a structured, client-facing interface.
JavaJ2EEWebLogicRIABankingEnterprise

EPAM Systems

client: B&Q

Junior → Software Engineer

Sep 2006 – Nov 2009
  • ▹Joined as a Junior Software Engineer, working as part of a team delivering e-commerce features for B&Q — the UK's largest home improvement retailer — on the ATG platform (now Oracle ATG Web Commerce, part of Oracle Commerce).
  • ▹Gained hands-on experience across the full software development lifecycle — requirements, design, implementation, testing, and production support — in a large-scale, real-traffic e-commerce environment.
JavaATGOracle CommerceE-CommerceJ2EEFullstack

Education

National Technical University of Ukraine 'Kyiv Polytechnic Institute'

Bachelor's Degree · Computer Systems, Automation and Control

Mar 2007

Certifications (Since 2020)

Note: Courses taken prior to 2020 are considered outdated and are omitted.

2020

Functional programming Haskell

Stepik

VERIFY_CERT
2020

Functional Programming Principles in Scala

Coursera

VERIFY_CERT
2020

Advanced Scala And Functional Programming

Udemy

VERIFY_CERT
2021

Supercharge Scala Future | FP-Tower

Udemy

VERIFY_CERT
2022

Akka Essentials & Persistence

Rock The JVM

2023

ZIO 2

Rock The JVM

2023-24

Japanese Proficiency (A1 & A2, ongoing)

Busuu

VERIFY_CERT
2025

Reactive Architecture: Introduction to Reactive Systems

Lightbend

VERIFY_CERT
2025

Reactive Architecture: Domain Driven Design

Lightbend

VERIFY_CERT
2025

Reactive Architecture: Reactive Microservices

Lightbend

VERIFY_CERT
2025

Reactive Architecture: Building Scalable Systems

Lightbend

VERIFY_CERT
2025

Reactive Architecture: Distributed Messaging Patterns

Lightbend

VERIFY_CERT
2025

Reactive Architecture: CQRS and Event Sourcing

Lightbend

VERIFY_CERT
2025

Akka Cluster - Sharding (Scala)

Lightbend

VERIFY_CERT