You will get a production-ready ASP.NET Core REST API with SQL Server backend

Project details
Most "build me an API" projects on Upwork ship code that works on the happy path and falls apart on everything else — unhandled nulls, mystery 500s, missing validation, hand-written Swagger that drifts from the actual endpoints, no tests, and secrets in appsettings.
What you get here is the opposite. Typed responses, proper status codes (200, 201, 400, 404 used correctly), FluentValidation on inputs, Swagger generated from the code so it can't lie, keyset pagination for lists, JWT with refresh-token rotation, integration tests that hit the real API not just the units, and a Docker setup that runs the whole thing locally in two commands.
20 years on .NET, Top Rated Plus on Upwork, 100% Job Success Score across 50+ contracts.
What you get here is the opposite. Typed responses, proper status codes (200, 201, 400, 404 used correctly), FluentValidation on inputs, Swagger generated from the code so it can't lie, keyset pagination for lists, JWT with refresh-token rotation, integration tests that hit the real API not just the units, and a Docker setup that runs the whole thing locally in two commands.
20 years on .NET, Top Rated Plus on Upwork, 100% Job Success Score across 50+ contracts.
Programming Languages
ASP.NET, C#Coding Expertise
Cross Browser & Device Compatibility, Performance Optimization, SecurityWhat's included
| Service Tiers |
Starter
$250
|
Standard
$600
|
Advanced
$1,500
|
|---|---|---|---|
| Delivery Time | 5 days | 10 days | 21 days |
Number of Revisions | 1 | 2 | 3 |
Number of Pages | 1 | 5 | 10 |
Design Customization | |||
Content Upload | - | - | - |
Responsive Design | - | - | - |
Source Code |
Optional add-ons
You can add these on the next page.
Additional Revision
+$50
Additional Page
(+ 3 Days)
+$120
Postman collection + sample requests
(+ 3 Days)
+$50
21 reviews
(20)
(0)
(0)
(1)
(0)
This project doesn't have any reviews.
IZ
Igor Z.
Feb 1, 2024
.NET Middleware developer
SB
Sam B.
Aug 30, 2023
EPG transformation maintenance tasks
NO
Nick O.
Aug 7, 2020
Experienced, senior .Net Core developer
TM
Tushar M.
Dec 16, 2019
Required an experienced .net core 2.x developer.
Ravi is one of the exceptional developers we have worked with. He is very knowledgable and his experience helped us in every way. He is highly recommended.
SB
Simon B.
Nov 22, 2019
Asp.Net CORE (v2.2), EF, Identity
Terrible experience. Attention to detail is low in both following instructions and coding, leading to substantial quality problems. He then cut communication and disappeared.
He was very friendly at start, which made me trust him too much, I should have performed more testing sooner. His jobs were:
- a small feature, which was good
- upgrade to core-v3 and change client-side lib handling, both of which seemed ok initially, but over time problems came to light, with various things missing
- I asked him to review architecture doc (for search), instead he picked a feature he liked and started coding it; I say ok let's make a PoC of it, which he did and demonstrated on a few records, but I did not test myself. Then he suggested to see performance with larger dataset, which he generated and a UI. When I saw him start to integrate maps, I asked him to bring it to a logical point so I can test things. I could not get it to work correctly on a single query. As none of this was written to fit into the product, rather lead by what Ravi felt like doing, I told him to put it aside, so we can do proper system architecture design.
- I spent a lot of time explaining, writing more and more detailed specifications. The job was (by now simple, just had to follow the specs) to establish reusablity and the interface among major search components. The delivered code was a disaster, it met none of the above. He billed 8hrs for this. I rewrote it myself as I felt this was the quicker/easier choice.
As previous work was still outstanding (not working), I wanted to work things out with him. I was frustrated with the last job, so I suggested some compensation maybe in order for the 8 hrs, but it need not be a refund, he could just do another task instead. Initially he said ok to this. Then he disappeared, ignoring all messages. I had no idea what happened to him, it seemed out of character, so I waited. Weeks later he asked UW to close this job, which happened with “No feedback given”. But I still give my feedback.
He was very friendly at start, which made me trust him too much, I should have performed more testing sooner. His jobs were:
- a small feature, which was good
- upgrade to core-v3 and change client-side lib handling, both of which seemed ok initially, but over time problems came to light, with various things missing
- I asked him to review architecture doc (for search), instead he picked a feature he liked and started coding it; I say ok let's make a PoC of it, which he did and demonstrated on a few records, but I did not test myself. Then he suggested to see performance with larger dataset, which he generated and a UI. When I saw him start to integrate maps, I asked him to bring it to a logical point so I can test things. I could not get it to work correctly on a single query. As none of this was written to fit into the product, rather lead by what Ravi felt like doing, I told him to put it aside, so we can do proper system architecture design.
- I spent a lot of time explaining, writing more and more detailed specifications. The job was (by now simple, just had to follow the specs) to establish reusablity and the interface among major search components. The delivered code was a disaster, it met none of the above. He billed 8hrs for this. I rewrote it myself as I felt this was the quicker/easier choice.
As previous work was still outstanding (not working), I wanted to work things out with him. I was frustrated with the last job, so I suggested some compensation maybe in order for the 8 hrs, but it need not be a refund, he could just do another task instead. Initially he said ok to this. Then he disappeared, ignoring all messages. I had no idea what happened to him, it seemed out of character, so I waited. Weeks later he asked UW to close this job, which happened with “No feedback given”. But I still give my feedback.
About RAVI
Senior .NET / SQL Server Engineer | ASP.NET Core, APIs | 15+ Years
Mumbai, India - 4:24 am local time
I specialize in .NET Core and C# backend systems — designing REST APIs, building microservices, and architecting enterprise-grade platforms end to end. On the front end I work across Angular and React. Cloud deployments across Azure and AWS, CI/CD pipelines, and Agile delivery are all part of my regular workflow.
On Upwork: Top Rated Plus, 100% Job Success Score, 50+ completed contracts, 12,000+ hours billed — mostly with US-based product teams that needed a senior engineer they could trust to own the technical side.
I take on both long-term engagements and focused consulting work. If you have a complex backend challenge or need a technical lead who can bridge engineering and business — let's talk.
Steps for completing your project
After purchasing the project, send requirements so RAVI can start the project.
Delivery time starts when RAVI receives requirements from you.
RAVI works on your project following the steps below.
Revisions may occur after the delivery date.
STEP 1
Confirm scope — resources, database approach, authentication model, and hosting target — against your answers in the Requirements section. Flag anything missing before any code is written.
STEP 2
Design the data model — tables, relationships, indexes, EF Core migrations. Share the ER diagram for your approval before building on top of it

