Nếu ngày mai đồ thị đóng góp GitHub của bạn biến mất, liệu điều đó có khiến bạn trở thành một nhà phát triển tồi tệ hơn không? Câu hỏi này tưởng chừng đơn giản nhưng lại chạm đến một vấn đề cốt lõi trong cách chúng ta – những người làm việc trong ngành công nghệ – đánh giá bản thân và đồng nghiệp. Trong nhiều năm qua, dù có ý thức hay không, chúng ta đã được “huấn luyện” để coi những ô vuông màu xanh lá trên GitHub như một thước đo trực tiếp cho năng lực, tính kỷ luật, hay thậm chí là niềm đam mê của một lập trình viên.
Thực tế phũ phàng là:
Đồ thị đóng góp GitHub không đo lường năng suất, kỹ năng, hay mức độ gắn kết thực sự của một nhà phát triển.
Mục lục
Những Câu Chuyện Thực Tế Phơi Bày Sự Thật Đằng Sau Đồ Thị GitHub
Để làm rõ hơn quan điểm này, hãy cùng khám phá hai câu chuyện có thật đã truyền cảm hứng cho tôi viết bài blog này. Chúng sẽ giúp chúng ta nhìn nhận vấn đề một cách khách quan và sâu sắc hơn.
Câu chuyện 1: Sự Kỳ Diệu của Auto-Commit và “Tính Nhất Quán” Giả Tạo 🤖
Gần đây, tôi đọc được một bài viết thú vị trên DEV, nơi tác giả chia sẻ về việc anh ấy đã tạo ra một ứng dụng tự động commit code lên GitHub. Lý do anh đưa ra là anh ấy lập trình rất nhiều, nhưng thường xuyên quên commit và đẩy thay đổi của mình – điều này khiến đồ thị đóng góp của anh trông “nghèo nàn” một cách đáng tiếc.
Đây là một ví dụ về đoạn mã hoặc hành động tự động hóa mà anh ấy có thể đã sử dụng:
# Ví dụ về một script tự động commit
#!/bin/bash
# Tạo một tập tin rỗng hoặc thay đổi tập tin hiện có để kích hoạt commit
touch empty_file_for_commit.txt
git add .
git commit -m "Daily automated contribution to maintain consistency"
git push origin main
Tôi thực sự tôn trọng sự tò mò, sáng tạo và khả năng biến ý tưởng thành một dự án hoạt động. Tuy nhiên, một câu hỏi lớn ngay lập tức xuất hiện trong đầu tôi:
Ai trên đời lại đánh giá một lập trình viên dựa trên số lượng commit của họ?
Điều này thực sự vô nghĩa.
Nhiều người trong phần bình luận bài viết đó cũng đồng tình. Nhưng một số khác lại chia sẻ những câu chuyện từ các buổi phỏng vấn xin việc, nơi các quản lý thực sự đã hỏi ứng viên tại sao hoạt động GitHub của họ lại thấp. Ngay cả khi câu trả lời hoàn toàn hợp lý (ví dụ: phần lớn công việc của họ nằm trong các kho lưu trữ riêng tư của công ty) và buổi phỏng vấn vẫn tiếp tục bình thường, vẫn còn đó một cảm giác khó chịu – ứng viên bị đẩy vào thế phòng thủ mà không có lý do chính đáng nào.
Cá nhân tôi đã tham gia vào rất nhiều quy trình tuyển dụng và chỉ một lần duy nhất được hỏi về GitHub của mình. Có lẽ tôi chỉ may mắn? Tuy nhiên, thực tế này cho thấy áp lực không cần thiết mà đồ thị đóng góp mang lại.
Câu chuyện 2: Đồ Thị “Ác Mộng” và Giới Hạn Con Người 😱
Vài ngày trước đó, một người bạn từ công việc cũ của tôi chia sẻ một ảnh chụp màn hình đồ thị đóng góp của một người khác. Tôi đã điều chỉnh nó ở đây để bảo vệ quyền riêng tư, nhưng nó trông đại khái như thế này:
[](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiz41jmks57xhf982sqgf.png)
Ấn tượng? Có thể. Đáng sợ? Cũng có thể.
Bạn tôi – một người rất đồng cảm – không hề cảm thấy ngưỡng mộ. Thay vào đó, anh ấy cảm thấy lo lắng sâu sắc.
* Sự cân bằng giữa công việc và cuộc sống ở đâu?
* Người này nghỉ ngơi khi nào?
* Làm sao con người này có thể hoạt động được như vậy?
Bí ẩn nhanh chóng được giải đáp. Đồ thị có lẽ trông như vậy vì người dùng có một công việc chạy **sao lưu cơ sở dữ liệu hàng ngày**.
Đây là một ví dụ đơn giản về một cron job hoặc script tự động có thể tạo ra các commit liên tục:
# file: daily_backup.sh
#!/bin/bash
BACKUP_DIR="/var/backups/database"
REPO_DIR="/home/user/github_backup_repo"
cd $REPO_DIR
# Tạo bản sao lưu database
mysqldump -u user -pPASSWORD database_name > $BACKUP_DIR/database_$(date +%Y%m%d%H%M%S).sql
# Thêm và commit vào GitHub
git add $BACKUP_DIR/database_*.sql
git commit -m "Automated daily database backup: $(date)"
git push origin main
Dù thực tế, người này cũng rất tích cực trên GitHub và đóng góp vào nhiều dự án mã nguồn mở – chỉ là không đến mức *khủng khiếp* như đồ thị kia thể hiện.
Và đây chính là cốt lõi của vấn đề. Những hoạt động tự động hóa, dù hữu ích, lại làm sai lệch hoàn toàn bức tranh về sự đóng góp thực tế của một cá nhân.
Khi Nào Đồ Thị Đóng Góp Trở Thành Tiêu Chí Đánh Giá Lập Trình Viên? 🤔
Theo thiết kế ban đầu, nó không bao giờ nên như vậy. Và nó không thể đứng vững ngay cả với những lẽ thường tình cơ bản nhất.
Thế nhưng, bằng cách nào đó, chúng ta vẫn nhìn vào nó và nghĩ:
* “Ồ, người này làm việc rất chăm chỉ.”
* “Dev này thỉnh thoảng mới commit một lần – có lẽ không thực sự gắn kết.”
Một chuyện khác khi những người ngẫu nhiên nghĩ như vậy. Điều tồi tệ hơn nhiều là khi nó xảy ra trong quá trình tuyển dụng.
Bởi vì dựa trên đồ thị đóng góp, bạn không thể biết:
* **Mức độ giỏi của ai đó:** Một lập trình viên có thể viết ra một giải pháp phức tạp và tối ưu chỉ trong vài commit lớn, trong khi người khác có thể tạo hàng trăm commit nhỏ để sửa những lỗi vặt hoặc thay đổi định dạng.
* **Mức độ bận rộn thực sự của họ:** Như câu chuyện về các kho lưu trữ riêng tư của công ty đã chỉ ra, rất nhiều công việc quan trọng không bao giờ xuất hiện trên đồ thị công khai.
* **Hoạt động đó có ý nghĩa gì không:** Đôi khi, một commit đơn giản có thể giải quyết một vấn đề lớn, trong khi một loạt commit liên tục có thể chỉ là do một tác vụ tự động hoặc những thay đổi nhỏ không đáng kể.
Một người có thể quên commit hoặc làm việc chủ yếu trong các kho lưu trữ riêng tư. Một người khác có thể giải quyết các vấn đề phức tạp trong nhiều tuần chỉ với rất ít commit. Trong khi đó, ai đó có thể chỉ đang chạy một công việc tự động mỗi ngày. 🤷♂️ Sự đa dạng trong cách làm việc này khiến đồ thị đóng góp trở thành một thước đo cực kỳ không đáng tin cậy.
Bằng Chứng Sống: Đồ Thị Đóng Góp “Trống Rỗng” Không Nói Lên Điều Gì 🙃
Tôi thực sự là một ví dụ điển hình cho điều này.
Đây là đồ thị đóng góp GitHub “ấn tượng” của tôi cho năm 2023:
[](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flqozis1paj21tzuiwuy4.png)
Vậy điều gì đã xảy ra vào năm 2023? Có lẽ một số bạn sẽ hỏi: “Sylwia, bạn đã ngủ suốt cả năm sao? Hay bạn đã trúng số?” 🤔
Sự thật là tôi là một tech lead trong một startup xây dựng công nghệ chống rửa tiền. Tôi đã làm việc chăm chỉ, xây dựng rất nhiều thứ, và thành thật mà nói – nhờ những đóng góp vào các kho lưu trữ riêng tư của công ty tôi, đồ thị GitHub của tôi trông khá ấn tượng.
Sau đó, vào năm 2025, tôi thay đổi công việc và đơn giản là bị loại bỏ khỏi những kho lưu trữ đó. Và thế là… đồ thị của tôi biến mất.
Ngày nay, tôi tạo các kho lưu trữ demo nhỏ mỗi tháng một lần – và với lối sống hiện tại, tôi coi đó là *rất nhiều*. Điều này chứng tỏ rằng, đồ thị GitHub chỉ phản ánh những hoạt động công khai và tạm thời, chứ không phải toàn bộ quá trình hay giá trị đóng góp của một người.
Điều Gì Thực Sự Quan Trọng Trên GitHub? 🧠
Tất nhiên, vẫn có giá trị khi nhìn kỹ hơn vào GitHub của ai đó và xem **họ xây dựng cái gì**.
* Họ có đóng góp vào mã nguồn mở không?
* Họ có tạo ra các dự án thú vị của riêng mình không?
* Liệu các dự án đó có giải quyết được vấn đề thực tế, hay thể hiện khả năng tư duy, thiết kế kiến trúc?
Đôi khi, một người chỉ với vài dự án chất lượng, vững chắc và thậm chí vài tháng không hoạt động lại có giá trị hơn nhiều so với một người commit vài dòng code mỗi ngày. Quan trọng là **chất lượng** và **tính hữu ích** của các đóng góp, chứ không phải tần suất.
Ví dụ, một dự án mã nguồn mở được cộng đồng sử dụng rộng rãi, dù chỉ có vài commit lớn, sẽ có giá trị hơn rất nhiều so với một đồ thị xanh lè chứa đầy những dự án nhỏ, không được bảo trì hoặc không có tính ứng dụng cao.
Không Phải Ai Cũng Phải Đóng Góp Cho Mã Nguồn Mở 🚶♀️🚶♂️
Con người đóng góp cho cộng đồng theo những cách rất khác nhau.
Ví dụ, tôi thích viết bài blog. Nó không làm tôi căng thẳng, tôi thích chia sẻ suy nghĩ của mình, và việc viết lách đến với tôi một cách dễ dàng. Tôi viết nhanh, đọc nhanh, và không sử dụng quá nhiều năng lượng não bộ khi làm bất cứ điều gì trong số đó. 😅 Sau một ngày dài làm việc căng thẳng với code – cộng với vô số cuộc gọi như “Sylwia, cái này hoạt động thế nào?” – việc viết code vào buổi tối đơn giản là kiệt sức.
Nhưng tôi có thể dễ dàng hình dung ra những người mà việc viết lách là một cực hình, trong khi viết code sau giờ làm lại là một sự thư giãn thuần túy.
Những người khác lại tạo các hướng dẫn. Một số quay video. Một số chuẩn bị các bài nói chuyện tại hội nghị. Một số chia sẻ công việc trên StackBlitz hoặc CodePen.
Và một số người lại quá gắn bó với công việc toàn thời gian của họ đến nỗi họ đơn giản là không còn thời gian hoặc năng lượng cho bất cứ điều gì khác liên quan đến code. Tất cả những hình thức đóng góp này đều có giá trị, nhưng không phải tất cả đều được thể hiện trên đồ thị GitHub.
Liệu Có Phải Ai Cũng Cần Phải Hoạt Động Tích Cực Trong Cộng Đồng IT? 🧩
Ngành IT có vẻ là một sự bất thường về mặt văn hóa ở đây.
Có ngành nào khác mà mọi người gần như *được kỳ vọng* làm việc miễn phí sau giờ làm vì lợi ích của người khác không?
* Các nhà báo có viết bài báo miễn phí vào ban đêm để phòng hờ không?
* Các luật sư có chuẩn bị hướng dẫn cho cộng đồng để họ có thể có được công việc tiếp theo không?
* Các chủ cửa hàng có tìm hiểu về sản phẩm họ bán sau giờ làm để giúp đỡ khách hàng tốt hơn không? 🤔🤣
Cá nhân tôi yêu cộng đồng IT và tôi vui vẻ đóng góp. Nhưng không phải ai cũng phải làm như vậy.
Mọi người có gia đình, sở thích và những ưu tiên khác nhau. Một số người chỉ đến công ty, làm tốt công việc của họ, và sau đó sống cuộc đời của mình. Và bạn biết không? Họ vẫn có thể là những lập trình viên tuyệt vời – đôi khi còn giỏi hơn cả những “anh hùng” cộng đồng ồn ào nhất.
Không phải mọi lập trình viên đều phải bị ám ảnh bởi IT hay theo dõi mọi xu hướng mới. Chúng ta cũng cần những người đơn giản là xuất hiện và hoàn thành công việc. Và vâng – chúng ta rất cần họ. Sự cống hiến thầm lặng và hiệu quả trong công việc chính thức cũng là một dạng đóng góp cực kỳ quan trọng và có giá trị.
Đến Lượt Bạn Chia Sẻ 💬
Còn bạn thì sao?
* Bạn đã bao giờ được hỏi về đồ thị đóng góp GitHub của mình trong quá trình tuyển dụng chưa?
* Hay không ai từng đề cập đến nó?
Tôi thực sự tò mò muốn biết kinh nghiệm của bạn là gì. Hãy chia sẻ suy nghĩ của bạn trong phần bình luận bên dưới!



