Bỏ qua tới nội dung
Thái Hoàng Mai Học

hoc.thaihoangmai.work@gmail.com

Tất cả dự án

2021 – 2023, Tiên Phong CDS cho Nutifood

Vai trò
Lập trình viên backend, kỹ sư DevOps
Quy mô team
10 người, 20 man-month
Người dùng
Hơn 300
Website
nutifoodshop.com

Mục tiêu doanh nghiệp

Sàn bán hàng phục vụ cùng lúc ba nhóm khách: nhà phân phối, cửa hàng và người tiêu dùng.

Website và app Flutter bán hàng của Nutifood, phục vụ nhà phân phối, cửa hàng và người tiêu dùng. Khách hàng, sản phẩm và giỏ hàng đồng bộ với cổng Ngôi Nhà Dinh Dưỡng; đơn hàng chuyển sang DMS; sản phẩm đồng bộ lên CDP.

Phân hệ chính

  • Luồng giá và đặt hàng riêng cho 3 nhóm khách
  • Kênh affiliate qua Accesstrade
  • Đồng bộ với cổng Ngôi Nhà Dinh Dưỡng
  • Đơn hàng chuyển sang DMS
  • Đồng bộ sản phẩm lên CDP

Phần tôi làm

Một sàn phục vụ cùng lúc nhà phân phối, cửa hàng và người tiêu dùng của Nutifood, thêm kênh affiliate mang về doanh số ngoài kênh trực tiếp.

  • Xây dựng logic phía máy chủ và xử lý nghiệp vụ bán hàng
  • Phân tích yêu cầu kỹ thuật và triển khai tích hợp bên thứ ba
  • Vận hành hạ tầng đám mây, theo dõi và phân tích lưu lượng truy cập
  • Đề xuất hướng tối ưu hiệu năng trang và chi phí đám mây cho khách

Kết quả

  • Hơn 300người dùng thuộc ba nhóm khách
  • 3luồng giá và đặt hàng, mỗi nhóm một luồng
  • AffiliateAccesstrade thêm một nguồn doanh số ngoài kênh trực tiếp

Vấn đề gặp phải

Ba nhóm khách có nghiệp vụ giá và đặt hàng khác hẳn nhau nhưng dùng chung một nền tảng, doanh số cần thêm nguồn ngoài kênh bán trực tiếp, và đơn hàng, sản phẩm phải chảy sang DMS và CDP của khách.

Cách đã giải quyết

  1. Tách luồng giá và đặt hàng cho ba nhóm khách trên cùng một nền tảng.
  2. Đưa hệ thống lên GKE, backend tự co giãn tới 90 pod theo tải.
  3. Tích hợp Accesstrade làm kênh affiliate riêng, có theo dõi quy đổi.
  4. Chuyển đơn hàng sang DMS và đồng bộ sản phẩm lên CDP bằng CronJob.

Quy trình quản lý dự án

  1. 1Phân tích yêu cầuBa nhóm khách, ba luồng giá
  2. 2Phát triểnWeb, app Flutter, quản trị
  3. 3Tích hợpAccesstrade 01/2022, DMS, CDP
  4. 4UATKịch bản riêng cho từng tích hợp
  5. 5Vận hành trên GKETự co giãn tới 90 pod
  • UAT và kịch bản kiểm thử riêng cho từng tích hợp (DMS, cổng dinh dưỡng).
  • Backend chạy trên GKE, tự co giãn tới 90 pod, cùng các CronJob đồng bộ mỗi 5 phút và mỗi giờ.
  • Tôi nằm trong nhóm backend 4 người và nhóm DevOps 2 người.
  • Tích hợp affiliate Accesstrade phát hành tháng 01/2022.

Kiến trúc hệ thống

  1. Người dùng
    • Web store (NuxtJS)
    • Flutter app
    • Admin (Angular)
  2. Dịch vụ
    • Lumen backend, HPA up to 90 pods
    • Ordering web
    • CronJobs: 5 min, hourly
  3. Dữ liệu
    • MySQL master + replica
  4. Tích hợp
    • Ngôi Nhà Dinh Dưỡng
    • DMS
    • CDP
    • Accesstrade
  5. Hạ tầng và DevOps
    • Google Cloud GKE
    • Docker
    • Nginx
    • Supervisord

Tech stack

Ứng dụng
  • NuxtJS
  • Angular
  • Flutter
  • PHP Lumen
Dữ liệu
  • MySQL (master và replica)
Hạ tầng
  • Google Cloud GKE
  • HPA
  • Nginx
  • Docker
  • Supervisord
Tích hợp
  • Accesstrade
  • DMS
  • CDP