Enterprise modernisation
I evolve existing .NET platforms and improve their architecture. I focus on clear boundaries and changes that teams can maintain with confidence.
.NET / C# / ASP.NET Core
Senior Software Engineer
.NET / Angular / Azure
Understand the domain. Take ownership. Help the team grow.
I help teams turn complex business problems into working software — from domain models to production applications. I combine .NET, Angular and Azure with experience in team leadership, mentoring and SQL optimisation.
See what my teammates say01 / Recommendations
Ownership, practical support and thoughtful questions. These are the qualities highlighted by the people I have built software with.
Team ownership
“He has always been a very reliable developer with a deep sense of responsibility for the team and the team's scope.”
Recommendation excerpt
SQL performance
“There are countless situations when Pawel's SQL optimization ideas turned out to be a game-changer in queries time execution.”
Recommendation excerpt
Hands-on mentoring
“What is more, Paweł played a crucial role in mentoring me and our colleagues during our internships. His guidance and support helped me to develop my skills and confidence in no time.”
Recommendation excerpt
02 / Expertise
I work best where a team needs to understand the domain, bring clarity to the architecture and deliver working software.
I evolve existing .NET platforms and improve their architecture. I focus on clear boundaries and changes that teams can maintain with confidence.
.NET / C# / ASP.NET Core
I build cloud services and integrations between systems, working with asynchronous messaging, containers and deployment processes.
Azure / Kubernetes / Kafka / RabbitMQ / NServiceBus
I translate business processes into models and code. I use DDD and Event Storming to help teams agree on responsibilities and system boundaries.
DDD / Event Storming / CQRS
I deliver features from APIs and databases through to Angular applications, optimising SQL queries and keeping code clear on both sides of the API.
Angular / TypeScript / RxJS / SQL
03 / Experience
Selected areas of my commercial work: banking, energy and education. From Nordic auto loans and KMD cloud platforms to British Council systems and Polish banking software.
Sep 2024 — present
I’m responsible for multiple applications supporting Santander Nordics operations, including auto loans across four countries: Finland, Sweden, Norway and Denmark.
.NET 10 / C# / NServiceBus / React / MS SQL / Azure / ArgoCD
Jun 2023 — Sep 2024
I took ownership of business domain knowledge and planned the team’s scope of work. I developed a cloud platform built with .NET, Angular and Kubernetes, combining technical design with implementation.
.NET / Angular / Kafka / Kubernetes
May 2020 — May 2023
I worked on KMD Elements for the energy sector, from architecture and domain modelling to backend and frontend features. I implemented Kafka messaging and CI/CD processes, mentored developers in Talent Lab and conducted technical interviews.
.NET / Azure / Angular / DDD / Helm
Oct 2018 — May 2020
I developed the Schools platform for registrations, payments and the administration of centres and schools. I worked in a team maintaining systems critical to British Council operations.
.NET / ASP.NET Core / Angular / SQL Server
Mar 2016 — Sep 2018
I developed banking systems including SPERT, anti-money-laundering software and a financial planning system for the National Bank of Poland. I also led functional changes for ecoTAX and optimised SQL query performance.
.NET Framework / Oracle / SQL Server / WPF
04 / Projects
Projects I develop outside my day job. Each one solves a real problem: running a one-person business, working with KSeF (Poland’s national e-invoicing system) or the infrastructure I use every day.
Running on my server
A self-hosted accounting app for a one-person Polish B2B IT business. It issues invoices and submits them to KSeF, prepares JPK_V7M VAT files, and calculates social security contributions and income-tax advances for flat, progressive and lump-sum taxation.
.NET 10 / Blazor / EF Core / SQLite
In development
A KSeF invoice importer for accounting offices. It downloads documents for many clients and passes them to Rachmistrz, Optima, Symfonia or WAPRO — as an import file or, for some programs, directly into their SQL Server database.
TypeScript / Node.js / SQL Server / Docker
Prototype
A native Mac port of the accounting app: a SwiftUI interface, tax rules in a shared Rust core, a local SQLite database and full offline use.
Swift 6 / SwiftUI / Rust / SQLite
In daily use
A Debian server running more than 20 Docker services: media, photos, file sync, a password manager, Git and ad-blocking DNS. A reverse proxy with internal TLS, remote access over Tailscale, monitoring and nightly backups with a written restore runbook.
Linux / Docker / Nginx / Tailscale
The repositories are private — I’m happy to talk through the details.
05 / Approach
Before proposing a solution, I want to understand the business problem and its constraints. At KMD, I took ownership of domain knowledge and planned the team’s scope of work. As a Talent Lab mentor, I helped new developers get started, and I interviewed prospective teammates.
I value collaboration, a calm approach to difficult problems and thorough code reviews. I have worked in international teams, including with colleagues in Denmark. Outside work, I build my own tools and run a home server — see my projects.
Education and perspective
Academic research
My master’s thesis at Nicolaus Copernicus University explored pattern recognition in medical images, focusing on architecture performance and methods for improving results.
An Erasmus+ exchange at Universitat de Vic, experience in Polish–Danish teams and professional working proficiency in English. I am comfortable discussing solutions with people from different backgrounds.
Certification
Selected training areas
DDD and CQRS · Web application security (Niebezpiecznik.pl) · Telemetry and DevOps
06 / Contact
Need someone who combines technical design, implementation and ownership of the result? Let’s talk about your team, system or engineering challenge.
office@pawelchojnacki.netYou can find more about my experience in my CV (PDF).