feat(cv): update for Thoughtworks Software Engineer application

Tailored CV headline to emphasize AI-Assisted Delivery, updated experience
summary to highlight fresher→senior progression and stakeholder collaboration,
made Claude Code plugin/skill marketplace more explicit, replaced miti99
project with miti99bot (AWS Lambda + CI signal), and reordered sections
(Experience→Projects→Skills→Education) to fit 1-page layout.
This commit is contained in:
tiennm99 committed 2026-06-11 21:15:17 +07:00
1 parent 6c90b30889
commit 7df7642f98
5 files changed
+1133 -3052

No files matched your search

+48 -43
View File
@@ -49,6 +49,53 @@
<li>GitHub: <a href="https://github.com/tiennm99">tiennm99</a></li>
<li>Telegram: <a href="https://t.me/tiennm5">tiennm5</a></li>
</ul>
<h1>Experience</h1>
<h2><strong>Senior Software Engineer</strong>, ZingPlay Game Studios, VNG Corp. -- HCMC, Vietnam</h2>
<p>July 2020 – present</p>
<p>Progressed from Game Programming Fresher to Senior Software Engineer over 5+ years building and operating production backends for real-time multiplayer games, collaborating daily with client, QA, release, and product stakeholders.</p>
<ul>
<li>
<p><a href="https://play.google.com/store/apps/details?id=vn.zps.tl2">Chaos Age 2</a>: Built and operated gameplay systems, battle synchronization, matchmaking, payments/webpay, admin tooling, automated tests, and delivery pipelines as primary Java backend contributor</p>
</li>
<li>
<p>Built and maintained Java 21 backend modules with Netty/Vert.x, Couchbase, Redis, Kafka, Gradle, JUnit 5, Mockito, Docker-based local dependencies, and GitLab CI pipelines; used automated tests around gameplay, payment, and release-critical flows</p>
</li>
<li>
<p>Applied OOP and design patterns to reusable packet handlers, gameplay workflows, payment/config modules, and admin tooling for live products</p>
</li>
<li>
<p><a href="https://play.google.com/store/apps/details?id=zps.games.burkozel">Burkozel</a>, <a href="https://play.google.com/store/apps/details?id=zps.games.show">Show</a>, and <a href="https://play.google.com/store/apps/details?id=vn.kvtm.js">Sky Garden</a>: Diagnosed and fixed live concurrency issues; maintained backend gameplay events, payment/config updates, metrics, and release support</p>
</li>
<li>
<p>Built an internal Claude Code plugin/skill marketplace and Java game-server scaffolding guidance, standardizing packet-handler generation, framework usage, and AI-assisted delivery workflows</p>
</li>
</ul>
<h1>Projects</h1>
<h2><strong><a href="https://github.com/tiennm99/store-scraper-bot">Store Scraper Bot</a> / <a href="https://github.com/tiennm99/store-scraper-bot-java">Java original</a></strong></h2>
<p>Nov 2025 – present</p>
<p>Telegram bot for tracking Apple App Store and Google Play app updates; original Java 21 implementation later ported to Node.js/Vercel.</p>
<ul>
<li>Built Java bot with Gradle, MongoDB, command-pattern Telegram handlers, reusable repository abstractions, Docker Compose, and JUnit scraper tests; ported to serverless Node.js with Upstash Redis, Vercel Cron, and GitHub Actions checks</li>
</ul>
<h2><strong><a href="https://github.com/tiennm99/gomoku">Gomoku</a></strong></h2>
<p>2026</p>
<p>Multiplayer Gomoku game with authoritative Go WebSocket backend, protobuf binary messages, Docker Compose, GitHub Actions CI, and Phaser client.</p>
<ul>
<li>Designed server-authoritative gameplay (move validation, win detection, PVP/PVE/spectator modes, minimax AI with alpha-beta pruning) with Go tests over game, lobby, and codec flows; CI runs vet, tests, and builds</li>
</ul>
<h2><strong><a href="https://github.com/tiennm99/miti99bot">miti99bot</a></strong></h2>
<p>May 2026 – present</p>
<p>Modular Go Telegram bot framework on AWS Lambda (SAM) with pluggable KV storage providers (Firestore/DynamoDB) and AI integration with rate limiting.</p>
<ul>
<li>Covered modules, storage providers, and AI rate limiting with 53 Go test files; GitHub Actions CI plus OIDC-authenticated AWS deploy pipeline</li>
</ul>
<h1>Skills</h1>
<p><strong>Languages:</strong> Java, Go, JavaScript/TypeScript, Shell</p>
<p><strong>Frameworks &amp; Libraries:</strong> Netty, Vert.x, Spring Boot, JUnit 5, Mockito, Cocos2d-x, Godot, WebSocket</p>
<p><strong>Data &amp; Messaging:</strong> Couchbase, Redis, MySQL, Kafka, ClickHouse</p>
<p><strong>Infrastructure &amp; DevOps:</strong> Docker, GitLab CI, GitHub Actions, Linux, AWS Lambda/SAM, Cloudflare Workers, Vercel</p>
<p><strong>Architecture:</strong> OOP and design patterns, reusable components, real-time multiplayer game-server architecture, event-driven design</p>
<p><strong>Delivery Practices:</strong> Unit testing, code review, production debugging, continuous integration and delivery (CI/CD), DevOps collaboration, AI-assisted development workflows</p>
<h1>Education</h1>
<h2><strong>Ho Chi Minh City University of Technology</strong>, B.E. in Computer Science and Engineering -- HCMC, Vietnam</h2>
<p>Sept 2017 – June 2023</p>
@@ -57,51 +104,9 @@
<p>GPA: 8.0/10 — Academic Excellence Scholarship; Five Good Student Award</p>
</li>
<li>
<p>Thesis: Survival2D — 2D multiplayer Battle Royale game server in Java (Netty/WebSocket); authoritative architecture, FlatBuffers serialization (76% packet reduction vs JSON), behavior tree AI bots, and server-side anti-cheat</p>
<p>Thesis: Survival2D — multiplayer Battle Royale game server in Java (Netty/WebSocket) with authoritative architecture, FlatBuffers serialization, behavior-tree AI bots, and server-side anti-cheat</p>
</li>
</ul>
<h1>Experience</h1>
<h2><strong>Senior Software Engineer</strong>, ZingPlay Game Studios, VNG Corp. -- HCMC, Vietnam</h2>
<p>July 2020 – present</p>
<p>Progressed from Game Programming Fresher to Senior Software Engineer. Focuses on Java game backends, live operations, delivery automation, and collaboration with client, QA, release, and product stakeholders.</p>
<ul>
<li>
<p><a href="https://play.google.com/store/apps/details?id=vn.zps.tl2">Chaos Age 2</a>: Primary Java server contributor across gameplay, battle sync, matchmaking, payment/webpay, admin tooling, tests, and delivery automation</p>
</li>
<li>
<p>Built and maintained Java 21 backend modules with Netty/Vert.x, Couchbase, Redis, Kafka, Gradle, JUnit 5, Mockito, Docker-based local dependencies, and GitLab CI pipelines; used tests around gameplay, payment, and release-critical flows</p>
</li>
<li>
<p><a href="https://play.google.com/store/apps/details?id=zps.games.burkozel">Burkozel</a> and <a href="https://play.google.com/store/apps/details?id=zps.games.show">Show</a>: Implemented and maintained backend gameplay events, payment/config updates, tests, metrics, concurrency fixes, live diagnostics, and release support</p>
</li>
<li>
<p><a href="https://play.google.com/store/apps/details?id=vn.kvtm.js">Sky Garden</a> / KVTM: Maintained Java server features, web payment fixes, Redis/runtime diagnostics, GM tooling, CI/deploy support, and Godot migration support</p>
</li>
<li>
<p>Built internal Claude Code plugin/skill marketplace and Java game-server scaffolding guidance to standardize packet-handler generation, framework usage, and AI-assisted delivery workflows</p>
</li>
</ul>
<h1>Projects</h1>
<h2><strong><a href="https://github.com/tiennm99/store-scraper-bot">Store Scraper Bot</a> / <a href="https://github.com/tiennm99/store-scraper-bot-java">Java original</a></strong></h2>
<p>Nov 2025 – present</p>
<p>Telegram bot for tracking Apple App Store and Google Play metadata changes; originally built in Java, then ported to JavaScript.</p>
<h2><strong><a href="https://github.com/tiennm99/gomoku">Gomoku</a></strong></h2>
<p>2026</p>
<p>Multiplayer Gomoku game with Go WebSocket backend, protobuf messaging, Docker support, PVP/PVE/spectator modes, and Phaser client.</p>
<h2><strong><a href="https://github.com/tiennm99/rplace">Rplace</a></strong></h2>
<p>2026</p>
<p>Collaborative pixel-art canvas using Svelte, Hono, Cloudflare Workers, and Durable Object SQLite.</p>
<h2><strong><a href="https://github.com/tiennm99/db-keepalive">DB Keepalive</a></strong></h2>
<p>2026</p>
<p>Pluggable Go daemon for keeping free-tier database clusters active across Redis, Valkey, PostgreSQL, MySQL, MongoDB, and Couchbase.</p>
<h1>Skills</h1>
<p><strong>Languages:</strong> Java, Go, JavaScript/TypeScript, Shell</p>
<p><strong>Frameworks &amp; Libraries:</strong> Netty, Vert.x, Spring Boot, JUnit 5, Mockito, Cocos2d-x, Godot</p>
<p><strong>Databases:</strong> Couchbase, Redis, MySQL, Kafka, ClickHouse</p>
<p><strong>Infrastructure &amp; DevOps:</strong> Docker, GitLab CI, GitHub Actions, Linux, AWS Lambda/SAM, Cloudflare Workers</p>
<p><strong>Architecture:</strong> Object-oriented design, game server architecture, real-time multiplayer systems, event-driven design, clean reusable code</p>
<p><strong>Delivery Practices:</strong> Unit testing, code review, production debugging, CI/CD, AI-assisted development workflows</p>
<p><strong>Languages (Spoken):</strong> Vietnamese (Native), English (TOEIC 600+)</p>
</article>
</body>