I have been building software since 2015, moving from online stores and fleet management systems to platforms where people trade, communicate, and manage their day-to-day work. That journey has shaped how I approach engineering: understand the product, find the right boundaries, and build systems that other people can work with and extend.
Today, I combine software architecture with hands-on backend development in C#/.NET and TypeScript/Node.js. At Echofin and FintechCrafts, I shared architectural ownership of new platforms, bringing my expertise in CQRS and domain-driven design into their foundations. I enjoy working through the details that make a platform hold together, from shared infrastructure and real-time communication to integrations that need more than a straightforward API connection.
I also care about how features fit together and how technical decisions shape the experience of using a product. I am at my best when I can stay close to the code, help guide the team’s technical direction, and feel ownership of what we are building.
White-label social trading platform for financial brokers
Software Architect / Software Engineer
May 2025 – Present
At FintechCrafts, I co-architected and helped build HubPro almost from scratch. The idea was to bring a trading community into a broker’s own environment, giving users a place to follow traders, discuss financial assets, and discover marketplace services without leaving the platform. My CQRS and domain-driven design expertise helped shape the backend foundations, alongside hands-on development in TypeScript and NestJS.
Much of my work focused on the shared infrastructure behind those features. Across three running instances, settings needed to stay in sync while designated background jobs ran on only one instance. I built a coordination module using Raft for leader election and inter-instance messaging for shared updates. I also developed a settings system combining file, memory, and database configuration, together with decorator-based pipelines that gave core workflows a consistent structure.
External integrations brought a different set of challenges. I connected FXBO and HubPro with bidirectional updates, working from minimal Swagger documentation and limited integration resources. For video streaming, I added application-side status tracking to keep HubPro informed when the provider did not offer the support the feature needed.
Content moderation required a similar approach: I brought more than twenty response formats for text and images into a single internal representation, then added rules for allowing or rejecting content according to HubPro’s needs. Across these integrations, the work was about making external services fit coherently into the product’s own behaviour.
Freelance
Backend architecture and application development
Software Architect / Software Engineer
August 2023 – April 2025
As a freelance engineer, I worked on the backend of a financial technology product, turning requirements into APIs, services, and shared application components. Using TypeScript, Node.js, and NestJS, I applied CQRS and domain-driven design to organise the business logic and provide a structure that could evolve with the product.
The work extended beyond individual features to PostgreSQL data models, Redis, Docker deployments, and CI/CD pipelines. I collaborated with other developers on both implementation and architectural decisions, contributing code and technical guidance as the application took shape.
Korr. Kindling Originality
Software for automated pharmaceutical and cash-handling systems
Software Engineer
January 2024 – November 2024
At Korr, my work connected software with machines people interacted with in the physical world. I developed .NET services and Angular interfaces for automated pharmaceutical and cash-handling systems, bringing together hardware communication, transaction processing, and the user-facing application.
One project let a patient speak with a pharmacist remotely while a robotic system dispensed medication. I worked on both the backend communication and the frontend experience supporting that interaction. Another project helped merchants deposit cash through an automated machine, with a web-based back office for managing the process. I contributed transaction-processing logic and an Angular administration dashboard within a system supporting multiple currencies, counterfeit detection, and identity verification.
Working across these layers kept the relationship between the interface and the underlying system very tangible. My stack included ASP.NET Core, Entity Framework Core, Angular, RxJS, NgRx, and SignalR, with Azure DevOps pipelines supporting delivery.
Echofin
Real-time communication platform for financial communities
Software Architect / Backend Engineer
March 2022 – July 2023
At Echofin, I helped take version 3 of the platform from a fresh start to implementation, sharing architectural ownership within a small cross-functional team. The product brought trading communities together around live conversations about forex, stocks, and cryptocurrencies, making real-time communication central to the experience.
My expertise in CQRS and domain-driven design helped establish the foundations of the new platform. We built its backend from scratch in C# and .NET Core using microservices, and I worked across architectural decisions and service implementation. SignalR supported real-time communication, while RabbitMQ handled messaging between services.
The role brought together the parts of engineering I enjoy most: shaping a system early, working through its details in code, and collaborating with frontend, mobile, and QA colleagues to turn it into a working product. The wider environment included Redis, CockroachDB, SQL Server, Docker Swarm, GitHub Actions, and Datadog.
Novibet
Online betting and gaming platform
Full Stack Developer
February 2020 – February 2022
At Novibet, I worked on the services behind a customer’s account journey, from onboarding and identity verification to keeping user information synchronised across the platform. As a senior full-stack developer in the account team, I built microservices in C#/.NET within an architecture using CQRS and domain-driven design.
That work also extended to the people operating the platform. I helped build a new Angular back office from scratch, connecting account functionality with the tools internal teams used every day. I also implemented a scheduling system for tasks that needed to execute far into the future, supporting workflows that extended beyond an immediate request.
The team’s wider scope included customer funds, sessions, and the internal CRM. As the team grew from five to twenty people, I worked across backend services, web interfaces, and automated testing, using SQL Server, MongoDB, Redis, RabbitMQ, xUnit, and SpecFlow.
Moosend
Email marketing and campaign analytics platform
Backend Engineer
April 2019 – December 2019
At Moosend, I worked on what happens after an email campaign is sent: turning campaign activity into information that marketers can use to understand its performance. Alongside another backend engineer, I developed analytics functionality within the email marketing platform.
The work sat in a C#/.NET microservices environment using RabbitMQ, Redis, ScyllaDB, Cassandra, and SQL Server. Automated unit and functional testing with NUnit and SpecFlow, together with Docker and TeamCity/Octopus delivery pipelines, formed part of the development workflow.
Telenavis
Telematics, fleet management, and workforce management software
Software Engineer
August 2018 – April 2019
At Telenavis, I worked on software built around activity beyond the office: vehicles on the road and teams working in the field. As a backend developer, I contributed to fleet and workforce management platforms, connecting web application development with telematics and operational needs.
I worked closely with an architect, another backend developer, and a mobile developer. The systems combined C#, VB.NET, ASP.NET, and .NET Core with SQL Server, PostgreSQL, Redis, and MongoDB, using REST APIs and WCF/SOAP services for integration.
NopServices
Custom software and e-commerce development
Full Stack Developer
September 2015 – August 2018
I began my software career at NopServices, building online stores for businesses whose needs rarely fitted a standard template. From supermarkets and fitness or pharmacy retailers to automotive parts suppliers, each project brought a different set of products, workflows, and customer expectations.
Using nopCommerce and ASP.NET, I worked across storefronts, backend logic, data access, and integrations. I developed custom plugins and adapted core application modules to meet business requirements and traffic demands, gaining experience of how the technical and user-facing parts of an application fit together.
I also worked on bespoke products, both as a primary developer and through outsourced assignments: a business financial-information platform, a system linking pet records to microchip identifiers, and analytics for a platform connecting patients with doctors. These projects gave me a broad foundation in C#, SQL Server, web services, JavaScript, jQuery, Angular, and Kendo UI.
Education
Hellenic Open University
MSc in Information Systems Information and Communication Technologies Grade: 9.3
University of Patras
Master of Engineering (MEng) in Civil Engineering Grade: 6.28
Research & Publications
Book Chapter
“802.11p based VANET applications improving road safety and traffic management” In Emerging Innovations in Wireless Networks and Broadband Technologies, edited by N. Chilamkurti. IGI Global.
Authors: L. Sarakis, Th. Orphanoudakis, P. Chatzimisios, A. Papantonis, P. Karkazis, H. C. Leligou, and Th. Zahariadis.
Thesis
Development and evaluation of an embedded system for intelligent transport systems (ITS) applications over an IEEE 802.11p wireless communication network