Chuyện thay đổi trong cách làm việc và cốc bia

Đăng bởi: Admin | Lượt xem: 739 | Chuyên mục: Chia Sẻ

Chúng ta bắt đầu bài viết hôm nay bằng câu chuyện hư cấu về một chàng coder điển trai tài năng tên H.H.N. N. là một coder tài năng, tốt nghiệp đại học F. danh tiếng. Ngay sau khi ra trường, N. đã được một công ty lớn F. mời vào làm việc với mức lương ngàn đô. Trong công ty lớn, N được học bài bản về các quy trình làm việc, qui tắc viết code sạch. Chứng tỏ được khả năng của bản thân, sự nghiệp của N đi lên như diều gặp chó, nhầm, gặp gió.


Tuy nhiên, do chán bộ máy làm việc cồng kềnh phức tạp,  N xin nghỉ việc, chuyển sang công ty K. nhỏ hơn làm product để có thể làm những điều mình thích. Qua công ty mới, N vẫn cứng rắn áp dụng các qui trinh, cách code mình đã làm việc ở công ty cũ. Khi nghe đồng đội phàn nàn, N vẫn cứng đầu bảo thủ không thay đổi, cho rằng cách của mình là đúng nhất. Dần đà, dù có tài nhưng N nói ko ai nghe, còn bị team xa lánh.

Thế rồi, một hôm nọ, N đi nhậu cùng với team. Rượu vào lời ra, lúc rót bia cho H, anh team leader lỡ rót hơi quá chén làm bia tràn ra ngoài. N bảo “Ơ anh H mới uống có vài lon đã say rồi à?”. Anh team lead chỉ cười nhẹ: “Ừ nhỉ, cốc đã đầy rồi thì làm sao rót thêm bia được. Người mà đầu óc chỉ chứa đầy những cái cũ thì làm sao có thể tiếp thu cái mới được, em nhỉ!”

Cốc đã đầy thì làm sao rót bia thêm vào được

Cốc đã đầy thì làm sao rót bia thêm vào được

Kết thúc bữa nhậu, N về nhà trằn trọc không ngủ được (Chắc do đồ ăn quán nhậu nấu không hợp vệ sinh). N cứ mãi ngẫm nghĩ về câu nói của anh team lead và quyết định thay đổi. 

Sau hôm đó, N trở thành một con người hoàn toàn khác, luôn học hỏi cái mới và tiếp thu góp ý của người khác. Anh dần trở thành một coder thành công, danh tiếng, còn được người đời biết đến với cái tên codeaholicguy.

Từ chuyện kinh nghiệm và kiến thức

Trong quá trình đi học, đi làm, ta thường học được rất nhiều thứ: Qui trình làm việc, cách viết code, cách làm việc nhóm,… Các kinh nghiệm này giúp bạn giải quyết vấn đề nhanh hơn, đạt năng suất cao hơn, làm ra sản phẩm có chất lượng tốt hơn.

Có nhiều kinh nghiệm, bạn sẽ dần trưởng thành hơn và có giá hơn trong mắt nhà tuyển dụng. (Đây là lý do mà mức lương cho các bạn 2-3 năm kinh nghiệm hoặc senior cao hơn các bạn mới ra trường)

Tuy nhiên, trong ngành IT, kiến thức thay đổi rất nhanh. Các bạn đi làm lâu thường dễ mắc phải “bẫy kinh nghiệm”. Khi tiếp xúc với những công việc lặp đi lặp lại, kinh nghiệm các bạn tăng nhưng kiến thức không tăng.

 
 

Những kinh nghiệm này có thể cản trở quá trình bạn học và tiếp thu cái mới!

Khi kinh nghiệm trở thành rào cản

Mình từng thấy vài bác developer nước ngoài (vài chục năm kinh nghiệm) kể về sự khó khăn khi chuyển từ ngôn ngữ bậc thấp (assembly, C) lên ngôn ngữ bậc cao (C#, Java).

Ngày xưa, khi họ mới bước chân vào ngành lập trình, các máy tính thường có cấu hình thấp nên họ phải optimize code rất cẩn thận thì chương trình mới chạy ổn định.

Khi các ngôn ngữ bậc cao ra đời, máy tính trở nên mạnh mẽ hơn nhưng họ vẫn giữ thói quen optimize,  tập trung hiệu năng ở các ngôn ngữ cũ mà quên mất những lợi ích mà ngôn ngữ bậc cao đem lại (code ngắn hơn, dễ đọc hơn, làm được nhiều việc hơn).

Một ví dụ khác liên quan đến sự ra đời của ReactJS. Ờ thời jQuery, các web developer đều thống nhất rằng để code dễ bảo trì, cần phải đảm bảo Seperation of Concern: HTML là cấu trúc trang web, CSS làm cho web đẹp hơn , JS bổ sung thêm tính năng cho trang web. Ba thằng này cần phải tách biệt lẫn

15895555_378662615828726_4285818310779420032_o

Tuy nhiên, khi Angular và React ra đời, khái niệm này đã bị phá vỡ! Angular cho phép nhúng JS vào HTML với ng-repeat, ng-show, ng-click. React thì ngược lại, cho phép nhúng HTML vào JS với JSX.

Ban đầu, giới web developer phản đối điều này, nhưng sau khi thử sử dụng Angular và React họ mới nhận ra là hoá ra việc gộp lại lại giúp code gọn hơn và dễ bảo trì hơn. Ngạc nhiên chưa?

Cho đến phương cách sống

Bạn thấy đấy, nếu cứ bảo thủ giữ lấy những điều mình cho là đúng thì bạn sẽ rất khó tiếp thu cái mới, cũng giống như ly bia đã đầy thì không thể rót thêm được nữa.

Ban đầu, bản thân mình ban đầu cũng từng chửi React vì cái sự sida, viết HTML chung với JS của nó nên không thèm học. Tuy nhiên, sau khi gạt bỏ định kiến, bắt đầu dùng thử thì mình mới nhận ra cái hay của React và lý do mà người ta thiết kế ra framework như vậy.

Không chỉ trong công việc mà trong cuộc sống cũng thế. Sau gần 2 năm viết, blog cũng đạt được kha khá thành công, được nhiều bạn đọc ủng hộ (và mua sách nữa). Điều này làm đôi khi mình chủ quan, nghĩ rằng mình đã đủ giỏi, đã là “một cái gì đó”, nên đôi khi hay nghi ngờ khả năng của người khác.

Tuy nhiên, mình nhận ra lối suy nghĩ này sẽ cản trở khả năng phát triển của bản thân. Sau khi nhìn lại và gạt bỏ cái tôi qua một bên, mình chợt thấy những thứ mình biết, mình làm, thật ra chả là gì cả! 

Mình luôn tự nhủ “phải tự biết mình là ai”, phải tiếp tục học để không ngủ quên trên chiến thắng. Do vậy, mình vẫn lên ngocdenroi học cách viết và phát triển blog, lên simpleprogrammer và medium để học hỏi các kinh nghiệm của các lập trình viên đi trước.

Kết

Một lời khuyên nho nhỏ mình dành cho các bạn: Nếu bạn đạt được một thành công nho nhỏ (được công việc ngon, hoàn thanh module khó, giỏi technical nhất team), đừng vội ngủ quên trên chiến thắng.

Bởi vì con đường phía trước vẫn còn rất dài, hãy giữ cho chiếc cốc của bản thân mình luôn vơi để có thể chứa thêm nước mới.

vncoder logo

Theo dõi VnCoder trên Facebook, để cập nhật những bài viết, tin tức và khoá học mới nhất!