Computer Engineering student at Chulalongkorn University · Bangkok, Thailand
Open to 2027 internships in software and computer engineering
Full-stack experience from an 8-person Scrum project (React, Express, PostgreSQL), hands-on systems and hardware work (Linux kernel modules, FPGA), GPAX 3.86, and practiced at directing AI coding agents to build and test tools I use every day.
Software Engineering course · 8-person Scrum team · Aug 2026 – present
Top contributor to both the frontend and backend repos in an 8-person Scrum team, working in sprints from a shared backlog.
Built login by username or email and dual-role accounts, so one user can act as both customer and provider.
Built the provider dashboard, the create-service flow with cover photo upload, and a search filter panel whose filters sync to the URL.
Wrote the create-service REST API with Jest tests, and Playwright end-to-end tests for the login flow against a mocked API generated from the OpenAPI spec.
Provider dashboardSearch with filter panel
Screenshots from a local run with the repo's sample data.
Directed Claude Code to build a local dashboard for my Binance TH account: holdings in THB, realized and unrealized P/L, and money- and time-weighted returns compared with holding BTC.
Wrote the requirements, tested each feature on my real account, and added Discord alerts, CSV export and automatic backups.
Node.js
Crypto Trading Bot
Built with Claude Code
2026
Designed a staged rollout (backtest → paper trading → small capped live account) for four pairs on Binance TH; currently paper trading on a dedicated always-on PC.
Compared MA-crossover, RSI and Donchian strategies in backtests with fees, slippage and a walk-forward overfitting check, and chose MA 10/200 on 4-hour candles.
Backtest of MA 10/200 vs buy & hold on BTCUSDT 4h candles, out of sample with fees and slippage. 1 Jan 2024 – 4 Oct 2026: return +97% vs +101%, worst drop −32% vs −53%.
Node.js
More projects
Built with Claude Code: I specified the features, tested each build and fed back fixes.
gb-emu
Game Boy / Game Boy Color emulator in Rust and WebAssembly, passing 96/100 Mooneye accuracy tests
In Verilog on a Basys 3 (Artix-7), configured an OV7670 camera through a hand-written SCCB (I²C-like) bus master, buffered frames in dual-port BRAM bridging the camera and VGA clock domains, and output 640×480 @ 60 Hz video with switchable greyscale, invert and threshold filters.
Top-level block diagram from the project report: three clock domains joined by a dual-port BRAM frame buffer.
Linux kernel modules
Operating Systems · team of three
Wrote character-device and system-info kernel modules (CPU info, system info) in C on Ubuntu 22.04.
FUSE filesystem
Operating Systems
Implemented a user-space filesystem in Python against the FUSE interface.
Rubik's Race optimization
Algorithm Design
Wrote C++ search-based solvers for an NxN sliding-puzzle problem, run in parallel to improve output-only test cases.
Ronaldo in the Box
Programming Methodology · team of two
JavaFX puzzle game where boxes nest inside each other, with unlimited undo built on a stack of move snapshots.