TOP 26 SAI LẦM MÀ CÁC LẬP TRÌNH VIÊN “NON TRẺ” HAY MẮC PHẢI

Những sai lầm ta hay phạm phải khi bước những bước đầu tiên trên con đường lập trình.

Bài viết hôm nay sẽ nói về những sai lầm ta hay phạm phải khi bước những bước đầu tiên trên con đường lập trình.

Có một câu danh ngôn khá hay là: “Hãy học từ sai lầm của người khác. Bạn sẽ không bao giờ sống đủ lâu để phạm phải tất cả sai lầm.”
Những sai lầm này được chia sẻ bởi các lập trình viên khác, cùng với một phần trải nghiệm cá nhân mình. Hi vọng chúng sẽ là hành trang có ích cho những bạn lập trình viên còn “non trẻ”.

𝗩𝗲̂̀ 𝗰𝗵𝘂𝘆𝗲̂𝗻 𝗺𝗼̂𝗻 𝗹𝗮̣̂𝗽 𝘁𝗿𝗶̀𝗻𝗵
Có thể tóm gọn các sai lầm này trong “5 chữ Éo” và “4 chữ Thích“.

- Éo quan tâm đến tên hàm, tên biến: Giữ thói quen từ khi ra trường, nhiều bạn chỉ đặt tên biến kiểu x1, x2. Rất ngắn gọn và dễ hiểu nhưng đọc … éo hiểu gì.
- Éo quan tâm đến cấu trúc code: Code chỉ cần chạy được là xong, còn cấu trúc code rối như đống giẻ lau cũng mặc.
- Éo quan tâm đến bảo mật: Nghĩ rằng bảo mật là chuyện của bọn hạ tầng IT, mình chỉ lo code tính năng thôi.
- Éo quan tâm đến testing: Code chạy đúng một trường hợp chính là được, mấy case còn lại thì kệ nó, không cần phải test thử, cho bọn tester làm.
- Éo quan tâm đến performance: Không sử dụng cấu trúc dữ liệu hợp lý, không optimize code.

- Thích code theo phong cách phức tạp lòng vòng, hoặc thông minh nhưng … khó hiểu.
- Thích cắm đầu ngay vào code cả khi chưa biết rõ requirement hay business logic: Chưa xác định được vấn đề đã cắm đầu code tìm hướng giải quyết.
- Thích một ngôn ngữ/công nghệ đến mức mù quáng, lúc nào cũng nghĩ nó là nhất.
- Thích code lại từ đầu, tạo ra cái mới mà không quan tâm đến những cái đã có để tiết kiệm thời gian, công sức.

𝗩𝗲̂̀ đ𝗶̣𝗻𝗵 𝗵𝘂̛𝗼̛́𝗻𝗴 𝗽𝗵𝗮́𝘁 𝘁𝗿𝗶𝗲̂̉𝗻
Có thể tóm gọn các sai lầm này trong “5 chữ Không” và “4 chữ Luôn“.

- Không bao giờ đọc sách technical hoặc tìm hiểu ngôn ngữ/công nghệ mới.
- Không bao giờ đọc blog lập trình để học hỏi, tìm hiểu các xu thế mới.
- Không quan tâm đến sức khỏe bản thân: Cày game, uống rượu, code thâu đêm suốt sáng.
- Không bao giờ đào sâu nghiên cứu, chỉ học hời hợt những thứ bề mặt để hoàn thành công việc.
- Không quan tâm tới việc xây dựng quan hệ, tạo dựng hình ảnh, hay phát triển sự nghiệp.

- Luôn tập trung vào chỉ project của mình làm, không quan tâm đến tình hình công ty hay các team khác.
- Luôn trông chờ vào việc team leader/quản lý sẽ định hướng nghề nghiệp, cất nhắc mình: Quản lý có nhiều việc phải làm và nhiều nhân viên cần quản lý, rất khó để học có thời gian chăm chút định hướng cho một cá nhân.
- Luôn thích làm việc với những đứa “dốt” hơn mình để dễ cầm đầu: Muốn giỏi hơn, cần phải làm việc với những người giỏi hơn mình, bị ăn chửi hàng ngày mới khá lên được.
- Luôn sống trong “comfort zone”, chỉ làm những việc mình đã giỏi/đã biết, không muốn mở rộng những kĩ năng đã có. (Xưa mình từng nghe có 1 chị senior C# 6 năm maintainance WinForm, phỏng vấn vào ASWIG và rớt vì… không biết MVC).

𝗩𝗲̂̀ 𝘁𝗵𝗮́𝗶 đ𝗼̣̂ 𝗹𝗮̀𝗺 𝘃𝗶𝗲̣̂𝗰
- Giữ thái độ cao ngạo và biết tuốt: Có thể gặp ở các bạn sinh viên trường ngon, tốt nghiệp loại giỏi (Tất nhiên chỉ 1 bộ phận thôi, bạn nào sinh viên trường ngon, tốt nghiệp loại giỏi mà không có thái độ này thì cứ nghĩ “chắc thằng code dạo nó chừa mình ra”).
- Tỏ thái độ khi có người góp ý cho design/code của mình: Tương tự cái ở trên. Kĩ năng code chỉ là một phần, quan trọng phải là “thái độ”.
- Giữ bo bo kiến thức cho mình, không chia sẻ vì sợ bọn đồng nghiệp sẽ giỏi hơn: Hồi xưa đi học mình cũng hay thế, giờ đi làm đỡ rồi, nên các bạn mới có blog này mà đọc đấy :)).
- Luôn trông chờ được giao việc tận tay, chỉ làm những việc được giao cho làm: Để thăng tiến, bạn cần năng nổ, active hơn. Ví dụ nếu xong task sớm có thể chủ động bảo anh leader “để em phụ anh senior refactor và đưa code lên CI sau này dễ build”….
- Luôn tuân thủ tuyệt đối mệnh lệnh của quản lý, team leader, senior mà không hỏi nguyên do: Cấp trên, senior chưa chắc lúc nào cũng đúng. Tranh luận, phản bác đúng cách sẽ làm họ coi trọng mình hơn (Nhưng nhớ để ý thái độ, đừng tỏ ra hổ báo hay thể hiện).
- Khi đi hỏi người khác, không xác định được vấn đề cần hỏi mà chỉ đặt câu hỏi mơ hồ chung chung, gây khó khăn cho cả người hỏi lẫn người trả lời.
- Chỉ chăm chăm nhờ người khác làm giúp, trả lời giúp: Gặp chút khó khăn là lên mấy group để nhờ người khác Team Viewer giải giùm.
- Quá bi quan/lạc quan/chủ quan khi đánh giá thời hạn hoàn thành công việc: Câu nói hay gặp “Task này em làm 1 ngày là xong“. Một tuần sau: “Anh ơi do nó có bug ẩn nên em làm mới được có 30% hà :'(“.
- Tự hào vì mình làm việc chăm chỉ: Nếu đồng nghiệp chỉ làm 8 tiếng/ngày mà bạn phải làm việc tới 10 tiếng/ngày, đừng tự hào là mình chăm chỉ, mà hãy tự hỏi: Do mình dốt, làm chậm hay do lão leader bóc lột giao việc cho mình nhiều quá???

𝗧𝗮̣𝗺 𝗸𝗲̂́𝘁
Nếu đọc hết danh sách mà các bạn thấy bản thân mình dính hơi bị nhiều “sai lầm” thì cũng đừng lo nhé, cứ từ từ mà sửa.
Kể cả những lập trình viên giỏi nhất cũng từng mắc phải những sai lầm như vậy, huống chi chúng ta.

Điểm khác biệt là ở chỗ: những người giỏi nhận thấy được mình đang mắc sai lầm, từ đó phấn đấu và cải thiện bản thân hơn. Chúc các bạn may mắn trên con đường lập trình mình đã chọn.

Nguồn : Tôi đi code dạo