Công ty TNHH TMĐT Công nghệ LP

4.8/5 (917 Reviews)
Tác giả:
Tác giả: Lê Văn Phú

Pair programing là gì?

Pair programing là một phương pháp làm việc đôi trong ngành lập trình mà cả 2 lập trình viên sẽ cùng nhau làm việc trên một máy tính (PC hoặc laptop cá nhân), bao gồm cả chuột, bàn phím và cả màn hình, tất cả mọi thứ. Nói chung là cả 2 hoặc 3 sẽ cùng làm một việc, cùng một thời gian, cùng một không gian trên cùng một máy tại một thời điểm.

Trong đó, một người có vai trò là Coding, một người có vai trò theo dõi, hướng dẫn hay định hướng hỗ trợ. Vai trò này luôn thay phiên nhau trong một khoảng thời gian hợp lý. LPTech áp dụng kỹ thuật này trong mỗi dự án Thiết kế website chuyên nghiệp của LPTech để đem đến cho KH những website do LPTech thiết kế, đảm bảo kỹ thuật website chuẩn seo và tốc độ cao, an toàn bảo mật. Ngoài ra LPTech còn áp dụng kỹ năng làm việc nhóm chuyên nghiệp của người Nhật đó là Horenso vào các dự án web và seo tại LPTech đem lại hiệu quả công việc vô cùng cao.

Pair programming là gì? Làm việc hiệu quả bằng Pair programming

Người code chính thì được gọi là Driver. 

Mục đích chính là viết code và nghĩ về vấn đề đang giải quyết hiện tại, công việc này thông thường thường chỉ là 1 phần nhỏ trong 1 vấn đề lớn cần giải quyết trong dự án.

Người đứng bên cạnh được gọi là Navigator. 

Và các Navigator sẽ tập trung hơn vào việc phát hiện lỗi và các vấn đề khác như cấu trúc lập trình và những gì cần thiết cho các công đoạn tiếp theo sau đó. Ý tưởng là để chia trách nhiệm giữa DriverNavigator để tạo ra và tạo một quy trình làm việc ổn định, hạn chế và tránh lỗi, cấu trúc tốt hơn và trong khi làm thì kiến thức được chia sẻ nhiều hơn trong team. Cả 2 nên liên tục nói chuyện với nhau về công việc để giữ được sự tập trung. Pair programming rất tốt cho việc học hỏi của cả hai người tham gia.

Phương pháp này mang lại ít lỗi hơn 15% (Cockburn & Williams) nhưng sẽ tốn 15% cho công sức (sức khỏe, thể trạng) so với việc lập trình một mình.

Pair programing là một phương pháp không hề mới đối với những công ty đang áp dụng Agile vào công việc, bởi tính chất “hiệu quả” và “trưởng thành”, ngày nay phương pháp này được rất nhiều nơi áp dụng, trong đó đây là cách mà LPTech luôn cho các thành viên team lập trình làm việc cùng nhau.

Thay đổi vai trò trong Pair programing

Giữa 2 vai trò này luôn luân phiên thay đổi với nhau. Thường thì 20 phút một lần (tốt nhất là 30 phút). Do việc trao đổi và sử dụng bộ não liên tục sẽ khiến cả 2 cảm thấy dễ mệt hơn so với khi lập trình một mình. Vì vậy, hãy nghĩ giải lao khi cả 2 cảm thấy mệt mỏi. Theo kinh nghiệm của LPTech thì cứ sau 90 phút sử dụng phương pháp Pair programing, chúng ta nên nghỉ giải lao một lần để luôn được làm việc trong trạng thái tốt nhất. Và tất cả thành viên đều được gõ code và chính tay mình làm.

Nguyên tắc làm việc trong Pair programing

Để đạt được hiệu quả tốt nhất đối với phương pháp Pair programing, bạn cần tuân thủ một số nguyên tắc như sau. Và phải áp dụng một cách triệt để.

Thường xuyên luân phiên thay đổi vai trò:

Việc này sẽ giúp cả hai luôn được tươi mới, không nhàm chán.

Giữ đúng vị trí, vai trò:

Navigator không nên can thiệp vào bàn phím lúc Driver đang code, Driver cũng chỉ dừng ở mức truyền đạt cho Navigator biết mình sắp làm gì, đang làm gì. Nếu cả 2 có xung đột ý tưởng, tốt nhất hãy trải nghiệm từng ý tưởng, nếu vẫn không giải quyết được sự xung đột, hãy nhờ những người có kinh nghiệm hỗ trợ.

Tôn trọng lẫn nhau:

Tránh các trao đổi mang tính tiêu cực, hãy cố gắng lắng nghe và khiêm tốn. Sẽ có rất nhiều phương pháp để giải quyết vấn đề, hãy tôn trọng những lời khuyên.

Thường xuyên trao đổi với nhau:

Vì chỉ có trao đổi mới có thể giúp cả 2 hiểu rõ nhau hơn cũng như biết được cả 2 đang tập trung vào vấn đề gì.

Tự tin:

Có những lúc một trong hai sẽ cảm thấy tự ti về những gì mình đang làm, đừng ngại ngùng, việc clean code, thiếu dấu chấm phẩy, sai syntax hay chưa nắm rõ về kỹ thuật… sẽ luôn xảy ra, hãy dành cho nhau chút thời gian để chỉnh sửa cũng như tìm hiểu thêm về những gì mình đang thiếu sót.

Tinh thần trách nhiệm cao:

Kết quả là do cả 2 cùng nhau tạo nên, cùng nhau chịu trách nhiệm.

Tập trung vào vấn đề đang làm:

Trong suốt quá trình pair programing, sẽ có những vấn đề phát sinh, hãy cố gắng focus vào vấn đề chính, các vấn đề vừa phát hiện hãy đem nó vào list issue nếu nó nhỏ, chỉ thật sự thảo luận khi vấn đề đó lớn.

Coding để mọi người dễ maintenance:

Coding dựa trên rule do 2 người quyết định, đảm bảo sao này cả 2 đều có thể maintenance.

> Tìm hiểu thêm về kiến trúc độc lập ứng dụng tại:Clean Architecture là gì?

Hiệu quả mang lại của phương pháp Pair programing là gì?

Để có thể cảm nhận được những lợi ích của pair programing, cách tốt nhất là hãy thử trải nghiệm nó. LPTech đã tự trải nghiệm trong suốt thời gian qua bằng phương pháp này và rút ra được một số điểm như sau:

  1. Code an toàn hơn: Tất nhiên khi có 2 bộ não focus vào việc tốt thì sẽ giảm được error và failure.
  2. Tiết kiệm thời gian: Thực ra về thời gian develop có thể là một chút nhanh hơn hoặc chậm hơn, nhưng chắc chắn là về mặt chất lượng code được cải thiện đáng kể, nên chúng ta sẽ tiết kiệm được thời gian fix bug và refactor code.
  3. Nhiều tiền hơn: Vì chúng ta biết rằng thời gian là tiền bạc nên chúng ta tiết kiệm thời gian chính là chúng ta có cơ hội kiếm thêm tiền. Và còn nếu chúng ta có thể có ít bug và các vấn đề khác chúng ta sẽ có nhiều user hơn, nhiều user có nghĩa là nhiều tiền hơn 
  4. Code tốt hơn: Với một đối tác bạn có thể thảo luận về structure và các solution khác nhau, điều mà bạn sẽ không thể làm được khi có một mình.
  5. Nhóm kiến thức tốt hơn: Pair có nghĩa giao tiếp nhiều hơn. Các tác dụng là kiến thức chia sẻ qua team tốt hơn, chia sẻ đủ các loại vấn đề liên quan đến code dự án, công ty, flow công việc và bất cứ điều gì khác liên quan.
  6. Học tập nhanh hơn cho Juniors: Juniors thường học nhanh hơn nhiều khi được code chung với senior, hiểu biết nhiều hơn về code, về team và cả về công ty.
  7. Hiểu biết tốt hơn về task: Để có sự hợp tác tốt điều quan trọng là phải hiểu rõ ràng về task, bằng cách giải thích về task chúng ta thường nhận được một sự hiểu biết tốt hơn về nó. Thậm chí câu hỏi phát sinh và giải pháp đã có thậm chí trước khi bất kỳ dòng code nào được viết.
  8. Chia sẻ kinh nghiệm qua các thành viên trong team: Trong pair programming, bạn sẽ không ngừng học hỏi từ đối tác của bạn, thậm chí nếu bạn là senior bạn vẫn có những điều phải học hỏi. Nó cũng là thời điểm tốt để chia sẻ lời khuyên tốt, kinh nghiệm của bạn khi bạn đang code.
  9. Sự tự tin: pair programming thường có một mức độ cao hơn của sự tự tin khi hai bộ não cùng code và test.
  10. Happier employees: Một số người nghĩ nó thú vị hơn và hài lòng hơn với môi trường làm việc của họ. Nó cũng là một thời gian tuyệt vời để kết bạn với những người bạn mới thông qua việc code cùng nhau 
  11. Tập trung cao hơn: Vì bạn phải làm việc chung với người khác, bạn sẽ phải tập trung hơn, sự tập trung và giữ kết nối thông qua việc nói chuyện về task giúp bạn giữ tập trung hơn.

Thủ thuật khi Pair programming

Đây là 1 số thủ thuật khi các bạn LPTech cùng nhau lập trình trên 1 máy tính và áp dụng kỹ thuật Pair Programing vào và rút ra được, hãy cùng thử nào.

  1. Làm việc theo cặp với bất cứ thứ gì bạn cần bảo trì
  2. Hãy để các cặp hình thành tự nhiên hơn là bị gán cố định
  3. Hãy chuyển đổi cặp khi bạn cần một không khí tươi mới
  4. Tránh cặp với cùng một người trong hơn một ngày
  5. Ngồi thoải mái, cạnh nhau
  6. Viết mã thông qua đối thoại. Hãy hợp tác chứ đừng chỉ trích
  7. Người lái và hoa tiêu thường xuyên hoán đổi vai trò cho nhau

Không gian tốt để Pair Programing

Không gian làm việc tốt là thiết yếu để lập trình cặp thoải mái. Bạn cần nhiều không gian để hai người ngồi cạnh nhau được thoải mái. Đặc biệt, khu vực làm việc ở góc phòng sẽ không hiệu quả. Chúng không thoải mái và một người phải ngồi sau người kia, gây ra rào cản tâm lý cũng như vật lý ngăn cản sự cộng tác. LPTech trang trí phòng có nhiều cây và hoa lá để không gian được Fresh hơn, tăng hiệu xuất làm việc của các bạn.

Làm việc hiệu quả bằng Pair programming

Bạn không cần quá nhiều thứ trang bị để Pair Programing tốt. Thứ tốt nhất LPTech từng thấy chỉ là những chiếc bàn gấp đơn giản được tìm thấy tại bất kì cửa hàng đồ văn phòng tốt nào. Chúng nên dài khoảng 1,6 mét đến 2 mét, để hai người có thể ngồi thoải mái cạnh nhau, và cao ít nhất 1,2 mét. Mỗi bàn cần một máy tính đủ mạnh chuyên dùng cho lập trình. Mỗi máy tính nên có hai bộ bàn phím và chuột để tiện cho mỗi người trong cặp.

Nên có màn hình lớn để cả 2 người có thể nhìn thấy rõ ràng. Một số nhóm hiển thị lên hai màn hình giống nhau, giúp dễ nhìn hơn một chút, nhưng có thể làm bạn chỉ sai màn hình khi thảo luận với nhau. Một số nhóm khác lại phân chia một máy tính lên hai màn hình.

Liên hệ tư vấn - LPTech

Thông tin liên hệ

Nếu bạn có thắc mắc gì, có thể gửi yêu cầu cho chúng tôi, và chúng tôi sẽ liên lạc lại với bạn sớm nhất có thể .

Công ty TNHH TMĐT Công nghệ LP

Giấy phép kinh doanh số 0315561312/GP bởi Sở Kế Hoạch và Đầu Tư TP. Hồ Chí Minh.

Văn phòng: Lầu 4, Toà nhà Lê Trí, 164 Phan Văn Trị, Phường 12,Quận Bình Thạnh, HCMC

Hotline: 0338 586 864

Mail: sales@lptech.asia

Zalo OA:LP Tech Zalo Official

Zalo Sales:033 85 86 86 64 (Sales)


Bài viết cùng chuyên mục

Outsourcing là gì? Sự khác nhau giữa Product và Outsourcing

Outsourcing là gì? Sự khác nhau giữa Product và...

Outsourcing, Outsource là hình thức làm việc sử dụng dịch vụ thuê ngoài để giúp doanh nghiệp hoàn thành nhiệm vụ. Xem bài viết để tìm...

Việc làm remote là gì? Top các ngành làm remote lương cao

Việc làm remote là gì? Top các ngành làm remote...

Làm việc từ xa (remote work) là hình thức làm việc mà người lao động thực hiện công việc của mình ở một địa điểm khác với văn phòng chính...

Design Thinking là gì? 5 bước Design Thinking chuẩn Stanford

Design Thinking là gì? 5 bước Design Thinking...

Design Thinking là gì? 5 bước Design Thinking chuẩn Stanford sẽ giúp cho tổ chức, doanh nghiệp giải quyết được vấn đề một cách thông...

NLP là gì? Lợi ích và các ứng dụng thực tiễn của NLP

NLP là gì? Lợi ích và các ứng dụng thực tiễn của NLP

NLP mang đến nhiều ứng dụng hiệu quả đối với sự phát triển của bản thân và doanh nghiệp, tìm hiểu chi tiết về NLP qua bài viết bên dưới...

COO, CFO, CCO, CIO, CMO là chức vụ gì? Ý nghĩa và viết tắt

COO, CFO, CCO, CIO, CMO là chức vụ gì? Ý nghĩa và...

CMO - viết tắt của Chief Marketing Officer - là Giám đốc Marketing. Tìm hiểu thêm về tâm quan trọng của chức vụ CMO và các vị trí bắt đầu...

Fresher là gì? Cách phân biệt giữa vị trí Fresher và Intern

Fresher là gì? Cách phân biệt giữa vị trí Fresher...

Fresher là gì? Fresher là thuật ngữ dùng để chỉ những sinh viên mới ra trường và đang bắt đầu đi làm. Họ có kiến thức và cần doanh nghiệp...

Sứ mệnh của LPTech ?

LPTech luôn đặt mình vào khách hàng để hiểu được bạn đang gặp khó khăn gì? Các doanh nghiệp hiện nay đang gặp khó khăn về việc quản lý vận hành website của mình. Chưa tìm được đối tác ưng ý và an toàn để giao trọn trọng trách quản lý website cho của bạn.

Thiết kế website nhưng lại không thể tăng thu nhập cũng như chưa có đối tác làm Dịch vụ SEO uy tín tin cậy. Chúng tôi hiểu được điều đó nên dành cả tâm huyết của mình để có thể hỗ trợ các doanh nghiệp một cách tốt nhất.