Azure cost optimisation for .NET teams

Most cost work ends with a report. Someone else still has to do the work. I do both parts: I find where the money goes, then I go in and change the infrastructure and the .NET code that spends it.

8+ years in .NETAZ-204 · AZ-500 · FinOps Certified Practitioner (In Progress)Fintech · Insurance · Airline

How I approach Azure cost optimisation

What you usually get

A dashboard, a tagging policy nobody enforces, and a list of rightsizing recommendations. The recommendations are usually correct. They land on a team that already has a backlog, so six months later the document is stale and the bill is bigger.

What I do instead

I write the Terraform, the policies and the pipelines myself. If a service needs a bigger VM because it leaks memory, I open the solution and fix the leak. You end up with the saving, not the plan for one.

Example: debugging an undocumented AzureRM bug in a Terraform migration →

Ways to work together

01 · Start here

Azure Cost Assessment

Two weeks, fixed price. I go through your subscriptions and tell you where the money actually goes and what's worth fixing first.

  • Spend broken down by team, product and environment
  • Idle, orphaned and oversized resources, with numbers attached
  • Where your reservations and savings plans stand: coverage and utilisation
  • Gaps in tagging, allocation and governance
  • A prioritised list, with an estimated saving next to each item

02 · Implementation

Optimisation & Governance

Everything from the assessment, carried out as code in your repositories and your pipelines.

  • Tagging and allocation enforced with Azure Policy and Terraform
  • Budgets, cost alerts and anomaly detection that reach whoever can act on them
  • Rightsizing, plus shutdown schedules for non-production
  • A commitment plan: what to buy, at what scope, and when to wait
  • Reporting your finance team can read without a translator

03 · Application level

Application Cost Engineering

Some spend can't be fixed from the portal. When the architecture is what costs the money, the fix is in the code.

  • Memory and CPU profiling, so you can drop a tier
  • Always-on workloads moved to event-driven or serverless
  • Legacy services containerised and consolidated onto AKS
  • Chatty cross-region calls and egress designed out
  • Cost per transaction tracked like any other engineering metric

Where this comes from

~€50k / year

Rebuilt foreign-currency transaction processing for a bank as a distributed REST API. It freed up about 0.75 FTE of operational work every year.

3 GB → 800 MB

Cut an airline application's memory use by over 70%, which made a smaller and cheaper instance class viable in production.

Service Fabric → AKS

Moved legacy microservices onto right-sized, elastically scaled infrastructure. Less operational overhead, smaller compute footprint.

Full experience and certifications on the About page →

How an engagement runs

  1. 1

    Call

    Thirty minutes about your estate, your bill and what's worrying you. No slides.

  2. 2

    Read-only access

    Reader rights on the subscriptions in scope. I can't change anything, and at this stage I don't need to.

  3. 3

    Assessment

    Two weeks to findings, sized savings and a plan. If you want to take it from there yourself, that's a fine outcome.

  4. 4

    Implementation

    Optional. I do the work alongside your engineers and hand over the code and a runbook.

Is this a fit?

A good fit if

  • Azure is a meaningful cost centre for you, not a rounding error
  • You run .NET
  • Your bill is growing faster than your customer base, and nobody owns cost full time
  • You want it fixed rather than documented

Probably not if

  • You're mainly on AWS or GCP
  • You already have a FinOps team and want extra hands on reporting
  • You want a flat percentage cut off the bill no matter what it does to the product

Let’s talk

Send me last month’s Azure bill and one line about what worries you. You’ll get an honest answer about whether there’s anything worth doing here, including when there isn’t.

Based in Novi Sad, Serbia. Working remotely across CET and US hours.