Full-Stack Web Developer

Full-stack Developer with 2+ years building production web and mobile apps using Next.js, tRPC, and Drizzle ORM. Delivered 10+ projects across freelance and institutional settings. Passionate about type-safe, scalable code.

Work Experience

Mobile Developer

Utama Web | contract | 2024-06-30 - 2025-06-30 (1 year)

Built and shipped native Android applications with Kotlin and Jetpack Compose, delivering polished features to real users in production. Engineered codebases around Clean Architecture and MVVM, dramatically improving testability, maintainability, and onboarding speed for the team.

Full-stack Developer

Balai K3 Samarinda | internship | 2025-12-15 - Present (3 months)

Architected a Turborepo monorepo (pnpm workspaces) hosting a PWA frontend (React, TanStack Router, Tailwind, shadcn/ui) and a type-safe Hono + tRPC backend powered by Effect, PostgreSQL, and Drizzle ORM. Enforced end-to-end type safety with TypeScript 5+ and Zod, and codebase consistency with ESLint, Prettier, and Husky pre-commit hooks — digitizing manual workplace health & safety workflows in close collaboration with cross-functional stakeholders.

Freelance Full-stack Developer

Self Employeed | freelance | 2023-08-01 - Present (2 years)

Shipped 5+ web applications for diverse clients using React.js, Next.js, and Laravel — owning the full lifecycle from discovery to deployment. Designed RESTful APIs and database schemas, integrating third-party services to translate client requirements into reliable, maintainable products

Mobile Development Cohort

Bangkit Academy led by Google, Tokopedia, Gojek, & Traveloka | internship | 2024-01-31 - 2024-08-30 (6 months)

Selected from 60,000+ applicants for Bangkit Academy 2023 by Google, GoTo & Traveloka — completed 900+ hours of Android training with Jetpack Compose, and shipped a team capstone applying Clean Architecture & MVVM, presented at the final showcase.

Projects

DrizzleElectronExpress.jsHapi JSJavascriptJestJetpack ComposeKotlinLaravelMonorepoNext.jsNode.jsPostgreSQLReactReact NativeReact nativeShadcnSocket.ioSqliteTRPCTailwind CSSTanstack QueryTrpcTypescriptVite
Finance Tracker project screenshot

Finance Tracker

Personal finance tracker monorepo for web, desktop, and mobile apps built with TypeScript, tRPC, Drizzle, and SQLite.

electronreactreact nativedrizzletrpcsqlitetypescriptmonorepo

Karta SPA

Karta SPA POS adalah sistem Point of Sales untuk mendukung transaksi dan operasional Karta SPA. Pada proyek ini, saya mengembangkan aplikasi mobile menggunakan Kotlin dan Jetpack Compose, serta membangun fitur transaksi real time melalui WebSocket menggunakan Socket.io, Node.js, dan Express untuk memastikan proses pencatatan yang cepat dan sinkron.

Jetpack ComposeKotlinSocket.ioNode.jsExpress.jsLaravel

0 Views

SobatCPNS project screenshot

SobatCPNS

SobatCPNS adalah aplikasi edukasi mandiri yang membantu Anda mempersiapkan seleksi CPNS 2025. Aplikasi ini menyediakan latihan soal, materi pembelajaran, serta simulasi ujian berbasis kisi-kisi umum CPNS.

React NativeTypescript

KOFITRA

Aplikasi Pengukur Kondisi Fisik Atlet Cabang Olahraga Tarung Derajat.

Next.jstRPCShadcn

0 Views

BIMA STMIK Widya Cipta Dharma project screenshot

BIMA STMIK Widya Cipta Dharma

BIMA (Basis Informasi Penelitian dan Pengabdian kepada Masyarakat) STMIK Widya Cipta Dharma adalah platfrom utama yang dikelola oleh P3M untuk mendukung tata kelola penelitian dan pengabdian masyarakat. Dengan fitur lengkap, BIMA memfasilitasi manajemen data penelitian, pengabdian, dan kolaborasi ilmiah, selaras dengan visi dan misi institusi.

Next.jstRPCDrizzleShadcnTailwind CSSTanstack Query

3 Views

Learning Aja Api

Sebuah RESTFul API yang digunakan pada aplikasi Learning Aja

Hapi JSPostgreSQLJestJavascript
SINGA: Translating Silence, Transcending Barrier project screenshot

SINGA: Translating Silence, Transcending Barrier

SINGA is a service that bridges communication between ordinary people and people with hearing impairments\n\nWe provide a mobile application that translates sign language into text and vice versa. With the primary goal to help people with hearing impairments to communicate with ordinary people. The application is equipped with a machine learning model that can recognize sign language gestures and translate them into text.

KotlinJetpack Compose
Learning Aja project screenshot

Learning Aja

Learning Aja adalah sebuah website yang digunakan untuk mengatur waktu kegiatan belajar.

ReactTailwind CSSJavascript

Forums App

Sebuah Project Forum yang dibuat dengan Next.js dan Tailwind CSS. Project ini dibuat untuk memenuhi tugas akhir dari kelas Menjadi React Web Developer Expert di Dicoding.

Next.jsTailwind CSSTypescript
Pak Tani Bangga project screenshot

Pak Tani Bangga

Tujuan utama dari aplikasi Pak Tani Bangga adalah untuk memberikan akses mudah dan cepat terhadap informasi terkait ketahanan pangan kepada semua stakeholder di Kabupaten Kutai Barat. Aplikasi ini akan membantu Dinas Ketahanan Pangan, petani, pedagang pangan, dan masyarakat umum dalam mengambil keputusan yang lebih baik terkait produksi, distribusi, dan konsumsi pangan.

ReactTanstack QueryVite

Forum Apps Android

Sebuah Project Testing yang dibuat dengan React Native. Project ini dibuat untuk bereksperimen dengan React Native

React NativeTypescript

Tech Stack

Programming Language

JavascriptTypescriptPHPKotlinGolang

Frontend

ReactNext.jsVue.jsReact NativeJetpack Compose

Backend

Express.jsLaravel

Database

PostgreSQLMySQLMariaDBMongoDBSQLite

Tools

VS CodePostmanFigmaVitestGithubCoolify

Certificates

Belajar Membangun Arsitektur Microservices

Issued by Dicoding Indonesia | Mar 2026 - Expires Mar 2029

Credential ID: 6RPN76MD8X2M

Belajar Implementasi CI/CD

Issued by Dicoding Indonesia | Mar 2026 - Expires Mar 2029

Credential ID: 72ZDJ9K8LZYW

Menjadi Linux System Administrator

Issued by Dicoding Indonesia | Mar 2026 - Expires Mar 2029

Credential ID: MEPJOKY7LZ3V

Menjadi Android Developer Expert

Issued by Dicoding Indonesia | Apr 2024 - Expires Apr 2027

Credential ID: 4EXGQ5KK1ZRL

Belajar Membuat Aplikasi Android dengan Jetpack Compose

Issued by Dicoding Indonesia | Feb 2024 - Expires Feb 2027

Credential ID: 0LZ069V2RZ65

Menjadi Flutter Developer Expert

Issued by Dicoding Indonesia | Nov 2023 - Expires Nov 2026

Credential ID: 81P27E888ZOY

Menjadi React Web Developer Expert

Issued by Dicoding Indonesia | Mar 2026 - Expires Mar 2029

Credential ID: KEXLLW3M0XG2

Menjadi Back-End Developer Expert

Issued by Dicoding Indonesia | Mar 2023 - Expires Mar 2026

Credential ID: 81P28WDNYPOY