Tech Lead at Farmio
Product-minded engineering lead focused on operational systems, AI workflows, data correctness, and polished web experiences.
Website · LinkedIn · X / Twitter · Instagram · CV
I lead and build software for messy real-world workflows: ERP platforms, financial operations, inventory systems, AI-assisted operations, internal tools, and customer-facing portals. I care about fast iteration, clean product behavior, data correctness, and production systems that stay understandable after they scale.
- 🏗️ Core builder of Farmio's product stack across ERP, backend services, portals, workers, deployment, and operational tooling.
- 🧾 Design correctness-first database flows, including
SERIALIZABLEtransaction isolation for money, inventory, reconciliation, and other high-integrity workflows. - 🤖 Led AI product work including an analytics assistant and Chat Order AI Agent, with reported productivity gains of 70% for analytics work and 60% for customer service workflows.
- 🔭 Own production hardening across health checks, observability, OpenTelemetry tracing, deploy scripts, and operator documentation.
- 📄 Build business-critical document systems including invoice PDFs, credit-note workflows, font rendering fixes, retry/timeout handling, and regression coverage.
- 💸 Reduced AWS S3 storage by 48%, translating to roughly 50% cost savings.
- 🌍 Contribute upstream fixes to tools I use, including deck.gl, OpenClaw, Effect, Convex, PostHog, Pitchfork, Opencode, ghui, Motion Primitives, React docs, and Vague.
| Project | Contribution | Status |
|---|---|---|
| Concurrent OpenClaw automations could reject the same saved account before any work began, even though its credentials had not changed. Reported the race and contributed the fix so scheduled runs can share an unchanged account while still refusing replaced or revoked credentials. | ✅ Reported & fix merged | |
| Routine inspection of OpenClaw’s AI tool connections printed usable credentials into terminal output and retained agent transcripts. Reported the exposure and contributed credential redaction so operators can inspect connections without revealing supported secret fields or losing saved credentials when editing the output. | ✅ Reported & fix merged | |
| OpenClaw’s automation editor left a visible gap below its Create, Save, and Cancel actions. Reported the layout bug and contributed the fix so the actions sit at the bottom edge on desktop and mobile while remaining reachable by keyboard. | ✅ Reported & fix merged | |
| OAuth2 Proxy packages still used a Go runtime that trusted compromised certificate authorities. Contributed a build requirement for Go’s certificate protection and verified that a rebuilt package rejects the affected chains. Maintainers rebuilt the latest packages so pkgx users receive that protection too. | ✅ Merged | |
| Chinese and single-word audio transcripts appeared as blank chat bubbles in OpenClaw. Reported the rendering bug and contributed the fix so users can read both new and saved transcripts without migrating their chat history. | ✅ Reported & fix merged | |
| Effect’s OpenAI integration left developers unable to configure supported cache settings and safety identifiers through its high-level API. Documented the missing request options and proposed a fix; upstream contributors completed the support so applications can configure cache reuse and identify end users for safety monitoring. | ✅ Reported & proposed fix; resolved upstream in #7403 and #9670 | |
| Stable instructions and documents could not be marked for OpenAI cache reuse through Effect’s prompt API. Reported the gap and proposed content-level cache breakpoints; upstream contributors added support for text, images, and files so developers can choose the reusable prefix before changing content. | ✅ Reported & proposed fix; resolved upstream in #7403 and #9667 | |
| The latest pkgx package for OAuth2 Proxy, used to protect web apps behind a login, was missing Go security and reliability fixes included in the official release. Contributed the build fix so pkgx users receive those patches too. | ✅ Merged | |
| An AI tool server could pass TypeScript checks yet crash because a required dependency was missing. Traced the gap in Effect's type checks and contributed the fix so developers catch the mistake before running their tools. | ✅ Reported & fix merged | |
| PostHog's OpenAI Agents reports left out cached token usage, hiding how much input was reused. Reported the gap and contributed the fix so teams can distinguish cached input from fresh input when reviewing AI usage and costs. | 🚀 Shipped in @posthog/ai 8.13.4 |
|
| Reopening an OpenClaw chat made uploaded images disappear. Traced the problem to files being moved and contributed the fix so new uploads remain visible after reloads while private file paths stay hidden. | ✅ Reported & fix merged | |
| Tracked misplaced hover details and controls in deck.gl's React maps to a layout bug that put them below the visualization or offscreen. Reported it with visual reproductions and contributed the fix so users see details beside the point they are exploring. | ✅ Reported & fix merged | |
| OpenClaw kept resending old conversation history even after OpenAI had compressed it. Traced the lost compression state and contributed the fix so later AI tool calls keep the compacted history instead of needlessly resending the full conversation. | ✅ Reported & fix merged | |
| Investigated Effect workflows that failed before they could retry after an error. Traced the failure to retry delays with fractional milliseconds and contributed the fix so automated retries can be scheduled without firing earlier than requested. | ✅ Reported & fix merged | |
| Upgrading Pitchfork, a tool for managing background services, broke startup on Amazon Linux ARM64. Traced the failure to its release build and contributed a fix that restores compatibility with existing Linux hosts. | ✅ Merged | |
| Convex AI chats slowed to a crawl while an agent streamed a long tool request. Reported the slowdown and supplied a prototype fix and benchmark reproduction; maintainers later merged a fix to keep chats responsive during tool use. | ✅ Upstream fix merged in #270 | |
| 🖥️ ghui | Brought the Vague theme to ghui so users can match their other terminal tools. Also contributed wraparound keyboard navigation, making the theme picker loop from last to first. Maintainers shipped both in v0.4.4 (theme, navigation). |
🚀 Shipped in v0.4.4 |
| AI requests appeared under anonymous users in PostHog even though the app supplied user and session IDs. Traced the data loss and contributed the fix so teams can connect AI activity to the correct user and session. | ✅ Merged | |
Stopping Convex through bun run left the Next.js server running in the background. Reported the bug and proposed a fix; the shipped solution stops both servers together, preventing leftover processes from occupying the development port. |
🛠️ Shipped in the convex v1.36.0 changelog |
|
Built Vague themes for OpenCode and bat so users can keep the same colors while coding with AI, reading files, and reviewing Git changes through delta and lazygit. Transferred both projects to the Vague organization. |
🎨 Transferred | |
| GeistMono Nerd Font was bundled with OpenCode but missing from its font picker. Added the missing font option across settings and translations so users can actually select and use it. | ✅ Merged | |
| Installing Motion Primitives animations through shadcn left out a required package, forcing developers to add it themselves. Fixed the component registry so those components install with their dependency included. | ✅ Merged | |
| Contributed the first Indonesian translation of React's "Updating Objects in State" guide, including its examples and explanations. This gives Indonesian-speaking developers a way to learn the pattern in their own language. | ✅ Merged |
| Area | Work |
|---|---|
| 🏭 Farmio ERP | Technical ownership across order management, invoicing, payment reconciliation, inventory control, driver tasking, and route planning. |
| 🤖 AI workflows | Analytics assistant for business data exploration and Chat Order AI Agent for customer service operations. |
| 🧾 Database correctness | Serializable transaction boundaries for financial and inventory workflows where consistency matters more than theoretical throughput. |
| 💸 Cost optimization | AWS S3 storage cleanup that cut stored data by 48%. |
| ✨ UI engineering | Animated components, dashboard surfaces, mobile-first workflows, and shadcn/Tailwind systems. |
| ⚙️ Engineering systems | Deployment, health checks, observability, dependency maintenance, production docs, and technical standards. |
| 🛠️ Open-source ecosystem | Practical upstream fixes across deck.gl, OpenClaw, Effect, PostHog, Opencode, Convex, and Motion Primitives. |
| Role | Company | Period |
|---|---|---|
| Tech Lead | Farmio | 2024 - Present |
| Fullstack Engineer | BINUS University R&D Team | 2020 - 2023 |
| Teaching Assistant | BINUS University | 2020 - 2021 |
- 🎨 Frontend: React, Next.js, TypeScript, Tailwind CSS, shadcn/ui, motion-heavy interfaces
- 🧱 Backend: Node.js, Express, PostgreSQL, Redis, Prisma, transaction isolation, API design, background workflows
- 🤖 AI/LLM: AI agents, chat apps, RAG patterns, OpenAI integrations, LLM analytics
- ☁️ Infra: AWS, Docker, Vercel, CI/CD, cost optimization
- 🧪 Other: Python, Go, PHP, Solidity, Ethereum
- 🎛️ Animated components - web animation experiments and UI component work.
- 💬 T3 Chat Clone - LLM chat UI cloneathon across modern chat product patterns.
- 🧾 Mini Invoice - mobile invoicing app built for a real family workflow.
- ⚡ Slack Clone - real-time collaboration app exploring Slack-style product behavior.
- ⛓️ Web3 Event Management - Solidity and Hardhat dApp for decentralized event membership.
- ☁️ AWS Certified Cloud Practitioner
- ⛓️ Ethereum Developer Bootcamp, Alchemy University
- ✨ Animations on the Web, Emil Kowalski
- 🧩 freeCodeCamp: JavaScript Algorithms, Front End Libraries, APIs & Microservices
Good software earns trust by making the next action obvious.
📫 Hit me up on LinkedIn · X / Twitter · Instagram



