Software Engineer · West Java, Indonesia
Anggara Roshandi Putra
I'm Anggara Roshandi Putra (Angga), a software engineer in West Java, Indonesia with 3 years of experience shipping products across backend, web, and mobile. At DoctorTool I build .NET services and the React Native patient app used by clinics across Indonesia. Before that I co-founded Writeen, an edtech platform, and built its Go backend for three frontends.
fresh off the desk
Things I've made
Tap a project to pull out its page.
Kavpad
the problem
Long stories are hard to keep straight: characters, places, and lore end up scattered across chapters. And most AI writing tools try to write the story for you instead of helping you think.
my role & what I did
Founder · Full-stack Developer
- Founded the product and built it end to end, from frontend to backend.
- Built auto-linking of characters, places, and lore across chapters.
- Added Word/PDF manuscript import so writers can bring their existing drafts.
- Built an AI assistant (Claude Haiku) that asks questions to unblock writers instead of writing for them.
what it looks like
tap a name → its card pops up


a writer's desk where every chapter knows its own characters
built with
- React
- Vite
- Go
- MongoDB
- Google Cloud
- Claude

DT Nakes — DoctorTool
the problem
Clinics need one place to manage patient records, appointments, and prescriptions.
my role & what I did
Software Engineer
- Build .NET backend services and APIs serving DoctorTool's mobile app and web platform.
- Ship features end to end across backend, web, and mobile with the product and design teams.
- Discuss technical decisions directly with the CTO.
what it looks like
1 today's visits
2 the queue
3 medical notes
the clinic side, from the day's visits to the patient's notes
built with
- .NET
- React
- TypeScript

DT Care — DoctorTool
the problem
Patients of clinics across Indonesia need one app for bookings, online consultations, e-prescriptions, and their health logs.
my role & what I did
Software Engineer
- Develop the React Native patient app: bookings, online consultations, e-prescriptions, and health logs.
- Ship releases through CI/CD, with JS-only fixes delivered quickly via Hot Updater OTA updates.
- Monitor stability with Firebase Crashlytics and Analytics to find and fix production crashes and performance issues.
what it looks like
1 home
2 book a visit
3 booked!
the patient side, from opening the app to a queue number
built with
- React
- TypeScript
- .NET
- Firebase

Writeen
the problem
Young writers grow faster with a mentor, but finding one and booking a session isn't easy. Writeen connects writers with mentors in one platform.
my role & what I did
Co-Founder · Backend & Web
- Single-handedly built the Go (Gin) REST API powering three frontends (mentor, tutor, admin).
- Built the web product with Next.js, TypeScript, and Tailwind CSS.
- Delivered JWT role-based access, chat and video consultations, Play-Lit, articles, and email notifications.
- Integrated Midtrans payments with webhooks that unlock paid features automatically.
- Owned technical direction and infrastructure: MongoDB, Google Cloud Storage, Docker on a VPS, release pipelines.
what it looks like

tutor: sets weekly hours 
student: finds a mentor 
student: books & pays 
the session: chat + video 
shared notes & action items 
tutor: withdraws earnings
one booking, two sides: the student's journey and the tutor's, meeting in the session
built with
- Gin
- Go
- Next.js
- TypeScript
- Tailwind CSS
- MongoDB
- Docker
- Google Cloud

SUAR
the problem
In an emergency the internet and cell network can go down exactly when people need to find each other.
my role & what I did
Mobile Engineer · 3rd place, Garuda Hacks 7.0
- Led the mobile engineering in React Native at Garuda Hacks 7.0 (3rd place, Safety Track).
- Built phone-to-phone locating over a Bluetooth Low Energy mesh, with no internet or cell network required.
- Designed a compact 19-byte binary wire protocol for the mesh.
- Added native Android emergency haptics that bypass silent mode.
what it looks like

- people nearby, with how far they are
- the arrow points toward them
- safety tips for your area

- make this phone a “safe here” beacon
- voice + vibration, no need to look
- disaster mode saves battery
field notes: tested phone-to-phone, no internet, no signal
built with
- React
- Android
- Bluetooth

Mariolahraga
the problem
A sports coaching service across Jabodetabek needed one website for its classes, coach profiles, registration, and a blog.
my role & what I did
Full-stack Developer
- Built the website in Svelte: classes, coach profiles, registration, and blog.
- Built a Go backend for managing the blog.
what it looks like


every class gets its own page, ready for parents (and search engines)
built with
- Svelte
- Go
Ucup AI Bot
the problem
Bring ChatGPT into WhatsApp, where people already chat every day.
my role & what I did
Creator · Open Source
- Built a WhatsApp chatbot connected to ChatGPT through LangChain, in TypeScript.
- Open-sourced it on GitHub.
built with
- LangChain
- TypeScript
Digital Invitation
the problem
A wedding needs more than a pretty invitation: hosts also need to know who actually showed up.
my role & what I did
- Built a wedding invitation web app with a QR-code attendance system (2025).
Active Mandarin Indonesia
the problem
A Mandarin education provider needed a site for its courses and study-in-China programs.
my role & what I did
- Built the course and study-in-China website.
built with
- Next.js
- Tailwind CSS