Lập trình theo cặp (pair programming): hai người một máy có thật sự hiệu quả?

  • author-image

    Nguyễn Đình Cường

  • blog-tag
  • blog-comment 0 comment
  • created-date 09 Nov, 2026
blog-thumbnail

Hai người ngồi chung một máy để viết một đoạn code nghe có vẻ phí thời gian. Nhưng nhiều đội phần mềm dùng nó có chủ đích và thấy lợi ích rõ về chất lượng cũng như chia sẻ kiến thức. Hãy xem khi nào nó thật sự phát huy tác dụng.

Lập trình theo cặp là gì

Hai người cùng làm một nhiệm vụ trên một máy hoặc cùng chia sẻ màn hình. Thông thường có hai vai:

  • Driver (người cầm lái): trực tiếp gõ code.
  • Navigator (người dẫn đường): quan sát, suy nghĩ hướng đi, phát hiện lỗi, tra cứu.

Hai người đổi vai thường xuyên, ví dụ mỗi 15 đến 30 phút.

Lợi ích

  • Phát hiện lỗi sớm vì luôn có người thứ hai nhìn vào code.
  • Chia sẻ kiến thức nhanh, đặc biệt giữa người mới và người có kinh nghiệm.
  • Quyết định thiết kế tốt hơn nhờ thảo luận ngay lúc viết.
  • Ít bị phân tâm, vì hai người giữ nhau tập trung.
  • Giảm nguy cơ chỉ một người hiểu một phần hệ thống.

Hạn chế

  • Tốn sức tập trung và giao tiếp liên tục.
  • Nếu hai người không hợp tính, có thể căng thẳng.
  • Với việc đơn giản, lặp lại, hiệu quả không cao.
  • Cần lịch làm việc tương thích, nhất là khi làm từ xa.

Khi nên dùng

  1. Giải quyết vấn đề khó, chưa có hướng rõ ràng.
  2. Hướng dẫn thành viên mới làm quen với codebase.
  3. Sửa lỗi phức tạp ở phần code ít người hiểu.
  4. Thiết kế một thành phần quan trọng.
  5. Học công nghệ mới cùng nhau.

Bí quyết để làm tốt

  • Nói ra suy nghĩ: driver nói ra điều mình đang làm, navigator nói điều mình thấy.
  • Tôn trọng: đừng giành bàn phím, đừng chê bai.
  • Đổi vai đều đặn: dùng đồng hồ nhắc nếu cần.
  • Nghỉ giải lao: làm theo cặp mệt hơn bạn nghĩ.
  • Thống nhất mục tiêu trước: cùng viết ra việc cần xong trong buổi.

Pair khi làm từ xa

Hãy dùng công cụ chia sẻ màn hình hoặc soạn thảo cộng tác, kèm kênh thoại ổn định. Cài sẵn môi trường giống nhau và thống nhất cách đổi vai, ví dụ đẩy nhánh Git qua lại hoặc chia sẻ quyền điều khiển.

Cho người tự học

Bạn không cần công ty mới thử được. Hãy rủ một bạn cùng học làm bài tập theo cặp, hoặc tham gia buổi lập trình chung trong cộng đồng. Người hướng dẫn nên cố gắng ngồi ở vai navigator và để người học gõ, vì tự gõ giúp ghi nhớ tốt hơn. Đừng vội nhảy vào gõ hộ, hãy đặt câu hỏi gợi mở như "bạn nghĩ bước tiếp theo là gì?".

Mob programming là gì

Mở rộng hơn, cả nhóm nhỏ cùng làm một nhiệm vụ trên một màn hình, với một người gõ và những người còn lại điều hướng. Cách này phù hợp để giải quyết vấn đề khó hoặc chia sẻ ngữ cảnh, nhưng cần điều phối tốt.

Một buổi pair lập trình mẫu

Giả sử hai người cần thêm chức năng tìm kiếm vào một danh sách. Mười phút đầu họ cùng viết ra các trường hợp cần xử lý: chuỗi rỗng, không tìm thấy, chữ hoa chữ thường. Sau đó người A gõ kiểm thử đầu tiên trong khi người B gợi ý tên và cấu trúc. Họ đổi vai khi viết phần cài đặt. Cuối buổi cả hai cùng đọc lại, dọn tên biến và ghi chú việc còn lại.

Cách làm này giữ cả hai luôn tham gia, giảm lỗi và để lại bộ kiểm thử rõ ràng. Nếu một người bắt đầu thụ động, đó là dấu hiệu cần đổi vai hoặc nghỉ ngắn.

Những tín hiệu cho thấy pair không hiệu quả

Nếu một người luôn chiếm bàn phím, người kia lướt điện thoại, hoặc cả hai tranh cãi không dứt về chi tiết nhỏ, hãy dừng lại và thống nhất lại cách làm. Có thể cần đặt giới hạn thời gian cho mỗi hướng thử, hoặc tách ra làm riêng rồi gặp lại để so sánh. Pair là công cụ, không phải nghi thức bắt buộc.

Kết luận: lập trình theo cặp không phải phép màu và không cần dùng cho mọi việc. Hãy thử trong vài buổi, ghi nhận kết quả rồi quyết định có giữ không.

Nếu bạn muốn luyện kỹ năng viết code vững chắc trước khi làm việc theo cặp, hãy xem các khóa thực hành tại codebem.com.

author_photo
Nguyễn Đình Cường

0 comment