GaraSTEM
IoT + Robotics kit for Vietnamese high schools. Beat M5Stack, OhSTEM, micro:bit, and LEGO Mindstorms on the only metric that matters.
I came from KPMG. Big 4. Corporate. The kind of place where you wear a suit and write reports about digital transformation for Fortune 500 companies. I was good at it. But something was missing.
Back in university, I started a project called FaraClass - same mission, same dream: use technology to transform education in Vietnam. It failed. Not for lack of trying, but timing, resources, all the things that kill student projects. That failure stayed with me. It became a bucket list item.
Then GaraSTEM showed up. Same mission. Same problem. But this time, funded. Staffed. With a real shot. I didn't hesitate.
GaraSTEM was already funded when I walked in. They had a product, a team, and a vision: an IoT + Robotics kit to teach Vietnamese high school students programming through hardware. The problem was the product didn't work. Not really. Not in a way that mattered.
Think about a real Vietnamese classroom. 40 students. 45 minutes. 5 shared computers. The old Arduino workflow that every competitor shipped - M5Stack, OhSTEM, micro:bit, LEGO Mindstorms - went like this: boot up the PC, install the Arduino IDE, install the USB driver (good luck on Windows), install the board library, find the right COM port, write code, plug in via USB, compile, flash, unplug, run. Half the class is gone before the first LED blinks. Teachers spent more time troubleshooting drivers than teaching programming. In a 45-minute period, most kids spent their time watching someone else's screen. The kits were fine. The experience was broken.
My job was to rebuild the product from scratch. Startup world - you don't get to specialize. I designed the PCB in KiCad. Sourced components. Wrote the ESP32 firmware in C++. Built the React Native mobile app. Set up the FastAPI backend with PostgreSQL. The entire vertical, solo. When you're trying to disrupt a market, everything is your job.
But innovation in a startup isn't a hackathon. It's a fight. Partners pushed back on hardware changes - they had supply chains built around the old design. The market resisted anything unfamiliar - schools wanted what they'd seen before. Internal debates raged on whether to chase the competition or out-innovate them. I chose the latter.
The bet was simple: eliminate the computer entirely. Students program on their phone. Code ships over BLE. Robot runs. No USB cable. No shared computer. No waiting.
Programming an ESP32 is easy. Blink an LED, read a sensor, connect to WiFi - afternoon project. But what we needed was something else entirely: run arbitrary block programs over BLE in under 5 seconds, without ever resetting the device. On a chip with ~320KB of heap and severe memory fragmentation, that's not a weekend project. Every time you load a program, it carves up the heap. After a few uploads, the device runs out of memory and crashes. The solution everyone else used? Reset the board. Every single time.
I built a custom memory management layer. Block programs execute in a sandboxed region of the heap. When a new program arrives over BLE, the old one tears down cleanly - no orphaned allocations, no fragmentation, no reset. The device just keeps running. Upload after upload after upload.
Student drags blocks on their phone. Taps upload. Robot moves. Under 5 seconds. Every time. No cable.
That's when the comparison becomes unfair. The old way: PC, Arduino IDE, USB driver, board library, COM port selection, compile, flash, reset. The GaraSTEM way: phone, drag blocks, tap upload, robot runs. No PC. No drivers. No install. No cable. No reset. 5 seconds. M5Stack needs USB and a computer. OhSTEM needs a reset between uploads. micro:bit needs a browser. LEGO Mindstorms needs a $300 set and a laptop. GaraSTEM needs a phone and 5 seconds. That's it.
But the real measure of success wasn't the technology - it was the students. We brought Vietnamese teams to MYOR 2022 and MYOR 2024, the International Robot Assembly and Programming Competition. Students who had never been abroad. Students who built robots with a kit we designed from scratch. Watching them compete on the international stage - that was the proof I needed. The statement I wanted to make: Vietnamese students belong on the world stage, and the tools to get them there should be built by people who understand their classrooms.
SMU incubator and SHTP Innovation Program - Vietnam's top startup programs - agreed. We got in.

The First Prototype
Where it all started - the bare board that became GRobot

PCB Design
Schematic to silicon - designed in KiCad, built for Vietnamese classrooms

GaraSTEM Mobile App
The mobile block programming editor - drag, tap, robot runs
MYOR 2022
MYOR Robotic International Competition - Malaysia
MYOR 2024 Grand Finals
MYOR Robotic International Competition - Grand Finals
Robot Demonstration
The product in action - wireless programming, 5 seconds, no cable


Thang Nguyen
Co-founder
Believed in me from day one
Mia
Team Member
Science Center adventure buddy

The Team
Co-builders
Late nights, early mornings, together

Hardware Partners
Builders
Turned vision into reality
Full Stack
Hardware
PCB design in KiCad, component sourcing, assembly - from schematic to shippable kit
Firmware
Custom memory manager on 320KB heap - sandboxed execution, zero-reset OTA via BLE, solved fragmentation
Mobile App
Block programming editor - drag, tap, robot runs. No computer needed.
Backend
FastAPI + PostgreSQL - device management, user tracking, real-time communication
AI-Powered Development
AI coding tools became a turning point in how I shipped. Not replacing thinking - augmenting it. From autocomplete to agentic workflows, each tool reshaped how fast I could move.
At GaraSTEM
Started with Cursor - joined as early contributor when it was still a small team. Learned the ropes of AI pair programming from the inside. Also used Supermaven for fast, context-aware autocomplete.
At Datum
Expanded the toolkit for enterprise work: Windsurf and Antigravity for coding tasks, WebStorm for JavaScript/TypeScript. But the one that stuck: Claude Code. Its agentic nature - planning, reasoning, tool-calling - felt genuinely different. Started using it for everything from drafting docs to orchestrating multi-file refactors.
"The tools to get students to the world stage should be built by people who understand their classrooms."
The statement I wanted to prove, once in my life