Open for work · Jakarta, UTC+7

I build web apps that keep working after launch.

Login, payments, rate limits, servers. The parts a prototype skips. I write code with Claude Code and Cursor every day, so I also know exactly where those tools cut corners, and I fix that too.

Nadi Rifqi in graduation cap and medal
Nadi Rifqi Aufa RizqullahAI-Native Software Engineer

01

Projects

Four things I built on my own. Swipe through, tap one for screens.

On Vocharu and Voisla I built the web platform. The voice model behind them is someone else's work.

Older work

02

Five things I fix first

Most apps I'm handed were built fast, often with AI tools. They work in a demo. These are the places they fail with real users.

Hiding a button is not access control. Every route has to check who is asking, on the server.

Imaginer ran its own login and route guards for 1.6k users

The plan a person gets has to match what they paid, every time, promo code or not.

QRIS checkout, plans and promo codes on Vocharu and Voisla

An API key in the front end is public. I move it to the server and rotate it.

The single most common thing I find in AI-written code

Anything that calls a paid API gets a limit per user. Otherwise one script can empty your account overnight.

Imaginer capped every generation route from day one

A server you can restart and update without me, and a short note so the next developer isn't lost.

Hardened Linux servers for Imaginer, Vocharu and Voisla

  1. We agree the scope and the price before I touch anything. You tell me what the app does and what has to work on launch day.
  2. You see progress on a running version, not in a report. I work in small pieces and show each one as it lands.
  3. You keep everything. The code, the server access, and a handover note written for whoever comes after me.

03

About

I've been building web apps on my own since 2023, mostly for small Indonesian companies that needed a product, not a prototype. Two of them, Vocharu and Voisla, take real payments every day. Since June 2026 I've also been on contract at LPT FPSI Universitas Indonesia, building and testing a web app for their psychology lab.

I write most of my code with Claude Code and Cursor, and I review every line before it ships. That habit is why I'm comfortable taking over apps other people started with the same tools. Outside client work I maintain Nalarupa, an open-source design editor in Rust, because I wanted one and nobody had made it.

My code is on GitHub; the rest of my history is on LinkedIn.

Experience
Software Developer and Machine Learning Engineer, contractLPT FPSI Universitas Indonesia · Jun 2026–now
Software Engineer, freelanceWeb apps and apps to production · Jan 2023–now
Credentials
Certified AI Web Developer Vibecoding.id · Jan 2026
AI API Integration for Developers Hacktiv8 · Dec 2025
Bachelor of Government ScienceUniversitas Tanjungpura · 2021–2026
Stack
Next.js, TypeScript, Python, FastAPI, Rust, REST APIs, Linux servers, LLM APIs, RAG, MCP
Daily tools
Claude Code, Cursor, OpenAI Codex, Pi Coding Agent

GitHub, last 12 months

@naddrzz
5,755
contributions
165
active days of 365
19
public repositories
Contribution calendar for naddrzz: 5,755 contributions in the last year

Counted on 29 October 2026.

04

Have an app that's half-done, or done but fragile?

Write to me with three things: what the app does, what it was built with, and what still breaks. I reply within a day, in plain language. If it isn't work I'm good at, I'll say so and point you somewhere better.

Email me

naddrzz10@gmail.com

Project