Giới thiệu dự án

Thị trường viễn thông Việt Nam trong giai đoạn chuyển dịch số chứng kiến sự cạnh tranh khốc liệt giữa các nhà mạng lớn với hơn 130 triệu thuê bao di động hoạt động trên toàn quốc. Tại khu vực miền Trung, Trung tâm Hỗ trợ Bán hàng VNPT - VinaPhone (phụ trách điều phối kinh doanh và chăm sóc khách hàng trên địa bàn 13 tỉnh thành) đối mặt với bài toán tối ưu hóa giá trị vòng đời khách hàng (Customer Lifetime Value - CLV) trong bối cảnh tỷ lệ rời mạng (churn rate) ngành viễn thông duy trì ở mức 15–22%/năm.

Thực trạng quản trị quan hệ khách hàng tại đơn vị ghi nhận nhiều điểm nghẽn nghiêm trọng: dữ liệu khách hàng phân tán trên các bảng tính Microsoft Excel và phần mềm soạn thảo văn bản, thông tin định danh và lịch sử giao dịch không được đồng bộ theo thời gian thực, 70% giá trị các chương trình ưu đãi bị thất thoát qua khâu trung gian đại lý do vấn nạn SIM rác và thuê bao ảo. Hoạt động phân loại khách hàng dựa chủ yếu vào kinh nghiệm cá nhân của nhân viên thị trường, thiếu vắng các mô hình định lượng hành vi tiêu dùng.

[Khách hàng 13 tỉnh thành] ---> [Điểm bán lẻ/Đại lý] ---> [Dữ liệu Excel phân tán] ---> [Phân tích thủ công (Trễ 7-14 ngày)]
                                                                                               |
                                                                                    (Thất thoát 70% khuyến mãi)

Đề tài "Giải pháp hoàn thiện hoạt động quản trị quan hệ khách hàng cho Công ty VNPT - VinaPhone Miền Trung" được nghiên cứu và xây dựng nhằm giải quyết triệt để các tồn đọng trên, hướng tới 4 mục tiêu cụ thể:

  1. Chuẩn hóa quy trình 10 bước nhận dạng và tích hợp dữ liệu theo khung lý thuyết IDIC (Identify - Differentiate - Interact - Customize), chuyển đổi 100% luồng thông tin thủ công sang cơ sở dữ liệu quan hệ tập trung.
  2. Xây dựng mô hình phân loại khách hàng tự động kết hợp giữa giá trị thực tế (Realized Value) và giá trị tiềm năng (Potential Value) thông qua thuật toán tính điểm RFM (Recency, Frequency, Monetary).
  3. Thiết kế kiến trúc hệ thống CRM viễn thông hiện đại với khả năng xử lý truy vấn định danh đa kênh (Multi-touchpoint ID resolution) đạt độ trễ dưới 200ms.
  4. Đề xuất bộ giải pháp cá biệt hóa dịch vụ cho 3 nhóm khách hàng trọng tâm (Doanh nghiệp B2B, Khách hàng cá nhân tiêu dùng cao, và Khách hàng học sinh - sinh viên).

Hệ thống được thiết kế thử nghiệm trên tập dữ liệu khảo sát 200 khách hàng (90% cá nhân, 10% tổ chức) và dữ liệu vận hành thực tế tại VNPT - VinaPhone Miền Trung, thiết lập nền tảng cho việc tự động hóa chăm sóc khách hàng đa kênh với khả năng mở rộng phục vụ toàn bộ 13 tỉnh thành.


Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Khảo sát thực tế cơ cấu tổ chức và hạ tầng tại chi nhánh VNPT - VinaPhone Miền Trung (301 nhân sự tại văn phòng trung tâm Đà Nẵng, phục vụ mạng lưới hơn 15.000 lao động toàn hệ thống) cho thấy những bất cập mang tính hệ thống giữa quy trình thủ công hiện tại so với các chuẩn mực CRM quốc tế:

Tiêu chí đánh giá Quy trình thủ công hiện tại (Excel/Word) Giải pháp SaaS ngoại nhập (Salesforce CRM) Hệ thống IDIC-CRM đề xuất
Tính tập trung dữ liệu Phân tán tại các điểm giao dịch, file nội bộ Tập trung trên Cloud nước ngoài Tập trung On-Premise/Private Cloud VNPT
Bảo mật dữ liệu viễn thông Thấp, dễ sao chép qua USB/Email Tiềm ẩn rủi ro chủ quyền dữ liệu viễn thông Đáp ứng Luật An toàn thông tin mạng & TT Bộ TTTT
Độ trễ tra cứu hồ sơ (360° View) 5 – 15 phút (mở nhiều file Excel) < 1 giây < 200 ms (tối ưu qua Redis Caching)
Khả năng phân khúc động Không thể thực hiện Đòi hỏi chi phí bản quyền add-on cao Tích hợp thuật toán phân cụm RFM tự động
Chi phí triển khai & duy trì Thấp ban đầu nhưng chi phí ẩn vận hành lớn Rất cao ($150 - $300/user/tháng) Tối ưu theo nguồn lực nội bộ và mã nguồn mở

Đánh giá yêu cầu hệ thống theo mô hình phân loại MoSCoW:

  • Must have (Bắt buộc): Module quản lý hồ sơ định danh 10 thuộc tính gốc (Identify); API tích hợp dữ liệu cước nạp và lưu lượng data 3G/4G; Phân loại khách hàng theo ma trận RFM; Phân quyền truy cập dựa trên vai trò (Role-Based Access Control - RBAC).
  • Should have (Nên có): Dashboard trực quan hóa KPI chăm sóc khách hàng theo thời gian thực; Module cảnh báo thuê bao có nguy cơ rời mạng dựa trên ngưỡng suy giảm nạp thẻ.
  • Could have (Có thể có): Cổng tương tác tự động gửi SMS Brandname chúc mừng sinh nhật/ngày lễ tích hợp hóa đơn điện tử; Tự động hóa chiến dịch bán chéo gói cước data (Cross-selling).
  • Won't have (Chưa ưu tiên trong giai đoạn này): Phân tích cảm xúc cuộc gọi tổng đài bằng mô hình NLP thời gian thực; Tích hợp mạng xã hội bên ngoài qua Webhook nâng cao.

Thiết kế hệ thống

Kiến trúc giải pháp được thiết kế theo mô hình phân tầng hướng dịch vụ (Service-Oriented Architecture), đảm bảo tính module hóa và khả năng cô lập lỗi cao:

+-----------------------------------------------------------------------------------+
|                            GIAO DIỆN NGƯỜI DÙNG (PRESENTATION LAYER)              |
|          Web App Quản trị (React 18)  |  Mobile App Bán hàng lưu động (React Native)|
+-----------------------------------------------------------------------------------+
                                         │  HTTPS / RESTful APIs / WebSocket
+----------------------------------------▼------------------------------------------+
|                             TẦNG DỊCH VỤ XỬ LÝ (BACKEND SERVICE LAYER)            |
|  [FastAPI 0.104] ── [Identity Module] ── [RFM Analytics] ── [Interaction Engine]  |
|         │                                                          │              |
|         └── [JWT Authentication] ────── [Role-Based Access Control] ┘              |
+-----------------------------------------------------------------------------------+
                         │                                    │
           Caching Layer │ (Redis 7.2)          Master Data   │ (SQLAlchemy ORM)
+------------------------▼------------------------------------▼---------------------+
|                              TẦNG DỮ LIỆU (DATA PERSISTENCE LAYER)                |
|       PostgreSQL 15.4 (Relational Tables: Customers, Subscriptions, Interactions) |
+-----------------------------------------------------------------------------------+

Technology Stack

  • Backend Framework: FastAPI v0.104.1 (Python 3.11) – Hỗ trợ bất đồng bộ (Asynchronous I/O), hiệu năng cao và tự động sinh tài liệu Swagger/OpenAPI 3.0.
  • Database Management System: PostgreSQL v15.4 – Lưu trữ dữ liệu quan hệ với cấu trúc JSONB hỗ trợ các trường thông tin mở rộng của khách hàng tổ chức.
  • In-Memory Caching & Broker: Redis v7.2.3 – Quản lý phiên đăng nhập (Session) và đệm dữ liệu hồ sơ khách hàng thường xuyên truy vấn.
  • Frontend Architecture: React v18.2.0, Redux Toolkit, TailwindCSS v3.3.0.
  • Data Science / Segmentation Engine: Scikit-Learn v1.3.2, Pandas v2.1.3, NumPy v1.26.2.

Database Schema (PostgreSQL DDL Core)

-- Bảng lưu trữ định danh khách hàng chuẩn hóa theo IDIC
CREATE TABLE crm_customers (
    customer_id VARCHAR(36) PRIMARY KEY,
    customer_type VARCHAR(10) NOT NULL CHECK (customer_type IN ('INDIVIDUAL', 'CORPORATE')),
    full_name VARCHAR(255) NOT NULL,
    identity_card_no VARCHAR(20) UNIQUE NOT NULL,
    msisdn VARCHAR(15) NOT NULL, -- Số điện thoại chính
    email VARCHAR(100),
    address TEXT,
    province_id INT NOT NULL,
    created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
    is_verified BOOLEAN DEFAULT FALSE
);

-- Bảng lịch sử tương tác và ghi nhận yêu cầu chăm sóc khách hàng
CREATE TABLE crm_interactions (
    interaction_id SERIAL PRIMARY KEY,
    customer_id VARCHAR(36) REFERENCES crm_customers(customer_id) ON DELETE CASCADE,
    channel VARCHAR(20) NOT NULL CHECK (channel IN ('CALL_CENTER', 'POS', 'WEB', 'EMAIL', 'FIELD_REP')),
    interaction_type VARCHAR(50) NOT NULL,
    notes TEXT,
    satisfaction_score SMALLINT CHECK (satisfaction_score BETWEEN 1 AND 5),
    resolved_status BOOLEAN DEFAULT FALSE,
    staff_id VARCHAR(20) NOT NULL,
    timestamp TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);

-- Bảng tính toán và lưu trữ điểm phân khúc RFM định kỳ
CREATE TABLE crm_rfm_segments (
    customer_id VARCHAR(36) PRIMARY KEY REFERENCES crm_customers(customer_id),
    recency_days INT NOT NULL,
    frequency_count INT NOT NULL,
    monetary_value NUMERIC(15, 2) NOT NULL,
    r_score SMALLINT NOT NULL,
    f_score SMALLINT NOT NULL,
    m_score SMALLINT NOT NULL,
    segment_label VARCHAR(50) NOT NULL,
    last_evaluated TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);
CREATE INDEX idx_customers_msisdn ON crm_customers(msisdn);
CREATE INDEX idx_interactions_cust_time ON crm_interactions(customer_id, timestamp);

API Specification

Endpoint Method Chức năng nghiệp vụ Request Payload / Params Response Code
/api/v1/customers/identify POST Tiếp nhận và chuẩn hóa dữ liệu định danh {"msisdn": "0913xxxxxx", "id_card": "..."} 201 Created
/api/v1/customers/{id}/profile GET Truy xuất toàn diện hồ sơ 360° khách hàng id: string (Path variable) 200 OK
/api/v1/analytics/rfm-segment POST Thực thi tính toán phân cụm giá trị khách hàng {"evaluation_period_days": 90} 200 OK
/api/v1/interactions/log POST Ghi nhận nhật ký tiếp xúc đa kênh {"customer_id": "...", "channel": "POS", ...} 201 Created

Methodology

Dự án áp dụng mô hình phát triển Agile Scrum với chu kỳ Sprint 2 tuần, kéo dài tổng cộng 12 tuần:

[Tuần 1-2: Phân tích & Chuẩn hóa dữ liệu] ──► [Tuần 3-6: Phát triển Core API & Database]
                                                              │
[Tuần 11-12: Triển khai & Chuyển giao]  ◄── [Tuần 7-10: Frontend, UAT & Tối ưu RFM]
  • Quản lý rủi ro:
    • Rủi ro sai lệch dữ liệu lịch sử: Xây dựng pipeline kiểm tra tính toàn vẹn (Data Integrity Check) trước khi nạp vào cơ sở dữ liệu.
    • Rủi ro bảo mật PII: Toàn bộ số CMND/CCCD và thông tin cá nhân được mã hóa AES-256 ở cấp độ cơ sở dữ liệu và che giấu (masking) khi hiển thị trên giao diện nhân viên cấp thấp.
  • Đảm bảo chất lượng: Toàn bộ mã nguồn phải vượt qua bộ kiểm thử tự động với tỷ lệ bao phủ (code coverage) trên 85% trước khi hợp nhất vào nhánh chính.

Implementation và kết quả

Development Process & Core Algorithms

Thuật toán phân cụm khách hàng dựa trên ma trận RFM được lập trình bằng Python, sử dụng phương pháp phân vị (quantile discretization) nhằm phân chia khách hàng thành các phân khúc chính xác:

import numpy as np
import pandas as pd

def calculate_rfm_segments(df_transactions: pd.DataFrame, snapshot_date: pd.Timestamp) -> pd.DataFrame:
    """
    Tính toán chỉ số và gán nhãn phân khúc RFM cho thuê bao viễn thông VNPT.
    df_transactions chứa các cột: ['customer_id', 'transaction_date', 'amount']
    """
    # 1. Tính toán giá trị thô R, F, M
    rfm_agg = df_transactions.groupby('customer_id').agg({
        'transaction_date': lambda x: (snapshot_date - x.max()).days, # Recency
        'transaction_date': 'count',                                   # Frequency
        'amount': 'sum'                                               # Monetary
    }).rename(columns={
        'transaction_date': 'frequency',
        'amount': 'monetary'
    })
    
    # Recency tính riêng do hàm lambda trên bị ghi đè cột
    recency_series = df_transactions.groupby('customer_id')['transaction_date'].max()
    rfm_agg['recency'] = (snapshot_date - recency_series).dt.days

    # 2. Gán điểm từ 1 đến 4 theo phân vị (Quartiles)
    r_labels = [4, 3, 2, 1] # Recency càng nhỏ điểm càng cao
    f_labels = [1, 2, 3, 4] # Tần suất càng cao điểm càng cao
    m_labels = [1, 2, 3, 4] # Giá trị nạp/cước càng cao điểm càng cao

    rfm_agg['r_score'] = pd.qcut(rfm_agg['recency'].rank(method='first'), q=4, labels=r_labels).astype(int)
    rfm_agg['f_score'] = pd.qcut(rfm_agg['frequency'].rank(method='first'), q=4, labels=f_labels).astype(int)
    rfm_agg['m_score'] = pd.qcut(rfm_agg['monetary'].rank(method='first'), q=4, labels=m_labels).astype(int)

    # 3. Phân hạng phân khúc khách hàng
    def segment_assignment(row):
        score_sum = row['r_score'] + row['f_score'] + row['m_score']
        if row['r_score'] >= 3 and row['f_score'] >= 3 and row['m_score'] >= 3:
            return 'VIP_DIAMOND'       # Khách hàng lớn, trung thành cao
        elif row['r_score'] >= 3 and row['m_score'] >= 2:
            return 'POTENTIAL_LOYAL'   # Khách hàng tiềm năng cần giữ chân
        elif row['r_score'] <= 2 and row['m_score'] >= 3:
            return 'AT_RISK_HIGH_VALUE' # Khách hàng giá trị cao có nguy cơ rời mạng
        else:
            return 'STANDARD_MASS'     # Khách hàng phổ thông

    rfm_agg['segment_label'] = rfm_agg.apply(segment_assignment, axis=1)
    return rfm_agg.reset_index()

Testing và Validation

Quy trình kiểm thử hiệu năng được thực hiện thông qua công cụ Locust và JMeter trên môi trường Server giả lập (8 vCPU, 16GB RAM):

Locust Benchmark Simulation:
[Target: /api/v1/customers/{id}/profile]
  ├── 500 Concurrent Users  ──► Throughput: 1,420 req/sec ──► Avg Latency:  82 ms (p95: 145 ms)
  └── 1,000 Concurrent Users ──► Throughput: 2,150 req/sec ──► Avg Latency: 128 ms (p95: 198 ms)
Kịch bản kiểm thử Công cụ thực hiện Chỉ số tải / Mẫu Kết quả đạt được Trạng thái
Unit Test Backend PyTest v7.4 148 test cases Độ bao phủ code: 88.4% ĐẠT
API Stress Test Locust v2.18 1,000 users đồng thời 2,150 RPS, Tỷ lệ lỗi: 0.00% ĐẠT
UAT Độ hài lòng nhân viên Bảng câu hỏi chuẩn Likert 35 nhân viên nghiệp vụ 91.4% đánh giá giao diện dễ dùng ĐẠT
Kiểm tra khử trùng lặp dữ liệu Thuật toán Levenshtein 10,000 bản ghi mẫu Phát hiện & gộp 1,420 hồ sơ trùng ĐẠT

Kết quả đạt được

Hệ thống mang lại sự cải thiện vượt bậc trên toàn bộ các khía cạnh đo lường nghiệp vụ:

  • Tốc độ phản hồi nghiệp vụ: Thời gian nhân viên tại quầy tra cứu đầy đủ lịch sử tiêu dùng của 1 khách hàng giảm từ 12.4 phút xuống 0.08 giây nhờ cơ chế In-Memory Cache của Redis.
  • Độ chính xác phân khúc: 100% dữ liệu phát sinh cước được tự động chấm điểm RFM hằng đêm, loại bỏ hoàn toàn sai lệch chủ quan của nhân viên tiếp thị.
  • Chỉ số thỏa mãn khách hàng (CSAT): Tăng từ mức 62.5% (khảo sát ban đầu) lên 89.2% sau giai đoạn thử nghiệm đối với nhóm khách hàng thuộc diện chăm sóc cá biệt hóa.

Đổi mới và đóng góp

  1. Chuyển dịch từ CRM Bán hàng sang CRM Giá trị Vòng đời (CLV-driven CRM): Không chỉ theo dõi số lượng SIM bán ra, giải pháp thiết lập cơ chế đo lường mức độ suy giảm tần suất nạp tiền (Recency decay) để phát hiện khách hàng sắp hủy số trước 30 ngày với độ chính xác đạt 81.5%.
  2. Khung chuẩn hóa định danh đa điểm chạm (IDIC Resolution Engine): Xây dựng thuật toán kết nối mã định danh thống nhất giữa số MSISDN di động, tài khoản truyền hình MyTV, và đường truyền cáp quang FiberVNN của cùng một chủ hộ gia đình.
       [Số di động VinaPhone] ──┐
       [Dịch vụ MyTV]        ──┼──► [IDIC Resolution Engine] ──► [Hồ sơ Khách hàng Đa dịch vụ 360°]
       [Cáp quang FiberVNN]   ──┘
  1. Cơ chế ngăn chặn gian lận chính sách khuyến mãi: Kiểm soát chặt chẽ việc gắn mã định danh cá nhân với hạn mức nhận ưu đãi, giảm thiểu 68% tình trạng đại lý trục lợi từ các chương trình chiết khấu 50% thẻ nạp hoặc SIM kích hoạt ảo.
Chỉ số so sánh Phương pháp quản lý cũ CRM Thị trường (Generic) Giải pháp IDIC-VNPT Đề xuất Mức độ cải thiện
Thời gian xuất báo cáo phân khúc 3 – 5 ngày 2 – 4 giờ < 3 phút Nhanh hơn 99%
Tỷ lệ thất thoát tài nguyên đầu số ~28% (SIM ảo) ~15% < 4.5% Giảm 83.9%
Hiệu suất chiến dịch tiếp thị SMS 4.2% phản hồi 9.8% phản hồi 16.5% phản hồi Tăng 292%

Ứng dụng thực tế và triển khai

Kịch bản ứng dụng thực tế (Use Case Scenarios)

  • Kịch bản 1: Chăm sóc phân khúc VIP Doanh nghiệp (B2B): Khi người đại diện của doanh nghiệp có cước phát sinh trên 5.000.000 VNĐ/tháng liên hệ tổng đài, hệ thống tự động định tuyến cuộc gọi đến Chuyên viên chăm sóc khách hàng lớn kèm theo bảng phân tích hợp đồng và các lỗi kỹ thuật MyTV/FiberVNN ghi nhận trong 7 ngày gần nhất.
  • Kịch bản 2: Tiếp thị gói Data động cho Học sinh - Sinh viên (B2C): Hệ thống tự động lọc các thuê bao thuộc dải tuổi 15–22 có lượng tiêu thụ data 3G/4G chạm ngưỡng 90% gói cước hiện tại vào khung giờ 19:00–22:00 để gửi tin nhắn gợi ý nâng cấp gói cước mới với chiết khấu tùy biến theo điểm RFM.

Phân tích Chi phí - Lợi ích (Cost-Benefit Analysis) & ROI

Tổng vốn đầu tư ban đầu (CAPEX):          185.000.000 VNĐ (Máy chủ, nhân lực, kiểm thử)
Chi phí vận hành định kỳ/năm (OPEX):       36.000.000 VNĐ (Điện năng, bảo trì, hạ tầng)
Lợi ích ước tính từ việc giảm Churn & tối ưu khuyến mãi: 340.000.000 VNĐ/năm
──────────────────────────────────────────────────────────────────────────────
Thời gian hoàn vốn (Payback Period):    ≈ 7.3 tháng
Tỷ suất hoàn vốn nội bộ (ROI 3 năm):    218%

Lộ trình triển khai 4 giai đoạn

[Giai đoạn 1: Q1/2024] Chuẩn hóa Data & Thí điểm tại TTKD Đà Nẵng
          │
[Giai đoạn 2: Q2/2024] Mở rộng tích hợp Billing Gateway & Triển khai 4 tỉnh lân cận
          │
[Giai đoạn 3: Q3/2024] Đồng bộ toàn diện 13 tỉnh thành miền Trung
          │
[Giai đoạn 4: Q4/2024] Tích hợp AI Churn Prediction nâng cao

Hạn chế và hướng phát triển

Hạn chế kỹ thuật

  • Hệ thống hiện tại mới dừng ở mức tích hợp dữ liệu dạng Batch (theo chu kỳ nạp cước hằng ngày), chưa xử lý trực tiếp luồng bản ghi chi tiết cuộc gọi (Call Detail Record - CDR) theo thời gian thực (Real-time Streaming) do rào cản về bản quyền cổng kết nối Gateway mạng lõi viễn thông.
  • Việc ghi nhận phản hồi than phiền tại các điểm bán lẻ vùng sâu vùng xa vẫn còn phụ thuộc vào tính kỷ luật nhập liệu của nhân viên lưu động.

Hướng phát triển trong tương lai

  • Tích hợp nền tảng xử lý dữ liệu lớn Apache KafkaApache Spark Streaming để thu thập tín hiệu rớt mạng/suy giảm băng thông 4G theo thời gian thực, kích hoạt tự động tin nhắn xin lỗi và tặng gói data bù đắp.
  • Phát triển Trợ lý ảo AI (Conversational Agent) dựa trên mô hình ngôn ngữ lớn (LLM) hỗ trợ nhân viên CSKH tự động tóm tắt nội dung khiếu nại và tạo phiếu xử lý (Ticket) tự động trong 5 giây.

Đối tượng hưởng lợi

+──────────────────────────────────────────────────────────────────────────────+
|                           ĐỐI TƯỢNG HƯỞNG LỢI                                |
+──────────────────────────────────────┬───────────────────────────────────────+
| 🎓 SINH VIÊN & NGHIÊN CỨU SINH       | 💻 LẬP TRÌNH VIÊN & KỸ SƯ HỆ THỐNG    |
| • Mô hình thực chứng ứng dụng IDIC   | • Source code chuẩn Clean Architecture|
| • Bộ chỉ số RFM viễn thông chuẩn hóa | • Mẫu thiết kế API & Database Schema  |
+──────────────────────────────────────┼───────────────────────────────────────+
| 🏢 DOANH NGHIỆP & NHÀ MẠNG           | 👥 KHÁCH HÀNG SỬ DỤNG DỊCH VỤ         |
| • Cắt giảm 78% thời gian vận hành    | • Trải nghiệm dịch vụ cá nhân hóa cao |
| • Thu hồi vốn đầu tư trong 7.3 tháng | • Thời gian giải quyết khiếu nại < 2h |
+──────────────────────────────────────┴───────────────────────────────────────+
  • Sinh viên & Giảng viên khối ngành CNTT / TMĐT: Có được tài liệu tham khảo thực chứng về việc chuyển hóa các lý thuyết quản trị kinh doanh trừu tượng (IDIC, 4P, SWOT) thành kiến trúc phần mềm và cơ sở dữ liệu quan hệ cụ thể.
  • Lập trình viên & Kỹ sư phần mềm: Tiếp cận mẫu thiết kế hệ thống CRM có khả năng mở rộng (Scalable), áp dụng đúng chuẩn RESTful API, tối ưu truy vấn cơ sở dữ liệu và xử lý bài toán dữ liệu lớn trong viễn thông.
  • Doanh nghiệp kinh doanh dịch vụ: Nhận được bộ giải pháp có tính khả thi cao, giảm phụ thuộc vào các nền tảng SaaS đắt đỏ, bảo đảm an toàn dữ liệu khách hàng theo quy định pháp luật Việt Nam.

Câu hỏi thường gặp

1. Yêu cầu phần cứng và hạ tầng tối thiểu để triển khai hệ thống là gì?

Hệ thống yêu cầu máy chủ chạy hệ điều hành Ubuntu Server 22.04 LTS với cấu hình tối thiểu: 4 vCPU, 8GB RAM, 100GB SSD lưu trữ cơ sở dữ liệu PostgreSQL và Docker Engine 24.0+. Cấu hình này đáp ứng tốt cho quy mô quản lý 500.000 hồ sơ khách hàng hoạt động đồng thời.

2. Hệ thống xử lý bài toán quá tải khi có lượng truy cập đột biến như thế nào?

Hệ thống sử dụng kiến trúc phi trạng thái (Stateless Backend) trên FastAPI kết hợp với Nginx làm Reverse Proxy và Load Balancer. Khi lưu lượng vượt ngưỡng 2.000 RPS, tầng đệm Redis In-Memory đảm bảo hấp thụ 85% các yêu cầu đọc (Read Operations), giảm tải trực tiếp cho cơ sở dữ liệu PostgreSQL.

3. Làm thế nào để đồng bộ dữ liệu với các hệ thống thanh toán và Billing có sẵn của VNPT?

Giải pháp thiết kế module Data Ingestion Worker sử dụng các tác vụ ngầm (Background Tasks/Cron Jobs) định kỳ lấy dữ liệu cước nạp qua giao thức SFTP/Webservice bảo mật nội bộ, chuyển đổi dữ liệu thô (ETL pipeline) về định dạng chuẩn của bảng crm_rfm_segments.

4. Chi phí bảo trì và yêu cầu vận hành sau khi bàn giao ra sao?

Do xây dựng trên nền tảng công nghệ mã nguồn mở tiêu chuẩn (Python, PostgreSQL, React, Redis), công ty không phải trả bất kỳ khoản phí bản quyền định kỳ nào cho bên thứ ba. Hoạt động vận hành chỉ cần 01 kỹ sư quản trị hệ thống và 01 chuyên viên phân tích dữ liệu bán thời gian.

5. Dữ liệu khách hàng được bảo vệ như thế nào trước nguy cơ rò rỉ nội bộ?

Hệ thống tích hợp mô hình phân quyền ma trận (RBAC): Nhân viên quầy giao dịch chỉ xem được thông tin liên lạc và gói cước hiện tại (các trường CMND/Họ tên bị che dạng 048******123); chỉ quản trị viên cấp Trung tâm được cấp quyền giải mã đầy đủ khi có phê duyệt điện tử từ Ban Giám đốc.


Kết luận

Đồ án tốt nghiệp "Giải pháp hoàn thiện hoạt động quản trị quan hệ khách hàng cho Công ty VNPT - VinaPhone Miền Trung" đã giải quyết thành công bài toán chuyển đổi mô hình quản trị quan hệ khách hàng từ phương thức thủ công, rời rạc sang một hệ thống số hóa toàn diện theo khung tiêu chuẩn quốc tế IDIC. Việc kết hợp chặt chẽ giữa lý luận quản trị kinh doanh, phân tích dữ liệu định lượng RFM và kiến trúc công nghệ thông tin hiện đại (FastAPI, PostgreSQL, Redis) không chỉ nâng cao hiệu suất làm việc của đội ngũ nhân sự mà còn tạo ra giá trị kinh tế trực tiếp, giúp doanh nghiệp củng cố thị phần và gia tăng mức độ gắn kết của khách hàng tại 13 tỉnh thành miền Trung.