AI-assisted delivery, backed by .NET and cloud architecture
SpainRemote across EuropeSpanish (native) · English (professional)
I'm Kike Carrasco, a Software Consultant based in Spain, with 16 years in software engineering. I am usually the one who owns the architecture, the delivery pipeline and the coding standards. Now I also use AI agents for routine engineering. They plan, build and review the work, so it reaches a human reviewer ready to approve.
Principal Software Engineer · , team of 20 · , Fintech
15 services upgraded by AI agents, behaviour unchanged
Upgraded 15 services to a new .NET version in under 24 hours, using AI agents. Every service kept its behaviour and ended ready for an engineer to review.
A payments provider's team had adopted AI without delivery standards, and code review had become negotiating with the model. I built multi-agent orchestrators on Claude Code and GitHub Copilot for technology research, ticket delivery and migration. The migration orchestrator upgraded 15 services from .NET 8 to .NET 10 in parallel, each ending at a pull request. None had end-to-end API tests, so it ran throwaway tests against real endpoints before and after, to show behaviour had not changed.
Lead Consultant .NET · , team of 4 · , Field-service software
Largest invoice run cut to about an hour
Made the most critical invoicing operations up to 53x faster. Moved the largest customers from the desktop app to the web, once invoicing stopped timing out.
A global vendor of invoicing and field-service software ran a monolith nobody at the client understood any more. A full run took around 48 hours, and invoicing from the web timed out. I mapped how it worked, added OpenTelemetry tracing, and sped up the code in measured rounds of async and parallelism. A separate change turned web invoicing into a queued job that notifies the user, which ended the timeouts.
Built the login system that brought 3 external companies onto the platform. Cut the time to set up an engineer's laptop from almost 2 weeks to minutes.
A price-comparison marketplace ran old custom login code, and no engineer could run the platform locally. Everyone shared cloud development databases, so one schema migration could stop the rest of the team. I containerised the platform with in-memory stand-ins for production dependencies, so each engineer ran it on their own laptop. I also built the identity provider on Duende IdentityServer with OIDC and OAuth 2.0, following OWASP guidance.
OIDCOAuth 2.0.NET 6C#Duende IdentityServer+3
AzureDockerGitHub Actions
Principal Software Engineer · , team of 20 · , Fintech
New payments platform live with its first customer
Built a new payments platform that went live with its first customer. Let customers connect their own systems, so the business stopped paying to connect each one.
A global payments provider wanted dozens of local systems on one new platform, with no codebase or pipeline to start from. I took part in designing the microservices system, working closely with the Chief Architect. I built the code structure, CI/CD and testing approach the feature teams worked inside. When Copilot-generated tests reached high coverage but checked little, I added mutation testing to CI/CD.
MicroservicesClean Architecture.NET 8C#Azure Service Bus+2
Kept a team of 8 together through delivery, at a time when people were leaving. Got 3 of them promoted, with evidence of the level they really worked at.
A sales and bidding platform for used and written-off vehicles ran on one large database that grew with every feature. The team was losing people, engineers' bands did not match their work, and the architect left soon after I arrived. I covered the architect's role on top of my own, and used OKRs to show management each engineer's real level. I stopped new work entering the monolith, so each new domain became a service with its own database and API.
Built a new service that became the one place the company kept its key business data. Delivered new features for the company's data platform as well.
The employer had a data platform product, but no single source for its core business data. Several clients had asked it to close that gap. The business gave the new service to me, and I built it as a REST API on ASP.NET Core. I made the backend technology decisions and improved deployment for client-specific configurations.
Co-founded an academy with 4 services, from languages to a play centre. It became profitable and kept trading for years.
As Founding Partner, I made every technology decision, including the back office, and owned digital marketing. The back office and accounting ran on Google Apps Script over Google Workspace, with no custom app needed. I ran Google Ads, Facebook Ads and adverts in the city to measure which of the 4 lines the local market wanted.
Google Apps ScriptGoogle WorkspaceGoogle AdsFacebook Ads
Founding Partner
One online place for classes, homework and progress
Built the online campus the academy taught on, with lessons, homework and progress per student. Connected it to the back office, so teachers worked in one place, not two.
Teachers at the academy managed classes, homework and student progress on paper and by memory. I built the campus on Moodle, with quizzes, scheduling and per-student personalisation so teaching could adapt to progress. Then I connected it to the Google Workspace back office. In front of it, I built the landing page that turned enquiries into sales calls.
Cut hosting costs 10x by moving the whole business off its own servers to the cloud.
Notegés ran on its own servers, which were expensive and slow to change. No service could scale without scaling the whole bare-metal machine. I moved the monolith to cloud-native microservices across AWS and Azure, and every SQL Server database onto Amazon Aurora. I owned the core layer, around 30 NuGet packages on a private feed, with both clouds behind interfaces.
Microservices.NET Core 2.xAzureAWSAmazon Aurora+1
NuGet
Software Architect · , team of 3
Stayed online through a national TV campaign
Kept the platform online through every prime-time TV advert of a national campaign.
A national TV campaign was coming, and traffic can multiply by thousands in the minutes after each advert. I started with load tests on the live system to find its real limit. Then we added caching at several layers, from Redis to the browser, and put a CDN in front. Because the air times were known, the servers scaled up before each advert.
CDNAuto-scaling.NETC#Azure+2
RedisHTTP caching
Software Architect
Server costs cut to a third
Cut the cost of the company's own servers to a third by reducing database load. Took the first step towards splitting the database into separate services.
Notegés could not split its old system into services until someone understood how its single database behaved under load. With the department head, I profiled and benchmarked it, finding missing indexes, harmful indexes, and legacy stored procedures and views. Then I improved the 20 to 30 heaviest queries with better indexing and materialised views, at database, ORM and server level.
SQL ServerSQL Server ProfilerT-SQL
Software Architect
3-month programme that made a graduate productive
Took a new graduate from zero to productive in 3 months.
A new graduate joined Notegés with no exposure to the team's architecture or practices. I designed a 3-month programme run with Scrum, following the team's real cadence, and mentored the graduate through it. It covered microservices, AWS and the team's engineering practices.
Microservices.NETC#AWSScrum
Software Architect
From no testing to testing before each release
Took the company from testing nothing to testing before each release.
Nothing was tested at Notegés, and support ran manual checks with no test plans and no record of results. I taught support to write, run and record test plans. Then we ran a loop of bug reports and fixes until nothing more was found. Finally, I built test-data tooling, added mutation testing with Stryker.NET and automated private NuGet delivery with CI/CD.
Mutation testingCI/CD.NETC#NuGet+1
Stryker.NET
Software Architect
Support chat that shows when customers are unhappy
Flagged unhappy customers, so the support team could be guided and trained. Gave customers a support chat that works like the messaging apps they use.
The support chat at Notegés felt a decade behind the messaging apps its users knew. The team had no signal on how a conversation was going until it had gone wrong. I led the build and ran customer messages through Azure Cognitive Services to detect tone and dissatisfaction. The chat client polled for new messages, with no push transport.
C#ASP.NET CoreAzure Cognitive ServicesJavaScript
Software Architect
The company's own survey and test platform
Built a survey and test platform for staff, and for training clients to rate their courses. Chose the web technology the company then used in its next products.
Notegés had no way to run satisfaction surveys or configurable tests, internally or for its training clients. I led the build of a Google Forms equivalent, on microservices structured to keep coupling low. I chose AngularJS with Angular Material as the company's frontend stack for this work.
C#ASP.NET CoreEF CoreAzure App ServiceAzure SQL+3
Angular MaterialAngularJSApplication Insights
Software Architect
Hiring-process product, delivered as project lead
Delivered a product to manage the hiring process, built around the customer's own workflow. Led the project as well as the architecture.
Recruitment ran on spreadsheets and email, with no shared view of where each candidate stood. I built the product on microservices with ASP.NET Core, AngularJS and Entity Framework on Azure, and ran it with agile methods.
Delivered several web apps for a banking client, from analysis through to release. Became the person a team of 10 asked before choosing an approach.
A banking client ran several web applications that all needed delivery and change at the same time. I worked full stack on ASP.NET MVC, Entity Framework, jQuery and Bootstrap over SQL Server, and mentored the team of 10.
Client sector: Health · Own products · Sports surfaces
1/4
Founder and Developer · , team of 4 · , Health
Breathing test turned into a game for patients
Turned a daily breathing test into a game, in a working app for a public competition. Formed and led the team of a doctor, a lawyer and a second engineer.
A regional government contest wanted a game-based app to help patients with COPD, a lung disease, keep taking treatment. The patient blows into the phone microphone, and the strength of the blow holds a ball at a target height. I added a physical-activity mini-game, alerts and risk surveys. A nurse could record follow-up on the patient's own phone, without a device of their own.
IonicAngularJSMeteorSQLiteAndroid
Founder and Developer · , Own products
Personal-finance app built and released
Built and released Finappcial, a working mobile app for personal budgeting.
BeYourSoft funded its own product ideas and tested them the way it advised clients to. I built Finappcial on Ionic to test whether an everyday budgeting habit could be made to last.
IonicAngularJS
Independent Consultant and Developer · , Sports surfaces
Customers design their sports pitch before ordering
Built a simulator where a customer designs a sports pitch and sees it before ordering. Let customers try each change themselves, instead of asking the manufacturer for a new drawing.
A sports-surfaces manufacturer sold from a catalogue, so customers had to imagine the finished pitch. I built the simulator with JavaScript, HTML and CSS, on my own.
JavaScriptHTMLCSS
Founder and Developer · , Own products
Online card-game prototype
Took part in the design and build of an online card-game prototype, a BeYourSoft product.
Client sector: Education · Legal · Early-stage and established companies · Mixed sectors · Recruitment
1/5
Independent Consultant and Developer · , Education
Online courses that kept a UK academy open
Built the website, payments and online classes that let a UK academy teach remotely. Kept it open through the pandemic, instead of closing.
A UK language and training academy taught only in person, and the pandemic left it no way to sell or teach online. I built a new WordPress site to sell the courses, with Stripe payments and a customer area. Then I built the virtual academy on top, where teachers and students hold classes remotely.
JavaScriptHTMLCSSWordPressStripe
Software Expert Witness · , Legal
Software-dispute expert report, defended in court
Wrote the expert report for one party in a software case, and defended it in court.
Two companies went to court over whether one software system derived from another or was built independently. I audited the first system in full, a CRM plus about 15 surrounding applications. Then I compared the second system against it on architecture, technology choices, data model and source code.
Technology Consultant · , Early-stage and established companies
Technology advice before money went into software
Advised founders and companies on what to build, what to buy and when to build nothing.
Some startups and companies across Spain were about to pay for software before knowing whether anyone wanted it. I ran lean-startup validation first, covering the Business Model Canvas, key partners, competitors and pricing. Validating an idea cost 5,000 euros, while building an unvalidated one cost 100,000. I also reviewed existing applications and reported their real state to non-technical owners.
.NETC#MeteorIonicAngularJS+1
Business Model Canvas
Independent Systems Consultant · , Mixed sectors
Audits of old systems, written for owners
Audited systems nobody had checked in years, and reported what was wrong in plain terms. Advised owners what to fix, what to replace and what to leave alone.
Companies across Spain ran on slow, fragile or unknown systems, with no engineer in-house to judge them. I sized each recommendation against what the business could absorb.
.NETC#SQL Server
Technical Assessor · , Recruitment
Senior engineering candidates assessed for hiring companies
Assessed senior engineering candidates for companies that had no one able to judge them. Gave each hiring company a written report to decide from.
Recruitment and HR companies hiring senior engineers engaged me directly, not through an agency panel. I assessed each candidate on .NET, frontend, architecture, systems and DevOps, and wrote how strong each was against the role.