Developer chỉ cần biết search google?

Bạn đã từng nghe mấy câu dạng này ở đâu đó rồi đúng không? Khả năng cao là từ một bạn fresher hay junior nào đó, mà không, có khi từ một senior dày dặn kinh nghiệm cũng nên. Sách vở, học hành, trải nghiệm làm gì nữa trong khi tất cả đã có trên stackoverflow?

Mình có quen khá nhiều senior developer, những người đã có nhiều năm kinh nghiệm. Có những người cực kỳ nhạy bén, khi có ai đó cần họ trợ giúp, họ chỉ cần nghe mô tả lỗi, hỏi vài câu hỏi nhằm clear vấn đề, sau đó ngay lập tức có thể đưa ra nhiều hướng giải quyết khác nhau. Cũng có những người, kinh nghiệm là thế, nhưng câu trả lời của họ thường sẽ là “E copy lỗi search google là ra liền hà”. Họ gần như không bao giờ có thể nắm được cấu trúc hệ thống, phán đoán được những đoạn code có khả năng gây ra lỗi, tiên lượng trước các vấn đề…

Mình rút ra một điều, chúng ta đang dần có một bộ phận developer tin rằng google có mọi thứ, không cần thiết phải nhét kiến thức vào đầu làm gì nữa cho mệt.

Thật sự, mình chỉ có thể dùng từ thiển cận để mô tả những người đồng tình với loại suy nghĩ trên. Hoặc là họ quá non nớt, chỉ phải đảm nhận những công việc quá đơn giản tới mức chỉ cần copy lỗi ở IDE, paste vào google là xong. Hoặc là họ quá già dặn, làm những công việc tẻ nhạt qua nhiều năm đến mức không cần phải tư duy nữa. Đối với một developer, suy nghĩ này sẽ phá hủy hoàn toàn con đường phát triển của bạn.

Nếu ai đó nói với bạn những câu kiểu này, hãy tránh xa.

Google everything
Một vài dạng tri thức
Không riêng gì công việc lập trình phần mềm, trong sự học nói chung, tri thức đều tồn tại ở nhiều dạng khác nhau, với mức độ sâu sắc khác nhau. Mình tạm chia ra làm 3 loại: thông tin, hiểu biết, khôn ngoan.

Thông tin
Loại này là loại đơn giản nhất, tồn tại trên internet. Với những developer theo trường phái “google everything”, đây là loại tri thức duy nhất mà họ có được.

Thông tin là những mẩu dữ liệu riêng lẻ, không có liên kết, không có tính thực tiễn, không có trải nghiệm cá nhân…

Ví dụ như mình có thể tìm kiếm thông tin bằng cách search google những câu hỏi kiểu như: “how to make a login page in nodejs”, “why my fucking code does not work”…, sau đó làm theo hướng dẫn để đạt được những yêu cầu mà app của mình cần có. Đây là một cách khá hiệu quả để học code, công nghệ.

Như vậy, bạn hoàn toàn có thể dùng một chút kiến thức lập trình sẵn có, cộng thêm thông tin trên google search để build một nodejs app đẹp lung linh. Nếu không tin mình thì bạn có thể search “làm sao để code một nodejs app?”, hay tốt hơn là “how to build a nodejs application?” rồi làm thử xem.

Nhưng nếu như câu hỏi trở thành “làm sao để code một nodejs app cho 100000 user?”, hoặc “làm sao để build một nodejs app thành công?” thì sao? Lúc này những mẩu thông tin riêng lẻ trên internet trở nên vô nghĩa, bạn cần một thứ gì đó sâu hơn.

Hiểu biết
Khi bạn nắm bắt, tiếp thu nhiều thông tin vào đầu, nhớ là phải vào đầu nhé. Qua thời gian, các mẩu thông tin riêng lẻ sẽ dần được não bộ liên kết lại với nhau, tạo thành một hệ thống hiểu biết được liên kết chặt chẽ.

Bạn không chỉ biết cách để xây dựng một app nodejs, bạn còn biết công nghệ nào nên được kết hợp với nodejs cho một app 100000 user, bạn nắm rõ những vấn đề sẽ xảy ra khi một lượng lớn user truy cập cùng lúc vào ứng dụng, bạn rành rõi các loại kiến trúc phần mềm phù hợp cho hệ thống lớn… Tất cả những mẩu thông tin vụn vặt đó tạo nên một hệ thống hiểu biết, giúp bạn nắm bắt được toàn bộ vấn đề. Một google developer sẽ không thể làm được điều này, vì họ chỉ tìm kiếm thông tin cho một task cụ thể, một vấn đề tức thời. Do đó kiến thức, thông tin họ sử dụng không bao giờ được liên kết lại với nhau, nó mãi mãi nằm lại trên internet.

Cao hơn nữa, câu hỏi chuyển thành “làm sao để build một nodejs app để tạo ra lợi nhuận lớn?”. Lúc này hiểu biết là không đủ.

Khôn ngoan
Theo mình, khôn ngoan là dạng tri thức ở đẳng cấp cao nhất mà chúng ta có thể đạt được. Nó được đúc kết từ sự hiểu biết, trải nghiệm thực tế và những trái đắng, từ nhỏ nhỏ như delete code trên server cho đến bán nhà, nhập khám.

Một developer khôn ngoan sẽ biết được tại sao họ nên sử dụng công nghệ A thay vì công nghệ B. Ngay cả khi sự hiểu biết nói với họ rằng công nghệ B phù hợp hơn. Họ biết lúc nào nên viết mới lại hoàn toàn một component thay vì sửa đi sửa lại mãi. Họ biết lúc nào nên nhảy việc trước khi công ty phá sản. Kiểu vậy.

Công việc của developer
Không thể bàn cãi, google là một trợ thủ đắc lực cho mọi developer. Dĩ nhiên là bao gồm cả mình. Google có thể giúp bạn tìm kiếm thông tin nhanh chóng, fix một số bug mà những developer khác cũng đã từng mắc phải.

Tuy nhiên, công việc của một developer không phải đơn giản như thế.

Để trở thành một developer “tạm tạm”, bạn cần biết cách thiết kế chương trình, cách viết code hiệu quả, cách giải quyết vấn đề, cách debugging… Không cái nào có thể search google cả. Bạn chỉ có thể search code trên google, nhưng bạn không thể search “code phù hợp, hiệu quả với chương trình của tôi” trên google.

Level cao hơn, bạn cần biết cách phân tích yêu cầu, vấn đề, cách thiết kế hệ thống hiệu quả, áp dụng công nghệ… Chẳng có cái mẹ nào search google được cả.

Đấy là mình mới chỉ nói đến technical, ngoài ra còn có vô số soft skill mà một developer cần thành thạo để trở nên giá trị.

Kết
Chúng ta đang sống trong thời đại của thông tin, mọi thứ đều có thể dễ dàng tìm kiếm bằng một click chuột. Tuy nhiên, chỉ thông tin thì chẳng đem lại giá trị gì nhiều, ta cần có một bộ máy xử lý những thông tin riêng lẻ để tạo thành một “cây tri thức”, chỉ khi đó thông tin mới trở nên có ý nghĩa.

Bạn nghĩ thế nào? Để lại suy nghĩ ở comment nhé.

Đó là tất cả những gì mình muốn nói với bạn hôm nay. Take care!

Nguồn :https://thedarkknighttech.com

Related Articles