← All selected work

CASE STUDY / 03 · Payment systems

.NET modernisation in live payment operations.

Back-office migration, financial-system integrations and support-driven product changes — built on earlier experience with terminal software and PC–POS protocols.

ASP.NET CoreSQL ServerDapper / EF Core
Conceptual architecture
RoleSoftware Engineer / POS Developer
PeriodOct 2018 — Apr 2023
My scope.NET Core migration · backend services · SQL data access · REST/SOAP · operational UI · PC–POS communications

01 / Context

Modernising around live payment operations.

After moving internally from SEP’s POS team to the payment-switch team in March 2021, I worked on back-office systems supporting banking payment operations. Requirements came directly from merchant and customer support teams, so the work connected payment-domain understanding with service behaviour and user-facing changes.

My contribution

  • Migrated back-office applications to .NET Core; implemented C#/ASP.NET Core services with SQL Server, Dapper and Entity Framework / EF Core.
  • Translated support requirements into backend functionality and JavaScript, HTML and CSS interface changes; worked with REST/SOAP integrations.
  • Earlier in SEP’s POS team, developed terminal and C# PC-POS software and designed a bit/packet-level PC–POS protocol for serial and network connections.

02 / Engineering decisions

Behaviour, boundaries & implementation choices.

01

Modernise the back-office application layer

Worked on migration to .NET Core and implemented C#/ASP.NET Core backend functionality with SQL Server, Dapper and Entity Framework / EF Core. This combined application modernisation with the data-access and integration work needed by the back office.

02

Carry requirements across backend and interface

Translated support requests into backend functionality and JavaScript, HTML and CSS interface changes. This included working with REST/SOAP integrations rather than treating each UI change as an isolated screen edit.

03

Use explicit application structure

Worked with Onion and MVC architectures, asynchronous programming and dependency injection to structure payment-system development. My domain-design experience also includes familiarity with DDD concepts.

04

Bring device-level context into payments work

Earlier in the POS team, developed C/C++ terminal software and C#/.NET Framework PC-POS applications, and designed a bit/packet-level communication protocol for serial and network-cable connections.

03 / System responsibilities

The workflow at a glance.

  1. 01Merchant / customer support
  2. 02Requirements & business rules
  3. 03ASP.NET Core services
  4. 04SQL Server · Dapper · EF Core
  5. 05Back-office interface

High-level model of responsibilities. Internal implementation details are omitted.

Two kinds of engineering evidence

The production throughput figure describes team scale. The migration, integrations and product changes describe my responsibility. Keeping both visible makes the experience more useful to a technical reviewer.

04 / Validation & outcomes

What the work demonstrates.

Team production result

The payment-switch team increased production throughput from 1,000 to 5,000 transactions per second.

My direct contribution

Back-office .NET Core migration, backend/data-access work, integration and support-driven UI changes.

Attribution

The 5× result belongs to the switch team. No standalone benchmark isolates the effect of my back-office migration.

Disclosure boundary

No customer information, transaction records, payment credentials, internal diagrams or protocol specifications are included.

Diagrams and interactive examples are explanatory models. Employer code, account data and strategy logic remain confidential.

Next case studyStrategy-to-live execution

LET’S CONNECT

Let’s talk
systems, execution & risk.

For engineering conversations and opportunities across trading platforms, financial backend systems and payments.

pouriajamali91@gmail.com Connect on LinkedIn