Services
Custom software developmentUmbraco developmentWeb developmentCRM developmentERP developmentAI & LLM integration.NET development & modernizationE-commerce developmentIntegrations & automationCloud & DevOpsMaintenance, support & project rescueDedicated teams & white-label
Our Work
Case studiesProducts
About Blog Contact
.NET development · Modernization

.NET development and modernization, without stopping the business.

A senior .NET team for two jobs. We build new web APIs, services and apps on current .NET. And we move old .NET Framework systems to .NET 8–10 one step at a time, while your people keep using them.

Three ways to work with us

Build new, modernize, or add engineers?

Most .NET requests fall into one of these. Many clients start with one and move to another as the system grows.

Build

A new application on current .NET

Choose this when: You need a web API, an internal system, a set of services or a desktop app, and you want it on a supported runtime from the first commit.

Architecture, code, tests, CI/CD and hosting on Azure or AWS. We design for the load and the team that will maintain it after launch.

ExampleEM2
8 .NET microservices on Azure
Modernize

Move off .NET Framework, step by step

Choose this when: A system that runs the business sits on .NET Framework or an old library stack. Patches are harder to apply and fewer people want to touch it.

An assessment, a migration plan, automated tests around critical logic and a cutover that keeps daily work running.

ExampleJongeneel
.NET Framework to .NET 10
Extend

Senior .NET engineers in your team

Choose this when: You already have a product and a roadmap, but not enough hands that know ASP.NET Core, Entity Framework and the rest of the stack.

Engineers who join your repository, your rituals and your code review. The team can grow or shrink as the work changes.

7 developers on one portal over time
What we build in .NET

From a single API to a fleet of services.

Each card links to a client project where we did this work, with the version of .NET it runs on.

Web APIs and business back ends

ASP.NET Core APIs that hold the rules for orders, inventory, invoices and users, with the precision finance and operations teams expect.

  • ASP.NET Core Web API and EF Core
  • Accounting and third-party API sync
  • Excel and PDF reporting
See it in One Motion ERP · .NET 7, two-way QuickBooks sync

Microservices and messaging

Services split by domain that talk through REST and message queues, so one busy part of the system can scale without dragging the rest.

  • Clean Architecture, CQRS with MediatR
  • Azure Service Bus and Azure Functions
  • Terraform for each environment
See it in EM2 · 8 services, 1000s of attendees per event

Desktop and cross-platform apps

.NET MAUI and Blazor apps that run all day in the background and send clean data to the server behind them.

  • .NET MAUI with Blazor UI
  • Conflict checks before data sync
  • Memory profiling and lifecycle fixes
See it in OSKI Time & CRM · desktop tracker, 8+ hrs without a crash

Background jobs and scheduled work

Imports, syncs, notifications and nightly runs that happen on time, retry on failure and show up in your logs when something goes wrong.

  • Hangfire and Azure Functions
  • Daily imports that touch only changed fields
  • Serilog, Sentry and Application Insights
See it in Ben-Gurion University · 15,000+ staff profiles synced daily

Content platforms on .NET

Large sites and portals on Umbraco, the .NET content management system, with custom catalogs, search and import pipelines underneath.

  • Umbraco on .NET 9 and .NET 10
  • Lucene search and custom caching
  • Bulk import from legacy databases
See it in Auto.co.il · ~100K items moved from a legacy CRM

AI features inside .NET products

Assistants and generators that live in your existing .NET application, use its data and check their own output before a user sees it.

  • LLM calls from .NET services
  • Conversation memory on your own store
  • Generated code run before it is shown
See it in Lokad · .NET 9, 82% of scripts run first try
.NET Framework migration

Leaving .NET Framework without a big-bang rewrite.

.NET Framework 4.8 still runs, but new libraries, hosting options and developers have moved to .NET 8 and later. A full rewrite puts the business on hold for months. We take the other route: assess, move in steps, protect the logic with tests and cut over when the new version has proved itself.

.NET 10

Jongeneel’s platform for inspections, toolboxes and transport planning moved from .NET Framework to .NET 10 and from Umbraco 8 to 17. NuPicker was replaced with Contentment, xUnit and Moq tests guarded the business logic, and Docker with CI/CD made builds repeatable. Read the case

  1. Assess

    We read the solution: projects, NuGet packages, internal libraries, background jobs and the modules people use every day. You get a list of risks and a target version.

  2. Move in steps

    Libraries and modules move one at a time. Packages with no future get a replacement with the same behavior. Nothing the business depends on is switched off to make room.

  3. Build a test safety net

    Unit tests around the logic that matters most run on every change, so a broken calculation shows up in the pipeline, not on an invoice.

  4. Cut over gradually

    Docker images and CI/CD make every build the same. Traffic or users move to the new version in stages, with the old one ready until the numbers look right.

  5. Keep it current

    Monitoring, logging and regular updates, so the next .NET release is a routine upgrade and not another rescue project.

Client story

A business portal that seven OSKI developers carried forward.

HS High Stake GmbH in Karlsruhe runs a large portal for the German division of a well-known company, its dealers and its employees. It covers product materials, staff training and more. OSKI joined in January 2021, and over the project 7 different full-stack developers worked on it.

  • The code spans .NET Framework 4.8, ASP.NET Core 3.1 and .NET 5, so old and new parts live side by side.
  • HotChocolate GraphQL, IdentityServer4, Hangfire and microservices sit behind React and AngularJS front ends.
  • Per the client, deadlines were regularly met and bugs were fixed fast.
ASP.NET CoreHotChocolateEntity FrameworkSQL ServerElasticsearchIdentityServer4HangfireUmbraco
HS High Stake GmbH
“Their communication skills, speed of development, and cost were incredible.”
Andrey Mir · CEO, HS High Stake GmbH · verified Clutch review, January 2023
5.0
Clutch rating
7
developers over time
2021
project start
Ben-Gurion University website running on .NET and Umbraco
Moving live systems

A live university site moved to AWS with no interruption.

Ben-Gurion University’s C# and Umbraco site serves applicants, students and staff. We containerized it and moved it from Azure to AWS ECS Fargate with RDS, S3 and ECR. Traffic shifted to the new setup gradually, and the public site stayed up the whole time.

~80Kpages on one platform
~300requests per second at peak
15K+staff profiles synced daily
Read the case
Project rescue

When the previous team stalled.

A drone-based agricultural spraying company in Manson, Washington, had a software project in trouble. A previous developer had delayed and mishandled its project for more than six months. In May 2025 the owner brought in one OSKI engineer.

  • We rebuilt the codebase from scratch with current practices, so it can be maintained for years.
  • The work ran from May to June 2025.
  • The project was delivered on time and on budget, per the client’s Clutch review.
Relentless focus on customer success
C
ChrisOwner, AgTech company · Washington, USA
★★★★★ Verified Clutch review, July 2025
.NET technology stack

The tools behind our .NET work.

This list comes from client projects, not from a wish list. It covers .NET Framework 4.8 on the oldest systems we maintain through .NET 10 on the newest ones.

Need a .NET site or portal with a content editor? See Umbraco development. Need engineers for months, not a project? See dedicated teams.

Runtime
.NET 10.NET 9.NET 8.NET 7.NET Framework 4.8C#
Web and APIs
ASP.NET CoreWeb APIHotChocolate GraphQLMediatRAutoMapperIdentityServer4
Data
Entity Framework CoreSQL ServerMySQLElasticsearchLucene
Jobs and messaging
HangfireAzure FunctionsAzure Service BusAWS SQS
Apps and UI
.NET MAUIBlazorRazorReactAngularVue.js
Testing and ops
xUnitMoqSerilogSentryApplication InsightsDockerTerraformAzure DevOpsAzureAWS ECS Fargate
.NET case studies

.NET systems in production.

Migrations, microservices, cloud moves, desktop apps and AI features, on .NET 9 and .NET 10 among others.

Completed toolbox quiz question in the Jongeneel platform
CRM & ERP2025–2026
Jongeneel

Moving Jongeneel's operations platform from Umbraco 8 to 17 on .NET 10

An internal platform for inspections, toolboxes and transport planning, upgraded from Umbraco 8 to Umbraco 17 on .NET 10 with daily workflows intact.

Umbraco 17from Umbraco 8
.NET 10from .NET Framework
Ben-Gurion University home page with aerial campus video and search
Web platforms2024–2025
Ben-Gurion University of the Negev · Israel

Moving Ben-Gurion University's ~80,000-page site to AWS without downtime

The university's main Umbraco site: ~80,000 pages, ~1,000 editors, daily staff data imports and a zero-downtime move from Azure to AWS.

~80,000pages managed
~1,000content editors
Event dashboard with attendee counts and quick links for a two-day forum
Web platforms2025
Events and conferences

EM2: matching thousands of event attendees across 8 .NET microservices

A cloud-native platform for multi-day, multi-venue events: 8 .NET microservices on Azure handle registration, scheduling, attendee matching and Zoom.

8microservices
1000sattendees and sessions
Auto.co.il home page with car finder and body type shortcuts
Web platforms2025
Auto.co.il · Israel

Rebuilding a major Israeli car portal on Umbraco 15 with ~100K migrated nodes

The third generation of a leading Israeli car site: ~100K records moved from a legacy CRM into Umbraco, fast catalog search and an editor-friendly back office.

~100Kcontent nodes migrated
Umbraco 15on .NET 9
Lokad home page with the Ask Lokad assistant button in the corner
AI2025
Lokad · France

An AI assistant that writes working Envision scripts for Lokad users

An assistant inside Lokad's platform that answers questions, generates Envision code and tests it against the real Envision runtime.

~70%faster to a first working script
94%scripts run by the second attempt
Purchase order summary grid with date filters and totals
CRM & ERP2025
Manufacturing and logistics

Replacing scattered tools with one ERP that stays in sync with QuickBooks

An internal ERP that replaced separate tools for inventory, purchasing, shipping and reporting, with a two-way QuickBooks sync the finance team can rely on.

QuickBookstwo-way invoice sync
4 unitsLB, KG, STON and MTON conversions
All case studies
Client reviews

What clients say about our engineers.

Quotes from verified Clutch reviews of long-running, rescue and custom software projects.

Guys proved to be experts in their field.
Andrey MirCEO, HS High Stake GmbH · Karlsruhe
★★★★★ Business portal on .NET, from January 2021
What stood out most was their commitment to delivering a functional and reliable solution, no matter the challenges.
C
ChrisOwner, AgTech company · Washington, USA
★★★★★ Project rescue and rebuild, 2025
Given that the client (us) invest in giving them adequate feedback, they deliver high quality, maintainable code.
Joannes VermorelCEO, Lokad · Paris
★★★★★ Clutch review, September 2024
.NET FAQ

.NET questions buyers ask us.

Anything missing? Send us your question and an engineer will answer, usually within one business day.

Contact us
Can you move our .NET Framework application to .NET 8, 9 or 10?+

Yes. We start by reviewing the solution, its packages and its internal libraries, then plan the move module by module. For Jongeneel, a transport company, we moved an internal platform from .NET Framework to .NET 10, replaced a plugin that had no upgrade path and kept background jobs running.

Do we have to freeze the business or the roadmap while you migrate?+

No. Critical modules keep working through the migration, and the cutover happens in stages. When we moved Ben-Gurion University’s site of about 80,000 pages from Azure to AWS, traffic shifted gradually and the public site had no interruption.

How do you make sure a migration does not break existing features?+

We add automated tests around the business logic that matters most before and during the move, so every change is checked in the pipeline. On Jongeneel we used xUnit and Moq for this, plus Docker and CI/CD so every build is the same.

Can you take over a .NET project another team started or left behind?+

Yes. We review the code first, fix what hurts daily work and then agree on a plan. For one AgTech client we took over a software project that a previous developer had delayed for more than six months and rebuilt the codebase with current practices. It was delivered on time and on budget.

Can your .NET developers join our existing team?+

Yes. Engineers work in your repository, follow your guidelines and go through your code review. For HS High Stake in Germany, 7 different OSKI developers worked on one .NET portal, starting in 2021. We say we can have a dedicated team ready in 2–4 weeks.

How much does .NET development with OSKI cost?+

Our rate listed on Clutch is $25–49 per hour, and the minimum project is $1,000. Well-defined work can run as a fixed-scope, fixed-price project. Ongoing work runs as a monthly dedicated team or as individual engineers added to yours.

Where can the application be hosted?+

Anywhere that runs .NET. We have built and run .NET systems on Azure, including Azure Functions, Service Bus and Key Vault, and on AWS with ECS Fargate, RDS and S3. We also set up Docker, CI/CD pipelines and infrastructure as code with Terraform.

Start a project

Tell us what your .NET system does today. We will tell you how we would build or move it.

A spec, a Figma file or three paragraphs is enough to start.

  1. First reply · from an engineer, not a sales rep
  2. 30-min call · with Roman, our CTO, to clarify scope
  3. After the call · a written proposal with plan, team and price
Roman Oleksuk
Roman Oleksuk, CTOPrefer to talk? Pick a slot in Roman's calendar
We reply from a human mailbox. No newsletters. Your brief stays under NDA on request. We use your details only to reply; see our privacy policy.