Skip to main content
Available · Currently taking briefs
WORLDWIDE · AI + FULL-STACK ENGINEER FOR FOUNDERS AND TEAMS

AI produces code
that runs. I produce code that survives your customers.

Send a brief. 48 hours later you get a working demo of your project, not a written quote. If it doesn't land, you owe nothing.

Send me your brief
8 hackathon wins since 2025IBMHydro-QuébecCirque du SoleilShipping since 2017
Scroll
01 / About

Jonathan Andrei.
A developer who never stops building.

8 hackathon wins since 2025Senior developerJonathanSolvesProblems on YouTube

Turning hard problems into software that people actually use, one project at a time.

Jonathan Andrei, senior software developer, portrait
Senior Developer · Worldwide
What I bring to a project

Four things I've stayed true to across seven years of shipping. Tap any card for the story behind it.

01

I don't give up on hard problems

I stay with a problem until it's actually solved, not until it's mostly working. The boring middle, the retry logic, the migration script nobody wants to write, that's where the real work lives.

Two years at Cirque du Soleil rolling out ServiceNow was mostly workflow mapping before a single script got written. Same story at IBM writing the translation table nobody else wanted to. That's the middle nobody puts in a demo, and it's what makes the demo hold up in production.

AI produces code that runs. I produce code that survives contact with your customers.

02 / Selected work

Projects built to answer a real brief.

Projects I built, shipped, and can walk you through. Click any card to see more.

59 projects
Last Seen: an eleven-year-old drone finds a person from one photo with OpenCV 5, asks a human "Is this them?", and only then follows
Oct. 2026

Last Seen: an eleven-year-old drone finds a person from one photo with OpenCV 5, asks a human "Is this them?", and only then follows

Entry for the OpenCV AI Competition 2026. Picture a search coordinator at a park at dusk: a man with dementia walked away from his care home an hour ago, she has one photo from this morning and one volunteer with an old consumer drone. She is a composite; the job is real. Last Seen takes one photo and a search area and looks for the person, and the person it finds in the demo is me.

OpenCV 5: the new cv2.dnn engine running a YOLO11n person detector on a laptop CPUOpenCV Model Zoo person re-identification network, fused with HSV clothing histogramsOpenCV camera model, ArUco markers and solvePnP for pixel-to-ground and the camera checkClaude as the mission agent, with six strict tools and every decision in trace.jsonl+3
Still Works: Actual Budget moved onto GitLab, where GitLab Duo writes browser checks from what production already does and a release only ships if it still does all of it
Oct. 2026

Still Works: Actual Budget moved onto GitLab, where GitLab Duo writes browser checks from what production already does and a release only ships if it still does all of it

Entry for the GitLab Transcend Hackathon, Life After Code (Path B, Hands-off). In July 2025 Actual Budget shipped version 25.7.0, and typing 10.23 into the amount of a new schedule saved 1,023 (upstream issue #5266). The change had passed every test in the project's CI. Actual's maintainers have labelled more than a hundred issues as regressions, and each one got past CI too, because CI tests what the author of a change thought to test. Nothing checks that a release still does what production already does.

GitLab Duo Agent Platform: three custom flows (Release Guard, Regression Report, Release Notes) and a Release Manager agent, published to the AI CatalogGitLab Duo Code Review with three custom review instructions, and Duo Developer started by its assign and mention triggersGitLab CI/CD across all nine stages: environments, Releases, SAST, secret detection, dependency and container scanning, a six-hourly production watchPlaywright release checks written by Duo and calibrated on production before they count+2
Spare Thumbs: Gemma 4 on my laptop answers "can we move the meeting?" in my words, from my real Google Calendar, and never offers a time I am already booked
Oct. 2026

Spare Thumbs: Gemma 4 on my laptop answers "can we move the meeting?" in my words, from my real Google Calendar, and never offers a time I am already booked

Entry for the DEV Hacktoberfest Open-Source AI Challenge, Week 3: Slow and Steady, where the theme rewards laziness. Clients move meetings at night: "something came up Thursday, could we do Friday 10h instead?" To answer, I open my calendar, find a gap and type the same reply I always type, about once a week. Spare Thumbs answers for me.

Gemma 4 (gemma4:e4b) with native function calling, running locally on OllamaEmbeddingGemma for retrieving my own past repliesPython 3.11 agent loop with five tools: find_meetings, check_calendar, draft_reply, move_event, hand_offGmail API (drafts in the client's thread) and Google Calendar API (moving the event)+3
Floodplain: run before openai 3.0.0 shipped, it finds the 3 packages the release breaks, and NVIDIA Nemotron writes fixes their own test suites pass
Oct. 2026

Floodplain: run before openai 3.0.0 shipped, it finds the 3 packages the release breaks, and NVIDIA Nemotron writes fixes their own test suites pass

Entry for the Nebius x NVIDIA Global AI Hackathon (October 2026), Coding and Agentic Engineering track. At 01:55 UTC on 12 August 2026, openai 3.0.0 swapped its HTTP library from httpx to httpx2. Six hours later a user reported that fresh installs of Simon Willison's llm were broken, and nine days later Simon shipped a pin below 3. OpenAI's own tests passed; the break only showed up in other people's test suites, and openai ships about fifteen releases a month.

NVIDIA Nemotron 3 Nano, Super and Ultra on Nebius Token Factory, with native tool calling for the fixer agentNebius Token Factory Sandboxes: one checkout per dependent, forked for every test run, command and patchTavily search and extract for migration guidance, with date and self-reference guardsuv, resolving each fork against the PyPI index frozen by upload time+3
Orvandel: an original browser MMORPG under a broken moon, where one click on Wake now puts you in the world as a ready hero with no account, download or form
Oct. 2026

Orvandel: an original browser MMORPG under a broken moon, where one click on Wake now puts you in the world as a ready hero with no account, download or form

Entry for Build With AI: Basics 2026 on Devpost. Orvandel is an original browser MMORPG I started on October 9, 2026: levels 1 to 60, four nations with two races each, ten classes with a signature ability each, ten open zones plus four capitals and a contested zone, five dungeons with a Group Finder, a cross-faction raid at level 60 and a story told over three chapters. It runs in a desktop browser on Cloudflare Workers, with one Durable Object per zone and D1 for accounts.

TypeScript end to end, about 110,000 lines outside testsThree.js and WebGL 2 for the clientCloudflare Workers with Durable Objects (one per zone) and D1An authoritative world simulation at 10 ticks per second, shared by a Node + SQLite server for local play+3
Watermark: when a Ring flood sensor fires, a Ring camera records the water and the homeowner gets an evidence pack their insurer can use
Oct. 2026

Watermark: when a Ring flood sensor fires, a Ring camera records the water and the homeowner gets an evidence pack their insurer can use

Entry for the Ring track of Build, Ship, Shape: Amazon Developer Hackathon (October 2026), with the AWS Builder and Open Source mini-challenges. On June 20, 2026 the city sewer backed up into more than 60 units of my condo. Mine also came in through the foundation, one week after I had finished rebuilding from my first flood. The mitigation report blamed heavy rain and floated my backyard shed. The only rebuttal was two phone videos I took because I happened to be home. Whether that water was sewer backup or clean rainwater decided which coverage limit applied.

Ring Partner API: account linking, sensor webhooks, WHEP live sessions, image download with Ring's own timestamps, event history, chime playbackringwire, the typed Python client for the Ring Partner API I wrote and published to PyPIAmazon Rekognition DetectLabels for frame labelsAWS IoT Core for rover dispatch over MQTT, Amazon S3 for frames and packs, Amazon EC2 (Graviton) for hosting+4
Sans calque: English to Canadian French from an open 4B model I fine-tuned for $1.35 on government translations, with every flag citing where its rule came from
Oct. 2026

Sans calque: English to Canadian French from an open 4B model I fine-tuned for $1.35 on government translations, with every flag citing where its rule came from

Entry for the DEV Hacktoberfest Open-Source AI Challenge, Week 2: Side Hustle. Every page on my site has a French twin, so I gave an open 4B model a line any Canadian small-business page would have: "you need a business number (BN) from the CRA". It wrote "auprès du RRCQ". There is no RRCQ. The Canada Revenue Agency is the ARC in French, and in Canada's open data the government's translators wrote ARC all 31 times the pair shows up.

Qwen3.5-4B fine-tuned on Tinker (LoRA rank 32, 2 epochs, about $1.35 per run)Open Government Portal: 82,455 English-French pairs under the Open Government Licence – CanadaTermium Plus, the Translation Bureau's term bank, as the source of every term flagHeld-out canada.ca small-business pages translated by Government of Canada translators as the grader+4
Nature Bingo: a bingo card of the 16 things most likely out near your town this October, ranked by an open-weight model on a laptop
Oct. 2026

Nature Bingo: a bingo card of the 16 things most likely out near your town this October, ranked by an open-weight model on a laptop

Entry for the DEV Hacktoberfest Open-Source AI Challenge, Week 1: Touch Grass, whose brief asks for something that makes the screen the shortest part of the experience. Nature Bingo is a bingo card of the 16 things most likely to be out this October within about 10 km of your door. Open it on a phone or print it, then go and find them, tapping a square only when something turns up. It is meant for small towns, because that is where the obvious version breaks: around Hawkesbury, Ontario, iNaturalist holds about 3,000 research-grade records in total, and the most-logged species across every October on record has four sightings. A list of what was seen here last October is mostly noise.

TabPFN, an open-weight tabular foundation model, run locally on a laptop GPU with no model API in the loopPublic iNaturalist observations: ten years of Octobers (2016 to 2025) across 48 towns between Ottawa and MontrealBlind backtest on October 2025 against three baselines: last October's list, the regional most-seen, and gradient boostingPython 3.12 with uv for the data pull, training and ranking+2
World Clock: a Kaggle benchmark that asks 19 frontier models what time it is, grades every answer against the IANA tz database, and dates each model's clock to the month it stopped
Oct. 2026

World Clock: a Kaggle benchmark that asks 19 frontier models what time it is, grades every answer against the IANA tz database, and dates each model's clock to the month it stopped

Entry for the DEV x Kaggle Benchmarking Challenge (23 September to 11 October 2026). On 18 June 2026 Alberta's Official Time Act came into force and the province stopped changing its clocks. British Columbia had done it in March, the Northwest Territories followed in August, Morocco returned to plain UTC on 20 September, and on 17 September Manitoba announced it will not fall back on 1 November. Every one of those is in a public record and in the database that runs the clock on your phone. None is in a model trained before mid-2026. So I asked the question someone in Calgary is actually asking: it is 9 a.m. here on 15 November, what time is that in Toronto? The answer is 10:00. All 19 models said 11:00.

Kaggle Benchmarks and its Model Proxy, 19 models through one prompt at temperature 0IANA tzdata 2026d as the answer key, read through Python's zoneinfo so no expected answer is typed by handTwenty tzdata releases since 2022a kept unpacked, so the same answer sheet can be scored against every one of themThe dating ladder: the release a model agrees with most on the 46 changed answers is the month its clock stopped+5
03 / Experience

A journey of work that shipped.

Roles that shaped how I build, ship, and think about software.

N2 Help & Solutions

Senior Full-Stack & ServiceNow Developer

Current

N2 Help & Solutions

June 2025 - present
Canada
Hydro-QuébecEnterprise client delivered
ServiceNowSAPHRSDReactReact NativeAI
  • Delivered ServiceNow implementations for N2 clients including Hydro-Québec, building integrations between SAP and ServiceNow and rolling out HR Service Delivery (HRSD) to streamline employee lifecycle processes.
  • Partner closely with clients to understand their workflows, then design and automate the pain points using ServiceNow, custom code, and modern AI capabilities so teams can focus on higher-value work.

Content Creator & Hackathon Competitor

Current

JonathanSolvesProblems (YouTube)

June 2024 - present
Online
8×Hackathon wins
15+Public demos shipped
AI / LLMsFull-StackReactPythonHackathonsYouTube
  • Run a YouTube channel focused on development, AI-driven tools, and full project walkthroughs built from scratch.
  • Eight hackathon wins: the OpenAI Open Model Hackathon (8,652 participants) with Steam Print, Prompt Opinion's Agents Assemble: The Healthcare AI Endgame (4,335 participants) with MaternalGuard, DEV's Weekend Challenge: Passion Edition (Best Use of Google AI) with Pick Your Side, UiPath AgentHack 2026 (Test Cloud track, 1st place, 333+ submissions from 104 countries) with FlakeWarden, Build with DataHub: The Agent Hackathon (Production ML Agents track, 1st place, 612 submissions) with Culprit, DEV's Weekend Challenge: Dog Days Edition (Overall Winner) with Still Here, DEV's Big Summer Bug Smash (Best Use of Sentry) with the sentry-python dedupe memory-leak fix, and the CockroachDB × AWS Hackathon: Build with Agentic Memory (2nd place) with Unsay. Plus submissions to the Reddit Mod Tools, H0: Hack the Zero, GitLab Transcend, SANS Find Evil!, Global AI with Qwen Cloud, Google Cloud Rapid Agent, Splunk Agentic Ops, Slack Agent for Good, Reddit Games and Puzzles, Backblaze × Genblaze, ZerveHack, Melius, Google MLB, MeldRx, NASA, and RevenueCat Shipyard challenges.
Cirque du Soleil

ServiceNow Developer

Cirque du Soleil

June 2023 - May 2025
Canada
End-to-endHR lifecycle automated
ServiceNowSuccessFactorsWSDESC PortalNow Mobile
  • Implemented a custom ServiceNow solution to automate the onboarding and termination processes within the company. This solution involved integrating SuccessFactors with ServiceNow, streamlining HR operations and ensuring efficient management of employee lifecycle events.
  • Modernized ServiceNow catalog items by automating approval requests and creating order guides, including those tailored for new hires, to consolidate all provisioning item requests in one accessible location.
IBM

Project Manager

IBM

May 2022 - Apr 2023
Canada
3Industries served
ServiceNowWatson AI OpsSevOneQRadarITSMITOMCSMAgile
  • Led technical projects integrating enterprise applications such as Watson AI Ops, SevOne, and QRadar with ServiceNow, focusing on scalable, user-facing configurations that streamlined IT operations.
  • Developed ITSM, ITOM, and CSM features in ServiceNow, improving enterprise service delivery and aligning with client business needs across industries (telecommunications, healthcare, finance).
Concordia University

Research Assistant (Winter 2022 Semester)

Concordia University

Jan 2022 - May 2022
Canada
99%System accuracy
C++OpenGLIMU SensorsQuaternionsCross-platform
  • Developed a cross-platform C++ application to process and visualize real-time IMU sensor data, improving system accuracy to 99% by optimizing data collection and analysis algorithms.
  • Implemented 3D data visualization using OpenGL to simulate quaternion-based rotations, enhancing sensor feedback representation.
Sphera

Data Developer

Sphera

Jun 2021 - Apr 2022
Canada
-30%Production build time
C#Entity FrameworkSQL
  • Developed mapping specifications using C# and the Entity Framework to optimize data access.
  • Used efficient SQL queries to maintain and verify data.
Colas Canada Inc.

IT Provision Analyst

Colas Canada Inc.

May 2019 - Aug 2020
Canada
Top performerThrough COVID-era disruption
Active DirectoryExchangeCitrixNasuni CloudSLA / OLATicketing
  • Managed requests on the IT ticketing system related to service level agreements and operational level agreements.
  • Monitored key metrics for access provisioning to ensure the timely, high quality and cost-effective execution of services.