Hệ thống production · Hơn 8 năm

Nguyễn Linh Thành Nhân

Technical Lead, hands-on — Backend & Edge Computer Vision

Drop frame, không drop cảnh báo. Giữ video tại site khi không được phép đưa ra ngoài. Kiểm tra identity trên mọi luồng dữ liệu.

Tại InnoVerse, tôi trực tiếp dẫn dắt đội ngũ tối đa 10 kỹ sư. Hơn 8 năm qua, tôi xây dựng các hệ thống phục vụ vận hành thực tế hằng ngày: giám sát camera AI, giám sát đội tàu hàng hải, đo nước thông minh quy mô thành phố và các nền tảng doanh nghiệp.

10Kỹ sư trong đội ngũ tôi phụ trách tại InnoVerse
3Sản phẩm enterprise dùng chung một nền tảng core
2h → 15mThời gian deploy bản phát hành mới tại TVT
~3sĐộ trễ video live tới màn hình vận hành viên hàng hải
  1. 01Kịp thời hơn đầy đủDetection đã trễ thì không còn giá trị vận hành. Có thể drop frame, nhưng cảnh báo không được phép đến muộn.
  2. 02Xử lý tại edge khi video không được rời siteDetection chạy trực tiếp trên Jetson Orin NX tại site. Chỉ metadata của cảnh báo mới được gửi ra ngoài.
  3. 03Cô lập dữ liệu trên mọi luồngTenant và permission được kiểm tra trên mọi đường đọc dữ liệu — không chỉ ở bước đăng nhập.

Giới thiệu

Tôi là ai

  1. 2018Backend Developer · Modoho
  2. 2021Technical Lead · TVT Group
  3. 2024Technical Lead · InnoVerse

Tôi bắt đầu làm backend từ năm 2018. Từ năm 2021, tôi đảm nhận vai trò Technical Lead — đầu tiên tại TVT Group, và từ năm 2024 tại InnoVerse (đồng thời phụ trách Tech Heart song song đến đầu năm 2025).

Trong suốt quá trình đó, tôi dẫn dắt các đội kỹ thuật tối đa 10 người, xây dựng hệ thống giám sát cho hàng trăm tàu cá, hệ thống đo nước quy mô thành phố lớn và các nền tảng doanh nghiệp vận hành liên tục. Công việc của tôi nằm ở giao điểm giữa Software Architecture và Solution Architecture: tôi quyết định kiến trúc bên trong hệ thống, đồng thời tính toán đầy đủ các điều kiện triển khai và vận hành thực tế bên ngoài, rồi trực tiếp cùng đội ngũ đưa sản phẩm vào chạy thật. Tôi theo học ngành Toán tại Đại học Khoa học Tự nhiên TP.HCM và dừng lại sau hai năm khi có cơ hội làm kỹ sư phần mềm toàn thời gian; từ đó đến nay, việc tự nghiên cứu vẫn luôn tiếp diễn ngay trong các bài toán sản phẩm thực tế.

Cách làm việc

Phần tôi chịu trách nhiệm, trực tiếp viết và phân công

Làm Technical Lead nghĩa là tự mình chốt kiến trúc, và tuyệt đối không ủy thác những phần khó sửa nhất nếu thiết kế sai từ đầu.

01

Chịu trách nhiệm (Own)

  • Tách bạch control plane (quản lý camera, người dùng, cấu hình) khỏi data plane (xử lý video và event)
  • Quy trình kiểm định và phê duyệt model AI mới trước khi đưa xuống site; hệ thống API và OIDC dùng chung
02

Trực tiếp viết (Write)

  • Trực tiếp viết luồng inference/detection cùng các API quản lý camera và event
  • Thiết kế cấu trúc queue và cơ chế cô lập dữ liệu từng tenant trên các luồng tải cao nhất
03

Phân công (Delegate)

  • Giao diện UI và ứng dụng mobile sau khi đã chốt API contract
  • Các tác vụ convert asset lặp lại sau khi đã định hình chuẩn xử lý

Không bao giờ ủy thác

  • Định nghĩa ngữ nghĩa của event và quy tắc drop frame thay vì để cảnh báo bị trễ
  • Cơ chế ký số (signed update) các gói cập nhật phần mềm cho thiết bị tại site
  • Kiểm tra định danh tenant trên mọi đường đọc dữ liệu

Dự án tiêu biểu

Các hệ thống đang vận hành thực tế

Ba dự án trọng tâm được đặt lên đầu, theo sau là bốn dự án khác. Mỗi bài viết bắt đầu từ bài toán vận hành thực tế và sơ đồ kiến trúc, sau đó đi sâu vào các quyết định thiết kế, sự đánh đổi (trade-off), giới hạn phạm vi hệ thống và phần việc tôi trực tiếp nắm giữ.

Ba dự án trọng tâm

Marine Fire Detection & Automatic Firefighting · TVT Group, 2021–2024

Hệ thống giám sát trên bờ cho nền tảng cảnh báo cháy đội tàu

Vận hành viên trên bờ giám sát cùng lúc hàng trăm tàu cá. Khi cảm biến phát hiện dấu hiệu nguy cơ cháy, tín hiệu cảnh báo sẽ đi qua một luồng ưu tiên riêng, trong khi luồng video live giúp con người trực tiếp xác minh tình huống trước khi quyết định xử lý.

Kết quảĐộ trễ video HLS live đạt ~3s trong cùng khu vực và ~5s liên khu vực để vận hành viên xác minh; luồng sự kiện an toàn (safety events) được tách biệt hoàn toàn khỏi lưu lượng telemetry định kỳ.
Đánh đổi chínhTách riêng luồng xử lý và bảng đọc tổng hợp (read model) tốn nhiều công sức vận hành hơn một bảng duy nhất, nhưng đảm bảo việc ứ đọng dữ liệu định kỳ không bao giờ chặn mất cảnh báo cháy.
Phạm vi ứng dụngĐội tàu hoạt động xa bờ; trung tâm điều hành cần xem video live để xác minh trước khi điều phối xử lý.
Xem case study

Nền tảng doanh nghiệp · TVT Group, 2021–2024

Chuyển đổi dần (Strangler migration) từ khối monolith .NET Framework

Bóc tách từng mảng nghiệp vụ từ khối monolith .NET sang service mới ngay khi production vẫn đang chạy. Thời gian deploy rút ngắn từ khoảng 2 giờ thao tác thủ công xuống khoảng 15 phút.

Kết quảRút ngắn thời gian deploy từ ~2 giờ xuống ~15 phút nhờ tự động hóa CI/CD và tách nhỏ service; bóc tách thành công domain service đầu tiên mà không cần đập đi xây lại (big-bang rewrite).
Đánh đổi chínhTách thành các service nhỏ làm tăng chi phí vận hành và giao tiếp mạng, nhưng đổi lại khả năng phát hành nhanh và an toàn hơn hẳn ở những mảng nghiệp vụ hay thay đổi nhất.
Phạm vi ứng dụngHệ thống .NET legacy cần hiện đại hóa từng phần mà không làm gián đoạn hoạt động kinh doanh.
Xem case study

Các dự án khác

Smart Water Metering · TVT Group, 2021–2024

Hệ thống đo nước quy mô thành phố tách biệt luồng ghi (ingest) và luồng đọc (read)

Đồng hồ nước hộ gia đình trên khắp thành phố gửi dữ liệu định kỳ về trung tâm giám sát. Nguy cơ đóng băng đường ống và hiện tượng nước chảy ngược được phát hiện dựa trên chuỗi biến thiên theo thời gian (time-window pattern), thay vì chỉ nhìn vào một bản tin đơn lẻ.

Kết quảGiám sát vận hành mạng lưới đồng hồ nước hộ gia đình quy mô thành phố lớn; phát cảnh báo theo chuỗi thời gian (time window) thay vì từng mẫu rời rạc.
Đánh đổi chínhBảng dữ liệu phục vụ hiển thị (read model) có độ trễ vài giây so với luồng tiếp nhận (ingest); đổi lại vận hành viên mở dashboard nhanh mà không phải quét trực tiếp vào bảng lịch sử thô.
Phạm vi ứng dụngMạng lưới cấp nước quy mô thành phố với lưu lượng dữ liệu dồn cục bộ (burst) theo khung giờ.
Xem case study

Nền tảng BIM & LiDAR · InnoVerse, 2024–nay

Đối chiếu mô hình thiết kế BIM và dữ liệu quét LiDAR trong cùng một hệ tọa độ

Mô hình thiết kế 3D (as-designed) và dữ liệu quét laser thực tế bằng drone (as-built LiDAR) được đặt chung trong một hệ tọa độ công trình để đối chiếu trực quan — nhưng dữ liệu quét chỉ đóng vai trò bằng chứng tham khảo chứ không bao giờ tự động ghi đè lên hồ sơ tiến độ chính thức.

Kết quảMô hình tổng hợp mở nhanh trên trình duyệt từ các file view đã chuyển đổi sẵn; đám mây điểm LiDAR khớp chính xác lên mô hình thiết kế trong cùng hệ quy chiếu; dữ liệu khảo sát tách biệt hoàn toàn với sổ cái nghiệm thu tiến độ.
Đánh đổi chínhKết quả đối chiếu từ dữ liệu quét bắt buộc phải qua bước kỹ sư xác nhận; một lần bay quét không được phép tự động biến thành khối lượng nghiệm thu thanh toán.
Phạm vi ứng dụngDự án xây dựng cần đối chiếu thiết kế 3D với hiện trạng thực tế mà không để dữ liệu quét tự động ghi đè hồ sơ tiến độ chính thức.
Xem case study

HRM SaaS · AI Assistant · InnoVerse, 2025–nay

Trợ lý AI trong HRM được kiểm soát chặt theo phân quyền người dùng

Trợ lý AI tích hợp trong nền tảng HRM multi-tenant, trả lời câu hỏi và thực hiện tác vụ thông qua các service sẵn có của hệ thống, nhưng luôn bị giới hạn nghiêm ngặt trong đúng phạm vi quyền hạn (permission scope) của người đang đăng nhập.

Kết quảDanh sách tool được lọc theo 3 cấp độ quyền (cá nhân, quản lý đội nhóm, quản trị HR công ty); mọi lệnh gọi tool đều lưu audit log; các thao tác ghi dữ liệu bắt buộc phải qua bước người dùng xác nhận.
Đánh đổi chínhViệc giới hạn tool theo đúng quyền hạn hiện có khiến trợ lý AI không thể trả lời các câu hỏi vượt cấp, nhưng để AI truy cập rộng hơn quyền của người dùng chính là lỗ hổng rò rỉ dữ liệu (data breach).
Phạm vi ứng dụngSản phẩm có dữ liệu nhân sự nhạy cảm, đòi hỏi trợ lý AI phải tuân thủ chặt chẽ phân quyền của từng người dùng.
Xem case study

Nền tảng Smart Office · Tech Heart (Tini Group), 2024–2025

Backend Smart Office đa tenant tích hợp kiểm soát ra vào (IoT Access Control)

Hệ thống backend trung tâm quyết định ai được phép mở cánh cửa nào — qua khóa thông minh, vân tay hoặc thẻ từ — đồng thời đảm bảo tòa nhà vẫn duy trì quy tắc đóng/mở nhất quán ngay cả khi mất kết nối mạng. Khi công ty chuyển hướng sản phẩm (pivot), toàn bộ nền tảng định danh và phân quyền này được tái sử dụng nguyên vẹn thay vì phải xây lại từ đầu.

Kết quảPhát hành sản phẩm đầu tiên trong ~2 tháng nhờ cắt gọn scope; onboard đội ngũ 9 kỹ sư với quy trình code review bắt buộc; chuyển hướng sản phẩm (pivot) mà không phải viết lại tầng định danh và phân quyền.
Đánh đổi chínhGiữ cố định tầng core (multi-tenancy và authentication) giúp xoay trục sản phẩm cực nhanh: chỉ cần thay đổi các bảng dữ liệu nghiệp vụ và tích hợp thiết bị, không phải đụng chạm vào mô hình bảo mật cốt lõi.
Phạm vi ứng dụngTòa nhà cần đầu đọc kiểm soát cửa vận hành nhất quán theo quy tắc định sẵn ngay cả khi rớt mạng.
Xem case study

Công nghệ

Công nghệ đứng sau các hệ thống này

Bốn mảng kỹ thuật được phân nhóm theo bản chất bài toán. Công cụ được chọn để giải quyết bài toán, không phải ngược lại.

Computer Vision trên Server và Edge

RTSP ingest, YOLO-family detection, bounded queue, DeepStream trên Jetson Orin NX, cập nhật phần mềm có chữ ký số.

RTSPYOLOTensorRTDeepStreamJetson Orin NX

Event-driven Backend

Phân tách các luồng RabbitMQ theo SLA khác nhau, chống trùng cảnh báo (dedup) bằng Redis, tách luồng ghi batch và đọc tổng hợp (rollup).

RabbitMQRedisNestJSPostgreSQLTimescaleDB

Fleet IoT và hiện đại hóa .NET

Backend giám sát đội tàu trên bờ, ingest dữ liệu đồng hồ nước, tách dần (strangler migration) từ .NET Framework 4.7 sang .NET 7.

Node.jsHLS.NET 7AWS

Core sản phẩm Multi-tenant

Dịch vụ định danh OIDC dùng chung, hàng đợi xử lý mô hình BIM, trợ lý AI trong HRM giới hạn chặt theo permission.

OIDCNestJSIFCLLM tool calling

Năng lực cốt lõi

Những gì tôi trực tiếp vận hành, không chỉ xây dựng

Viết xong hệ thống mới chỉ là một nửa công việc. Những năng lực dưới đây giữ cho hệ thống chạy ổn định, thay đổi an toàn và nằm trong ranh giới kiểm soát khi đi vào vận hành thực tế.

Quản trị máy chủ và hạ tầng GPU

Vận hành máy chủ Linux trên production — reverse proxy, TLS, Docker trên AWS — cùng các máy chủ GPU dùng để build và kiểm định model inference trước khi triển khai xuống site. Cùng một kỷ luật vận hành đó được áp dụng cho dàn thiết bị Jetson ngoài hiện trường.

Thiết kế quy trình CI/CD

Xây dựng đường ống CI/CD giúp rút ngắn thời gian deploy từ 2 giờ xuống 15 phút, chuẩn hóa template CI và AWS dùng chung cho các dự án mới, và duy trì nhịp release hàng tuần có code review bắt buộc cho đội ngũ greenfield.

Xây dựng đội ngũ và quy trình triển khai

Xây dựng và onboard đội ngũ kỹ sư (tối đa 10 người tại InnoVerse và 9 người ở một công ty greenfield): thiết lập quy tắc phân nhánh, code review, và giao một luồng tính năng hoàn chỉnh (vertical slice) ngay trong tuần đầu tiên để kỹ sư mới làm quen quy trình thông qua việc ship code thực tế.

Bảo mật từ hệ thống nhỏ đến môi trường nhiều lớp

Thiết kế bảo mật tương xứng với mức độ rủi ro. Một hệ thống nội bộ nhỏ cần cơ chế đăng nhập chuẩn, cô lập tenant và review code chặt chẽ. Một môi trường hạn chế nghiêm ngặt — phòng lab hoặc site không cho phép đưa video ra ngoài — cần nhiều lớp bảo vệ độc lập không mặc định tin tưởng lẫn nhau: kiểm tra identity trên mọi đường đọc dữ liệu, phân giải permission trước mọi thao tác (kể cả trước khi trợ lý AI được phép nhìn thấy danh sách tool), thiết bị kiểm soát cửa chỉ lưu bản chụp quyền hạn (snapshot) có thời hạn, gói cập nhật phải được ký số và xác thực trước khi cài đặt, và mọi thao tác nhạy cảm đều lưu vết audit log. Một lớp gặp sự cố sẽ không tự động làm thủng lớp tiếp theo.

Phân tích nghiệp vụ trong các miền kỹ thuật sâu

Chuyển hóa bài toán nghiệp vụ thành quy tắc hệ thống: khi nào mạng cấp nước có nguy cơ đóng băng, tín hiệu nào từ tàu cá thuộc nhóm khẩn cấp (safety-critical), khi nào dữ liệu quét LiDAR không được phép tự động ghi nhận làm tiến độ chính thức, và nhân sự nào được phép xem hồ sơ HR nào.

Nền tảng Toán học ứng dụng

Tôi theo học ngành Toán tại Đại học Khoa học Tự nhiên TP.HCM và dừng lại sau hai năm khi cơ hội làm kỹ sư toàn thời gian lúc đó phù hợp hơn — nhưng việc tự nghiên cứu chưa bao giờ dừng lại mà chuyển thẳng vào công việc kỹ thuật. Tôi áp dụng nền tảng đó vào các bài toán thực tế: xác định chính xác một đối tượng đã thực sự đi vào vùng cấm hay chỉ lướt qua rìa và lưu lại trong bao lâu; quy chiếu mô hình thiết kế 3D và dữ liệu quét LiDAR ngoài công trường về cùng một hệ tọa độ để đối soát — đồng thời phân biệt rõ giữa “chưa thi công” với “bị khuất tầm quét”; hay tính toán chọn quạt công nghiệp HVAC bằng cách đối chiếu đường đặc tính quạt với yêu cầu lưu lượng và cột áp rồi xếp hạng các phương án tối ưu. Nói ngắn gọn: tôi quen làm việc với những con số bắt buộc phải chính xác, và hiểu rõ khi nào dữ liệu hiện có chưa đủ cơ sở để đưa ra kết luận.

Quá trình làm việc

Kinh nghiệm làm việc

  1. 05/2018 — 03/2021

    Backend Developer · Modoho

    Phát triển từ đầu (greenfield) các hệ thống backend sàn giao dịch .NET/Node.js phục vụ hàng nghìn người dùng mỗi ngày, vận hành Jenkins và Docker trên AWS.

    2 năm 10 tháng
  2. 03/2021 — 03/2024

    Technical Lead · TVT Group

    Hệ thống cảnh báo cháy tàu biển, đo nước thông minh quy mô thành phố, tách monolith sang .NET 7 microservices, giảm thời gian deploy từ 2 giờ xuống 15 phút.

    3 năm
  3. 06/2024 — 02/2025

    Technical Lead · Tech Heart (Tini Group)

    Thiết lập CI/CD, văn hóa code review, xây dựng đội 9 kỹ sư, nền tảng smart office & IoT access control. Làm song song từ 08/2024 (InnoVerse là vai trò chính).

    8 thángLàm song song
  4. 08/2024 — Nay

    Technical Lead · InnoVerse Solution

    Nền tảng Camera AI, thiết bị edge Jetson, BIM/LiDAR, trợ lý AI cho HRM — dẫn dắt đội ngũ tối đa 10 kỹ sư, trực tiếp làm inference và API.

    2 năm 3 thángHiện tại

Đại học Khoa học Tự nhiên TP.HCM (HCMUS) — Ngành Toán học, 2017–2019. Dừng sau 2/4 năm (chưa lấy bằng) để chuyển sang làm kỹ sư phần mềm toàn thời gian; việc tự nghiên cứu vẫn tiếp tục xuyên suốt trong quá trình làm sản phẩm thực tế.