TRI.DEV · SECTION A–A
ENVI
CV ↓
Mặt cắt A–A. Tám sản phẩm, từ 2018 đến 2026. Sản phẩm nào cũng bắt đầu từ giao diện; sản phẩm mới nhất đi xuống tận server đang chạy nó.

A-000 · Mặt cắt A–A · Rev 2026.10

Trần Mạnh Trí

Full-stack Engineer · Senior Frontend

Mặt cắt A–A, xoay dọc: tám sản phẩm từ 2018 đến 2026, mỗi sản phẩm sâu đúng tới tầng stack đã chạm đến.

Tôi thiết kế Frontend Architecture cho các sản phẩm nhiều portal — và xây dựng cả API, dữ liệu lẫn hạ tầng phía sau.

  • 7+ năm xây dựng ứng dụng web cho doanh nghiệp
  • 8 sản phẩm đã release
  • 3 developer đã dẫn dắt và mentor
  • TP. Hồ Chí Minh, Việt Nam

Sẵn sàng cho các vị trí Senior Frontend và Full-stack

Mặt cắt A–A. Tám sản phẩm, từ 2018 đến 2026. Sản phẩm nào cũng bắt đầu từ giao diện; sản phẩm mới nhất đi xuống tận server đang chạy nó.

Khám phá mặt cắt ↓

Dự án

A-101 · Mặt cắt 01

Banh Mi Daily

Nền tảng đặt món & vận hành cửa hàng — website Nuxt SSG ba ngôn ngữ, kiosk tự phục vụ, POS trên tablet và trang quản trị, xây dựng theo dạng pnpm/Turborepo monorepo.

Mặt cắt · 6 tầng
  1. L1INTERFACE
    • Website
    • Self-service kiosk
    • Tablet POS
    • Admin dashboard
  2. L2FE ARCH.
    • Monorepo packages
  3. L3CLIENT DATA
    • API clientD6
  4. L4API
    • NestJS APID1D2D3D5D7Thử
    • MollieD4
  5. L5DATA
    • PostgreSQL
    • Cloudflare R2
  6. L6INFRA.
    • VPS
    • Cloudflare Pages
    • GitHub Actions
Vai trò
Full-stack — đảm nhận end-to-end FE, BE, DB & tự quản lý deployment
Giao diện
Website · Kiosk tự phục vụ · POS trên tablet · Trang quản trị
Thời gian
06/2026 — Hiện tại
Stack
Nuxt 4 · Vue 3 · TypeScript · Feature-Sliced Design · TanStack Query · Zod · Ant Design Vue · PWA · Turborepo · NestJS · Prisma · PostgreSQL · JWT · RBAC · Mollie · Webhooks · Docker · Nginx · Cloudflare Pages/R2 · GitHub Actions

Vấn đề

Một cửa hàng cần một nền tảng chung cho cả đặt món online lẫn vận hành tại quán — website, kiosk tự phục vụ, POS trên tablet và trang quản trị — do một developer duy nhất thiết kế, xây dựng và vận hành.

Ràng buộc

  • Developer duy nhất cho cả frontend, backend, database và deployment
  • Checkout đồng thời nhưng không có race condition
  • Thanh toán thật bằng iDEAL và thẻ
  • Website ba ngôn ngữ cho khách hàng
  • In hóa đơn trên máy in ESC/POS từ trình duyệt

Quyết định

  1. D1

    State machine đơn hàng hai trục

    Trạng thái đơn được mô hình hóa thành một state machine tường minh và do API kiểm soát.

  2. D2

    Idempotency key + advisory lock

    Loại bỏ race condition khi nhiều checkout đến cùng lúc.

    Thử ngay — gửi cùng một đơn hai lần →
  3. D3

    Giá & VAT do server quyết định

    Tổng tiền và VAT do API tính, không bao giờ tin giá trị gửi từ phía client.

  4. D4

    Payment webhook được verify và idempotent

    Mollie webhook được verify chữ ký, dùng để đối soát trạng thái thanh toán và xác nhận đơn.

  5. D5

    JWT refresh token rotation + RBAC

    Session dùng refresh token rotation; quyền truy cập phân theo role.

  6. D6

    Validate tại ranh giới API

    TanStack Query kết hợp Zod validation tại điểm dữ liệu đi vào frontend.

  7. D7

    Pipeline xử lý ảnh

    Ảnh upload được xử lý bằng Sharp và lưu trên Cloudflare R2.

Triển khai

  • GitHub Actions CI chạy lint, typecheck, test và E2E test trên PostgreSQL
  • API chạy trong Docker, phía sau Nginx, trên một VPS
  • Website và ảnh được serve từ Cloudflare Pages và R2
Xem case study →

A-102 · Mặt cắt 02

EngiHire (Engilink)

Nền tảng tuyển dụng ba bên cho thị trường Nhật Bản — kết nối agency, công ty và ứng viên qua portal riêng cho từng vai trò (agency, manager, visitor).

Mặt cắt · 5 tầng
  1. L1INTERFACE
    • Agency portalD1
    • Manager portal
    • Visitor portal
  2. L2FE ARCH.
    • Shared packagesD2
  3. L3CLIENT DATA
    • State & data
  4. L4API
    • NestJS REST APID3D4
  5. L5DATA
    • MongoDB

Các tầng sâu hơn: ngoài phạm vi vai trò này

Vai trò
Full-stack — FE Architecture dạng monorepo + REST API endpoint & JWT auth ở BE
Giao diện
Agency portal · Manager portal · Visitor portal
Thời gian
≈ 2025–2026 · khoảng 1 năm
Stack
Vue 3 · TypeScript · Feature-Sliced Design · Pinia · TanStack Query · Turborepo · pnpm workspaces · Element Plus · Vite · NestJS · MongoDB · JWT · REST API

Vấn đề

Một nền tảng tuyển dụng ba bên cho thị trường Nhật Bản: agency, công ty và ứng viên, mỗi bên cần một portal riêng trên cùng một sản phẩm.

Ràng buộc

  • Ba portal theo vai trò — agency, manager và visitor
  • Frontend Architecture và backend endpoint do cùng một vị trí đảm nhận
  • Authentication dựa trên token, dùng access token và refresh token

Quyết định

  1. D1

    Một monorepo cho ba portal

    Các portal và package dùng chung nằm trong cùng một Turborepo + pnpm workspace.

  2. D2

    Feature-Sliced Design

    Một quy ước chia layer chung cho codebase của mọi portal.

  3. D3

    REST endpoint với NestJS

    Xây dựng và bảo trì API endpoint với NestJS và MongoDB.

  4. D4

    Auth bằng access / refresh token

    Các luồng JWT authentication được xây dựng ở backend.

Xem case study →

A-103…108 · Các mặt cắt trước đó

Dự án trước đó

Các vai trò Frontend và Frontend Architecture trên sáu nền tảng.

  1. A-108AconceptL1 INTERFACEMangoAds · 09/2018 — 11/2018
  2. A-107LearningiftL2 FE ARCH.Groot Co., Ltd · ≈ 2020
  3. A-106RecteleworkL2 FE ARCH.Groot Co., Ltd · ≈ 2020–2021 · 9 tháng
  4. A-104LearningpocketL1 INTERFACEGroot Co., Ltd · ≈ 2021–2022 · khoảng 1 năm
  5. A-105JSICL1 INTERFACEGroot Co., Ltd · ≈ 2022–2023 · 10 tháng
  6. A-103Engibase SuiteL2 FE ARCH.Groot Co., Ltd · ≈ 2023–2025 · khoảng 2 năm

A-108 · Mặt cắt 08

Aconcept

Website thương mại cho một thương hiệu thiết kế nội thất Việt Nam — xây dựng khi làm trong team frontend của MangoAds.

Mặt cắt · 1 tầng
  1. L1INTERFACE
    • Website

Các tầng sâu hơn: ngoài phạm vi vai trò này

Vai trò
Frontend — dựng UI & layout responsive
Giao diện
Website
Thời gian
09/2018 — 11/2018
Stack
JavaScript · jQuery · Bootstrap · Laravel

A-107 · Mặt cắt 07

Learningift

Website giới thiệu công ty.

Mặt cắt · 2 tầng
  1. L1INTERFACE
    • Website
  2. L2FE ARCH.
    • Frontend structure · component system

Các tầng sâu hơn: ngoài phạm vi vai trò này

Vai trò
Frontend Architect — cấu trúc frontend có khả năng scale & hệ thống component
Giao diện
Website
Thời gian
≈ 2020
Stack
HTML5 · CSS3 · JavaScript ES6 · jQuery · Bootstrap 4 · Laminas MVC · SSR

A-106 · Mặt cắt 06

Rectelework

Nền tảng tuyển dụng từ xa và quản lý làm việc từ xa cho các team phân tán.

Mặt cắt · 2 tầng
  1. L1INTERFACE
    • Không nêu rõ giao diện
  2. L2FE ARCH.
    • UI system design & implementation

Các tầng sâu hơn: ngoài phạm vi vai trò này

Vai trò
Frontend Architect — thiết kế & xây dựng hệ thống UI
Giao diện
Không nêu trong phần tóm tắt
Thời gian
≈ 2020–2021 · 9 tháng
Stack
HTML5 · CSS3 · JavaScript ES6 · jQuery · Bootstrap 4 · Laminas MVC · SSR

A-104 · Mặt cắt 04

Learningpocket

Nền tảng e-learning nhiều site, tích hợp WebView cho mobile — portal quản trị, giáo viên, học viên và nhân viên.

Mặt cắt · 1 tầng
  1. L1INTERFACE
    • Admin
    • Teacher
    • Vue.js WebView features for the mobile app
    • Student
    • Staff

Các tầng sâu hơn: ngoài phạm vi vai trò này

Vai trò
Frontend — UI trang manager & tính năng WebView bằng Vue.js cho ứng dụng mobile
Giao diện
Quản trị · Giáo viên · Học viên · Nhân viên
Thời gian
≈ 2021–2022 · khoảng 1 năm
Stack
Vue.js · WebView · Laminas MVC · SSR

A-105 · Mặt cắt 05

JSIC

Portal doanh nghiệp Nhật Bản — hệ thống hai site (quản trị + khách hàng).

Mặt cắt · 1 tầng
  1. L1INTERFACE
    • Admin site
    • User site

Các tầng sâu hơn: ngoài phạm vi vai trò này

Vai trò
Frontend — làm toàn bộ UI cho cả trang quản trị & trang người dùng
Giao diện
Trang quản trị · Trang người dùng
Thời gian
≈ 2022–2023 · 10 tháng
Stack
jQuery · JavaScript · Bootstrap · Laminas MVC · SSR

A-103 · Mặt cắt 03

Engibase Suite

Nền tảng EdTech doanh nghiệp nhiều vai trò — Frontend Architecture cho các portal backend, khách hàng, giáo viên và visitor.

Mặt cắt · 2 tầng
  1. L1INTERFACE
    • Backend
    • Customer
    • Teacher
    • Visitor
  2. L2FE ARCH.
    • UI architecture · component standardization

Các tầng sâu hơn: ngoài phạm vi vai trò này

Vai trò
Frontend Architect — UI Architecture, chuẩn hóa component, DX cho nhiều portal
Giao diện
Backend · Khách hàng · Giáo viên · Visitor
Thời gian
≈ 2023–2025 · khoảng 2 năm
Stack
HTML5 · CSS3 · JavaScript ES6 · jQuery · Bootstrap 4 · Chart.js · ECharts · Laminas MVC · SSR

Stack, từ giao diện xuống tới server chạy hệ thống.

L1 ▽ ±0.00 · A-201

Giao diện

Ứng dụng web nhiều portal, một website SSG ba ngôn ngữ, giao diện kiosk và POS.

L1 over time: 8 projects pass through it.

Cốt lõi

  • Vue 3 · Banh Mi Daily, EngiHire (Engilink)
  • Nuxt 4 · Banh Mi Daily
  • TypeScript · Banh Mi Daily, EngiHire (Engilink)

Có kinh nghiệm

  • TailwindCSS
  • Element Plus · EngiHire (Engilink)
  • Ant Design Vue · Banh Mi Daily
  • PWA · Banh Mi Daily
  • Web Bluetooth · Banh Mi Daily

8 dự án đi qua tầng này: Aconcept, Learningift, Rectelework, Learningpocket, JSIC, Engibase Suite, EngiHire (Engilink), Banh Mi Daily.

L2 ▽ −2.20 · A-202

Frontend Architecture

Nhiều portal trong một codebase, ranh giới module rõ ràng và UI dùng chung.

L2 over time: 5 projects pass through it.

Cốt lõi

  • Feature-Sliced Design · Banh Mi Daily, EngiHire (Engilink)
  • Monorepo (pnpm + Turborepo) · Banh Mi Daily, EngiHire (Engilink)

Có kinh nghiệm

  • Design Systems
  • Vite · EngiHire (Engilink)

5 dự án đi qua tầng này: Learningift, Rectelework, Engibase Suite, EngiHire (Engilink), Banh Mi Daily.

A-301 · Chi tiết 01 · Tỉ lệ 1:5

Chia sẻ đúng ranh giới

Trách nhiệm nào có thể thay đổi độc lập?

Ba portal cùng build từ workspace packages/. Thay đổi trong packages/ đến được cả ba; thay đổi bên trong feature slice của một portal chỉ nằm trong portal đó.

Ba portal của EngiHire dùng chung package trong một workspace, phân định rõ trách nhiệm giữa frontend và API.

Dẫn chứng

※ Minh họa đơn giản cho một quyết định đã có tài liệu.

L3 ▽ −4.40 · A-203

State & dữ liệu phía client

Server state, caching và dữ liệu được validate tại ranh giới API.

L3 over time: 2 projects pass through it.

Cốt lõi

  • TanStack Query · Banh Mi Daily, EngiHire (Engilink)
  • Pinia · EngiHire (Engilink)

Có kinh nghiệm

  • Zod · Banh Mi Daily

2 dự án đi qua tầng này: EngiHire (Engilink), Banh Mi Daily.

A-302 · Chi tiết 02 · Tỉ lệ 1:5

Validate tại ranh giới

Thay đổi nào chỉ nên ảnh hưởng cục bộ?

Dữ liệu từ API được parse bằng Zod schema ngay khi đi vào frontend. Dữ liệu không hợp lệ bị chặn ở ranh giới, trước khi tới giao diện.

Validate dữ liệu tại nơi nó đi qua ranh giới: TanStack Query kết hợp Zod ở điểm dữ liệu API đi vào frontend.

Dẫn chứng

※ Minh họa đơn giản cho một quyết định đã có tài liệu.

L4 ▽ −6.60 · A-204

API & backend

REST endpoint, authentication, phân quyền theo role và tích hợp thanh toán.

L4 over time: 2 projects pass through it.

Cốt lõi

  • NestJS · Banh Mi Daily, EngiHire (Engilink)
  • Thiết kế REST API · EngiHire (Engilink)
  • JWT refresh token rotation · Banh Mi Daily, EngiHire (Engilink)

Có kinh nghiệm

  • RBAC · Banh Mi Daily
  • Thanh toán & webhook (Mollie) · Banh Mi Daily
  • ExpressJS

2 dự án đi qua tầng này: EngiHire (Engilink), Banh Mi Daily.

A-303 · Chi tiết 03 · Tỉ lệ 1:5

Giữ quyền quyết định ở server

Quyền quyết định nằm ở đâu?

Các giao diện client gửi những gì khách đã chọn. API tính tổng tiền và VAT, đồng thời kiểm tra role trước khi xử lý.

Client lo phần giao diện. Giá, VAT và phân quyền theo role do API kiểm soát.

Dẫn chứng

※ Minh họa đơn giản cho một quyết định đã có tài liệu.

A-304 · Chi tiết 04 · Tỉ lệ 1:5

Thiết kế cho retry

Chuyện gì xảy ra khi cùng một request đến hai lần?

Request đầu tiên lấy lock theo key của nó. Cùng request đó gửi lại sẽ thấy lock đang bị giữ và bị từ chối vì trùng. Chỉ một đơn được tạo.

Các request đồng thời cần một ranh giới được thiết kế có chủ đích. Idempotency key và advisory lock bảo vệ checkout.

REQUESTS 0 · ORDERS 0

Gửi đơn, rồi gửi lại đúng request đó trong lúc request đầu vẫn đang giữ lock.

Dẫn chứng

※ Minh họa đơn giản cho một quyết định đã có tài liệu.

L5 ▽ −8.80 · A-205

Dữ liệu & tính nhất quán

Đơn hàng luôn đúng khi nhiều checkout đến cùng lúc.

L5 over time: 2 projects pass through it.

Cốt lõi

  • PostgreSQL · Banh Mi Daily
  • Prisma · Banh Mi Daily
  • MongoDB · EngiHire (Engilink)

Có kinh nghiệm

  • Mongoose
  • State machine đơn hàng · Banh Mi Daily
  • Idempotency keys · Banh Mi Daily
  • Advisory locks · Banh Mi Daily

2 dự án đi qua tầng này: EngiHire (Engilink), Banh Mi Daily.

A-305 · Chi tiết 05 · Tỉ lệ 1:5

Làm trạng thái tường minh

Một đơn hàng được phép thay đổi những gì?

Mỗi đơn mang hai trạng thái, orderStatus và paymentStatus, và API nắm cả hai. API chấp nhận các thay đổi mà state machine cho phép và từ chối phần còn lại, chẳng hạn COMPLETED trước READY.

Mô hình hóa quy tắc nghiệp vụ ở nơi có thể thực thi chúng. Ở Banh Mi Daily, API nắm state machine đơn hàng.

Đơn hàng · orderStatus
RECEIVED
Đã ghi nhận đơn, chưa vào bếp
PREPARING
Bếp đang làm
READY
Món đã xong, chờ khách nhận
COMPLETED
Khách đã nhận món
CANCELLED
Đơn đã bị hủy chủ động
EXPIRED
Đơn tự hết hạn khi quá thời gian giữ đơn
Thanh toán · paymentStatus
UNPAID
Chưa thanh toán
PENDING
Đang chờ xác nhận thanh toán (mọi thanh toán chưa được xác nhận đều ở trạng thái này)
PAID
Đã nhận tiền
FAILED
Thanh toán thất bại, bị hủy hoặc hết hạn; không còn lần thanh toán đang hoạt động
REFUND_PENDING
Đang chờ xác nhận hoàn tiền toàn phần
REFUNDED
Đã hoàn tiền toàn phần
Dẫn chứng

※ Minh họa đơn giản cho một quyết định đã có tài liệu.

L6 ▽ −11.00 · A-206

Hạ tầng & triển khai

Tự deploy và vận hành hệ thống, có CI kiểm soát.

L6 over time: 1 projects pass through it.

Cốt lõi

  • Docker · Banh Mi Daily
  • Nginx · Banh Mi Daily
  • GitHub Actions CI · Banh Mi Daily

Có kinh nghiệm

  • Docker Compose
  • Hetzner VPS · Banh Mi Daily
  • Cloudflare Pages & R2 · Banh Mi Daily
  • E2E test trên PostgreSQL · Banh Mi Daily

Một dự án đi qua tầng này: Banh Mi Daily.

A-401 · Mặt bằng · Tỉ lệ 1:50

Mặt bằng tại ▽ −11.00 — Triển khai

Banh Mi Daily là dự án duy nhất có tài liệu về phần triển khai.

Trong ranh giới khu đất · tự quản lý
  • Nginx — Reverse proxy trên VPS
  • NestJS API · Docker — Đơn hàng · giá & VAT · auth
Managed services
  • Cloudflare Pages — Hosting website tĩnh
  • Cloudflare R2 — Ảnh được xử lý bằng Sharp
  • Mollie — iDEAL & thẻ · webhook có chữ ký
  • GitHub Actions — lint · typecheck · test · E2E trên PostgreSQL
Không có tài liệu
  • PostgreSQL · Prisma — Không có tài liệu về nơi host
Triển khai
  • GitHub Actions CI chạy lint, typecheck, test và E2E test trên PostgreSQL
  • API chạy trong Docker, phía sau Nginx, trên một VPS
  • Website và ảnh được serve từ Cloudflare Pages và R2

※ Sơ đồ các trách nhiệm có trong tài liệu. Không phải traffic thật.

A-501 · Sửa đổi

Sự nghiệp — một quá trình xây dựng.

HTML và jQuery, Vue component trên Laravel API, gần sáu năm làm Frontend Architecture song song với backend, và giờ là một nền tảng tự xây dựng và vận hành end-to-end.

Sự nghiệp từ 2018 đến 2026, vẽ thành một chuỗi kích thước chạy dọc xuống.
  1. REV 5 · 06/2026 — Hiện tại

    Full-Stack Developer

    Banh Mi Daily · Freelance

    • Developer duy nhất của một nền tảng đặt món & vận hành cửa hàng: website Nuxt SSG ba ngôn ngữ, kiosk tự phục vụ, POS trên tablet và trang quản trị, xây dựng theo dạng pnpm/Turborepo monorepo.
    • NestJS, Prisma và PostgreSQL — state machine đơn hàng hai trục, idempotency key và advisory lock để loại bỏ race condition khi checkout đồng thời, giá & VAT do server quyết định, JWT refresh token rotation kết hợp RBAC, pipeline xử lý ảnh Sharp → Cloudflare R2.
    • Thanh toán qua Mollie (iDEAL & thẻ) với webhook idempotent, có verify chữ ký, dùng để đối soát trạng thái thanh toán và xác nhận đơn.
    • Vue 3 / Nuxt 4, Ant Design Vue, TanStack Query với Zod validation tại ranh giới API, Feature-Sliced Design, PWA, in hóa đơn ESC/POS qua Web Bluetooth.
    • API đóng gói bằng Docker, chạy sau Nginx trên VPS, Cloudflare Pages/R2, GitHub Actions CI (lint, typecheck, test, E2E trên PostgreSQL).

    Nuxt 4 · Vue 3 · TypeScript · TanStack Query · Zod · Turborepo · PWA · NestJS · Prisma · PostgreSQL · Mollie · Webhooks · Docker · Nginx · Cloudflare R2 · GitHub Actions

    Các mặt cắtBanh Mi Daily

  2. REV 4 · 08/2020 — 06/2026

    Fullstack Developer / Frontend Architect

    Groot Co., Ltd

    • Thiết kế và dẫn dắt Frontend Architecture với Vue 3, FSD và Turborepo monorepo.
    • Xây dựng và bảo trì REST API endpoint với NestJS và MongoDB.
    • Xây dựng các luồng JWT authentication (access/refresh token) ở backend.
    • Dẫn dắt và mentor một team 3 developer qua code review và định hướng kiến trúc.
    • Xây dựng hệ thống UI dùng chung, tái sử dụng được, giúp tăng tính nhất quán và tốc độ phát triển.

    Vue 3 · TypeScript · FSD · Pinia · Vite · Turborepo · NestJS · MongoDB · JWT

    Các mặt cắtEngiHire (Engilink) · Engibase Suite · Learningpocket · JSIC · Rectelework · Learningift

  3. REV 3 · 11/2019 — 04/2020

    Frontend Developer

    Ezbook

    • Xây dựng Vue.js component tích hợp với Laravel backend API.
    • Dùng Element UI để dựng layout cho ứng dụng.

    Vue.js · Element UI · Laravel · Bitbucket

  4. REV 2 · 09/2018 — 11/2018

    Frontend Developer

    MangoAds

    • Làm việc trong team frontend, dựng UI layout cho các website dùng Laravel.
    • Bàn giao UI production cho Aconcept (aconcept.vn) — JS, jQuery & Bootstrap.

    HTML/CSS · SCSS · JavaScript · jQuery · Bootstrap · Laravel

    Các mặt cắtAconcept

  5. REV 1 · 05/2018 — 09/2018

    Frontend Developer

    Freelancer

    • Các dự án ứng dụng web cho khách hàng ở Mỹ và Anh.
    • Phụ trách cấu trúc HTML/CSS làm nền tảng để cả team phát triển.

    HTML/CSS · WordPress

A-601 · Khung tên

Bạn đang tuyển người làm Vue, Nuxt hoặc full-stack TypeScript?

Sẵn sàng cho các vị trí Senior Frontend và Full-stack. Email là cách nhanh nhất để liên hệ với tôi; CV có đầy đủ quá trình làm việc.

Tải CV ↓

Làm việc tại TP. Hồ Chí Minh, Việt Nam

Ghi chú chung

  1. Frontend Architecture

    Feature-Sliced Design, pnpm/Turborepo monorepo và hệ thống UI dùng chung cho các sản phẩm có nhiều portal.

  2. Tính đúng đắn ở backend

    State machine, idempotency key, advisory lock và giá do server quyết định ở những chỗ liên quan đến tiền và đơn hàng.

  3. Làm chủ end-to-end

    Từ giao diện Vue tới NestJS API, PostgreSQL, deployment với Docker/Nginx và CI.

  4. Dẫn dắt team

    Mentor ba developer qua code review và định hướng kiến trúc.

  5. Workflow có AI hỗ trợ

    Claude Code, OpenAI Codex, GitHub Copilot và Cursor là một phần trong công việc kỹ thuật hằng ngày.

Học vấn

Tay Nguyen University · Cử nhân Công nghệ thông tin · 2014 – 2018

Phát hành để thi công · Rev 2026.10

Cùng xây dựng điều tiếp theo.