Nguyen Le PhongNguyen Le Phong

Culture ẩn trong những review nhỏ

Một ghi chú bình tĩnh về cách engineering culture hiện ra trong những review nhỏ: wording, patience và care mà team mang vào feedback bình thường.

Pull request nhỏ đến mức fit trong một màn hình. Một helper đổi tên, một test mới, và một branch condition ngắn. Tháng sau chắc không ai nhớ nó. Nhưng review vẫn quan trọng, vì comment nằm ở đó dạy team một điều về cách mọi người được kỳ vọng nói chuyện với nhau.

Ba teammate bình tĩnh review các thẻ trống và màn hình code trừu tượng trong một buổi review nhỏ ở văn phòng.
Những review nhỏ dạy mọi người kiểu care nào là bình thường trong team.

Culture thường được nói bằng những từ lớn: ownership, excellence, trust, psychological safety. Những từ đó chỉ hữu ích nếu chúng sống sót qua các khoảnh khắc bình thường. Một review nhỏ là một khoảnh khắc như vậy. Nó cho thấy quality là craft chung hay là phán xét cá nhân.

Sự khác biệt có thể rất yên lặng. Một reviewer viết, tên này khó hiểu. Người khác viết, mình phải đọc lại tên này vì nó nghe như mutate state, nhưng thật ra chỉ format output. Mình làm distinction đó rõ hơn được không? Cả hai comment đều yêu cầu change. Chỉ một comment cho tác giả con đường để hiểu concern.

Review nhỏ tiết lộ mọi người đang muốn thắng hay muốn cải thiện work. Nếu suggestion nào cũng nghe như verdict, author sẽ phòng thủ. Nếu concern nào cũng được làm mềm đến mức mơ hồ, quality chịu thiệt. Điểm giữa là direct và generous: rõ về problem, tôn trọng person, cụ thể về behavior mong muốn.

Nó cũng cho thấy team có coi trọng context không. Một reviewer đòi test mà không giải thích risk có thể đúng, nhưng author học được ít hơn. Một reviewer nói branch này bảo vệ retry path mình từng làm hỏng cho author lý do để care. Comment trở thành một lần chuyển system memory nhỏ.

Author cũng shape culture. Một phản hồi đơn giản như good catch, mình miss retry case, đã thêm coverage giữ review ở trạng thái collaboration. Ignore comment, push change không giải thích, hoặc xem suggestion nào cũng là attack dạy team một norm khác. Review là cuộc nói chuyện hai chiều, không phải cái cổng với một người giữ chìa khóa.

Kích thước change không làm culture nhỏ hơn. Thật ra, review nhỏ là nơi dễ luyện habit nhất vì stakes thấp hơn. Nếu team không thể vừa careful vừa kind trên diff nhỏ, team sẽ khó làm điều đó khi migration risky hay incident fix xuất hiện.

Theo thời gian, mọi người học được thời tiết cảm xúc của một codebase. Họ biết có an toàn khi hỏi câu cơ bản không, concern có được nghe không, mistake có được gọi tên mà không shame không. Thời tiết đó được xây từng comment một.

Một review nhỏ có thể không đổi sản phẩm theo cách visible. Nhưng nó đổi team đang build sản phẩm. Review bình thường gần nhất của bạn dạy teammate mới điều gì về cách quality được bàn ở đây?

Bạn thấy bài viết thế nào?