
Original Table Games (opens in a new tab)
Four original casino table games: the player rolls the dice and the dealer deals the cards. Three are ready to play with virtual chips, their math proven exactly and by simulation.
Software Crafter · Porto, Portugal
A passionate software engineer who loves transforming ideas into reality. Dive in to explore my journey, projects, and the cool stuff I’m working on.
01Portfolio

Four original casino table games: the player rolls the dice and the dealer deals the cards. Three are ready to play with virtual chips, their math proven exactly and by simulation.

Converts a salary between hourly, daily, weekly, monthly and yearly pay in BRL, USD, EUR and GBP, with the Central Bank of Brazil’s exchange rates and shareable links.
02Games

A calm, clever puzzle: tap the arrows out, one by one, and clear the board. Endless levels, a daily challenge and a league, on the web now and soon on the iPhone.

A calm water sort puzzle: pour the colors until every tube holds one. Endless levels, a daily puzzle and a league, on the web now and soon on the iPhone.

A calm castle logic puzzle: one castle per row, column and realm, none touching. Endless levels, a daily challenge and a league, on the web now and soon on the iPhone.

A Sudoku with three levels, notes, undo and hints. It saves your game as you play and works offline.
03Articles
Arrows is a puzzle game for the iPhone and the web with endless levels, a daily challenge, a league and events, and no server. Every board is generated on the device from a seed. Here's how: partition, peel and measure, pixel-art events and a simulated league.

.NET 8 and .NET 9 both reach end of support on November 10, 2026. Here's a practical checklist for moving a service straight to .NET 10, the next LTS release, and the C# 14 features worth adopting on the way.

Every puzzle in my Sudoku is generated in the browser, with exactly one solution, in a few milliseconds. Here's how: bit masks for candidates, a most-constrained-first solver, symmetric clue removal and a simple difficulty grader.

Cold starts are the price of running .NET on Lambda. Here's how to measure them, the cheap fixes to try first, and how SnapStart and Native AOT compare on the .NET 10 runtime.

04Journey
2025 – present
Three clients so far: .NET, SQL Server and Azure for PremFina; Aileen, Ardanis’s AI contact-center platform, for SOBI Analytics; and an AI agent that answers questions about Anglo American’s haul trucks and mining equipment.
2024 – 2025
For a veterinary-pharmaceutical client, I automated batch creation and deployment, migrated the legacy app to .NET 8, and developed a proactive monitoring system.
2024
I worked at NewDay through YLD, on a team responsible for payments, utilizing .NET Core, Cosmos, and REST APIs.
2023 – 2024
Transformed software pipelines with GitHub Actions, authored open-source libraries, overhauled server architecture with AWS Lambda, and built monitoring tools using ASP.NET and ECMAScript 6.
2022
Strengthened SQL Server infrastructure, contributed to a global pharma research app, and conducted code reviews.
2020 – 2022
Built a new API for claims ticket management in the insurance industry using SQL, REST, and ASP.NET Core; contributed to a hybrid ticket type in transportation, integrated systems for customer credit and address validations, improved system resilience to 99.99%, implemented a high-speed batch process for 1 million customers, and developed a Grafana dashboard for real-time API monitoring.
2017 – 2019
Performed as a lead developer for the high-traffic product display page, overseeing 10,000+ requests per minute, conducted monthly one-on-one meetings with a team of ten engineers and QA professionals, balanced team backlog with the product owner, and managed feature releases and A/B testing.
05Contact
The best way to reach me is on LinkedIn.