Available for new projects

Software that works.Systems that scale.

I’m Ciro, a .NET and cloud engineer with 25+ years of experience. I build applications, connect systems, and modernize the software your team already depends on.

My background spans software engineering, enterprise integration, databases, and public-sector systems. I use AI coding agents daily, with the architecture rules that keep generated code inside a codebase’s boundaries.

Tech I work with
C# / .NETVue / TypeScriptSQL ServerPostgreSQLArcGIS / GISAWS / AzureDocker · GitHub ActionsTerraformPowerShell

Where I can help

From a new application to the systems you already depend on.

Custom software

Web apps, internal tools, and mapping applications shaped around your business.

APIs & integrations

Reliable links between apps, data, payment providers, and third parties.

Workflow automation

Fewer repetitive steps, and the work across your systems connected.

Legacy .NET

Off IIS, into containers and the cloud, while it keeps running.

AI-assisted development, done safely

Instruction files, agent skills, and architecture rules so AI tools speed your team up without eroding the codebase.

Useful software, solid foundations

Professional work is described in outline. Happy to go deeper on a call.

Civic platforms · Public sector

Public platforms for the City of Philadelphia

Compliance filings, street-sweeping and snow-plow maps, and permit payments that residents and regulated businesses use every day.

.NET Clean ArchitectureVue 3 / TypeScriptArcGISSQL Server
Platforms in daily public use across Philadelphia.
Problem and approach

Problem

Residents and businesses need to file, pay, and find information online, on systems that must stay reliable, accessible, and secure for years.

Approach

.NET Clean Architecture APIs with Vue 3 and TypeScript front ends: regulatory form workflows, payment integrations, and public Esri/ArcGIS mapping. Professional work, described in outline; no code is shown.

Real-time systems · Personal project

CRV.Trading

A real-time platform connected to three broker APIs. One engine runs simulations, paper runs, and live operations from the same code.

C# / .NET 10SignalRSQLiteAzure
One codebase for simulation, paper, and live, covered by 400+ automated tests.
How it’s built

Problem

The same logic has to run against historical data and against live external APIs, without two code paths that slowly drift apart.

Approach

A composable engine that separates decision logic from execution, so simulations exercise the real lifecycle code. Integrated with the Schwab, TradeStation, and Tradovate APIs, with configurable risk limits and a SignalR live dashboard. Deployed to Azure with Docker and Bicep.

Market data Strategy signals Backtest Live brokers Real-time dashboard Trade lifecycle engine multi-instrument feeds rules only, no side effects historical simulation paper and real orders ASP.NET Core · SignalR one code path · risk limits

Developer tooling · Open source

A foundation for the next application

A dotnet new template for a .NET 10 Clean Architecture API with an optional Vue 3 app, Docker, and AWS infrastructure: the plumbing of a production app, without its business logic.

.NET 10Vue 3EF Core + PostgreSQLTerraform · AWS
New projects start from one command, and every option combination is built and tested in CI.
Problem and approach

Problem

Every new application starts with the same setup (structure, authentication, pipeline, infrastructure) before any feature exists.

Approach

Switchable authentication (JWT, Microsoft Entra ID, or none), optional UI, tests, samples, Docker, and infrastructure, keyless OIDC deployments from GitHub Actions to AWS, and Terraform for dev and prod. A verify script generates, builds, and tests every flag combination before each release.

This is an open-source, MIT-licensed version of the scaffolding I built for my team, rebuilt from scratch for public use.

Workflow automation · Open source

OpenDataSync

A cross-platform PowerShell 7 module that pulls records from public open-data APIs and loads them into SQL Server, built the way an unattended job should be.

PowerShell 7SQL ServerPesterGitHub Actions
Tested on Windows, macOS, and Linux on every push, with 80%+ code coverage required.
How it’s built

Problem

Scheduled data jobs often start as one-off scripts: credentials in source, errors silently ignored, SQL built by string concatenation, and no tests. They run, but they can’t be handed to a team.

Approach

Secrets resolved from environment variables or a SecretManagement vault, REST calls with timeouts and exponential-backoff retries, and parameterized, batched inserts that roll back as a unit. Table and column names are validated before a connection opens, and -WhatIf previews a run without touching the database. Pester tests and PSScriptAnalyzer run in CI on all three operating systems.

Desktop · Cross-platform migration

Tail Blazer, across platforms

Bringing Roland Pheasant’s WPF log-tailing tool to Avalonia UI and .NET 10.

C#Avalonia UI.NET 10Reactive
One codebase now targets Windows, macOS, and Linux.
Problem and approach

Problem

Tail Blazer was built on WPF, which limited it to Windows.

Approach

Adapted it to Avalonia UI and .NET 10 while keeping its reactive architecture, so log inspection stays fast and familiar.

Clear steps. No surprises.

From the first conversation to a handover your team can run with.

  1. Step 1

    Intro call

    Free, 30 minutes. What you need, what exists today, and whether I’m the right fit.

  2. Step 2

    Written proposal

    Scope, price, and timeline. Fixed price for defined work, weekly rate for ongoing work.

  3. Step 3

    Delivery in the open

    Working software early, in a repository you own, with regular written updates.

  4. Step 4

    Yours to keep

    Docs, a deployment pipeline, and a handover your team can run with. Support is available afterwards.

A good fit

  • Small and mid-size teams running .NET systems that need new features, integrations, or a move to the cloud.
  • Businesses that want an internal tool or a repetitive workflow automated, and maintainable afterwards.
  • Teams with a legacy application that has to keep running while it moves forward.

What are you working on?

A new product, a system that needs attention, or an integration that would make work easier. Tell me what you need and when. I reply within one business day.

Book an intro call

Calendar not loading? Open Calendly in a new tab (opens in a new tab)