Một số kinh nghiệm mà mình đã học được khi thực tập tại Primas

Trường đại học có thể dạy cho chúng ta nhiều điều, tiếc rằng kinh nghiệm không phải là thứ có thể dạy được. 2 chữ kinh nghiệm nghe có vẻ to lớn, nhưng thực chất cũng chỉ là những điều mà chúng ta rút ra được thông qua quá trình học tập, làm việc.

Người ta thường tính kinh nhiệm theo năm, kiểu như tôi đã có 2, 3 năm kinh nghiệm. Mình lại không nghĩ như vậy, kinh nghiệm nên được đo bằng những trải nghiệm mà bạn đã trải qua, rút ra được những bài học, chứ không phải đo bằng số năm bạn ngồi trước máy tính.

Mình bắt đầu đi thực tập từ lúc năm 2, lúc đấy mình chẳng biết gì nhiều ngoài tí kiến thức lập trình cơ bản và cái tôi của một thằng ảo tưởng sức mạnh. Kiểu như “Tao biết hết, tao giỏi nhất lớp mà, thằng nào code lại tao”, fuck, đến bây giờ mình đã học hỏi thêm được nhiều thứ, loại bỏ bớt được một số ngộ nhận mà hầu như sinh viên nào cũng mắc phải. Mình sẽ nêu một số điều mà mình cho là quan trọng nhất, coi như cũng để nhắc nhở bản thân.

1. Bạn sẽ quên đi kiến thức, nhưng không sao

Một điều mà mình vô cùng lo lắng khi mới bắt đầu công việc, rằng mình học quá nhiều thứ, sau này quên hết thì làm thế nào?

Chuyện là lúc mới vào công ty, mình chỉ biết mỗi C# với một chút winform. Trong khoảng 6 tháng sau đó, mình học rất nhiều ngôn ngữ, công nghệ khác nhau để phục vụ cho công việc. Nào là HTML/CSS/Js, qua tới PHP, C# ASP.NET, Nodejs…, nói chung là đủ thứ lằng nhằng. Tuy nhiên, mấy cái mình học chỉ để phục vụ cho một project nhất định, khi xong rồi thì lại chẳng dùng đến nữa, lúc này mình mới bắt đầu có một ý niệm trong đầu rằng mình sợ quên đi mấy cái đã học trước đó. Để giải quyết cho vấn đề này, mình bắt đầu “ôn lại” mấy cái đã học bằng cách code một cái gì đó nhỏ nhỏ, nhưng mấy cái đã học thì ngày càng nhiều, thời gian thì lại ít. Cuối cùng mình bỏ, quên thì quên.

Đúng là mình quên hết thật, mình quên hết syntax của ngôn ngữ, cách dùng framework…, nhưng mình nhận ra có một thứ mình không thể quên là kĩ năng. Mình nhận ra được điều đó nhờ gần đây mình phải làm một project sử dụng PHP, ngôn ngữ mà mình đã quên sạch, kì lạ ở chỗ là mình chỉ mất vài giờ đồng hồ để nhớ lại mọi thứ. Lại code như một vị thần.

Đừng lo lắng vì quên đi kiến thức nhé, bởi thực chất học là để quên đi, thứ còn lại sau khi chúng ta quên mới là cái quan trọng.
alt text

2. Đôi khi code là cách tệ nhất để giải quyết vấn đề

Một yếu điểm mà mình thấy đa số developer trẻ đều mắc phải đó là: thích code. Code mọi lúc, nhận yêu cầu, chẳng thèm đọc kĩ yêu cầu, design mà nhảy vào code luôn. Thích code thì không có gì sai, nhưng hãy để ý sau lưng, bởi rất có thể bạn sẽ bị đâm một dao bởi những dòng code đó. Mình bị đâm nhiều rồi nên mình hiểu.

Rất có thể chúng ta có tâm lý này là bởi những project trong trường, hoặc những project đã có design rõ ràng, có mã giả. Project trong trường thì dễ quá, cần gì suy nghĩ? Project có design cụ thể thì mọi logic đã được ghi trong design hết rồi, cứ thế code thôi, cần gì suy nghĩ?

Tuy nhiên, khi đã đạt đến một trình độ nhất định, những project bạn được giao phó sẽ khó khăn, thử thách hơn nhiều. Đặc biệt là trong môi trường phát triển phần mềm nhanh (agile).

Khoảng sáu tháng trước, mình được giao cho làm một project có tên là: Installer. Project này có nhiệm vụ install tất cả các component của hệ thống vào một môi trường nhất định. Cái khó, thử thách ở đây là project không có document, design, và nó phải được custom từ một project cũ đã được làm nhiều năm về trước. Project cũ cũng không có gì phức tạp, nó chỉ có tầm 10k dòng code, được làm bởi 2 team khác nhau.

Với tinh thần của một thằng sinh viên, mình nhảy vào code luôn, định bụng là sẽ hoàn thành trong 2 tuần để boss khen chơi. Tiếc là 3, 4 tháng sau mình vẫn chưa hoàn thành. Lý do là mình không đọc kĩ code cũ, không đọc kĩ logic xử lý mà code theo ý của mình, cuối cùng dẫn đến code mới + code cũ đè lên nhau, phá vỡ cấu trúc của chương trình. Sau đó mình tiếp tục cố gắng sửa, nhưng rõ ràng là mình đã sai từ ban đầu, càng sửa thì lại càng rối, càng nát.

Cuối cùng mình quyết định không code nữa, revert lại một số code mình đã làm. Mình đọc code cũ kĩ hơn, vẽ lại các design pattern mà mấy anh Dev trước đã thiết kế cho chương trình, may mắn là cuối cùng mình cũng hoàn thành được project.

Hãy cố gắng hiểu rõ cái mà bạn chuẩn bị code trước khi đặt tay lên bàn phím.

3. Hãy xem user của bạn là một thằng đần

Cái này mình học được từ 2 người, 1 là Thầy của mình tên là Khoan, 2 là 1 ông người Mỹ tên là Mike.

Developer chúng ta thường có đầu óc logic tốt, hiểu nhanh, đặc biệt là mấy vấn đề liên quan đến máy tính. Điều này dẫn đến khi làm sản phẩm, chúng ta thường mắc phải một sai lầm nghiêm trọng, đó là chúng ta nghĩ ai cũng hiểu hết mọi thứ giống như mình. Bởi vì chúng ta mặc định là ai cũng hiểu giống mình, nên các sản phẩm làm ra thường khó hiểu, khó sử dụng, không có trải nghiệm người dùng tốt.

Mình từng làm việc với một ứng dụng có tên là “quản lý giáo xứ”, ứng dụng này hiện nay vẫn đang được các giáo xứ trên cả nước tin dùng. Tất nhiên mình không phải là người làm ra nó, mình chỉ sửa lỗi, làm thêm một số tính năng mới. Mình mắc một lỗi nghiêm trọng khi làm đó là: không quan tâm đến user. Mình chỉ nghĩ về phía kĩ thuật, làm sao cho ngầu, cho hiện đại nhất. Tuy nhiên, các tính năng mình làm ra thì user chẳng hiểu gì cả, khó mà có thể sử dụng được. Mình nhớ mình có làm một tính năng cho phép user tìm kiếm thông tin giáo dân trong giáo xứ, mình thiết kế duy nhất một cái Textbox cho phép nhập tên giáo dân và mặc định là bấm enter thì sẽ tìm kiếm. Haizz, tiếc là đâu phải ai cũng biết bấm enter là sẽ tìm kiếm, nhiều user sẽ bối rối không biết làm gì khi nhập xong tên giáo dân.

Từ câu chuyện trên, mình nhận được lời khuyên từ phía Thầy Khoan là: “em phải nghĩ đến user, user là ai? Trong trường hợp này user là các cha trong giáo xứ, rất ít người giỏi máy tính, vì vậy hãy luôn xem như user không biết gì cả, làm sao cho họ dễ hiểu, dễ dùng nhất.”

4. Hãy chủ động

Hãy chủ động, chủ động tìm kiếm câu trả lời, chủ động học tập, chủ động trong mọi thứ. Tốt hơn nữa là hãy nhận trách nhiệm, trách nghiệm càng cao, quyền lực càng nhiều.

Khi mới đi làm, mình thường chờ đợi cấp trên, manager nói gì thì làm theo cái đấy. Có những ngày mình chẳng có việc gì để làm, nhưng mình vẫn chờ đợi. Tất nhiên, mình sẽ nhàn hơn, vẫn nhận tiền đủ mà chẳng phải làm gì. Nhưng, nếu không chủ động, mình sẽ chẳng học được gì nhiều, tệ hơn nữa là dần dần mình sẽ học được bản năng của một nô lệ, chỉ biết làm theo những gì người khác sai bảo.

Hãy cố gắng trở thành CEO, leader của chính bản thân.

5. Soft skill – vô cùng quan trọng

Qua quá trình làm việc, mình nhận ra rằng: nếu muốn thành công, bạn phải giỏi soft skill. Những developer nhận lương cao nhất, vị trí cao nhất thông thường không phải là người giỏi kĩ thuật nhất, giỏi code nhất. Vậy họ là những người nào?

Họ là những người giỏi giao tiếp nhất, có khả năng trình bày, thuyết phục người khác, đặc biệt là khả năng lãnh đạo, khiến mọi người yêu thích làm việc với họ.

Bản thân mình là một người có khả năng diễn đạt dở tệ, khi mới đi làm, mình không thể giải thích được một ý tưởng nhỏ cho leader hiểu. Mặc dù ý tưởng của mình có thể hay, sáng tạo nhưng nó sẽ mãi mãi chẳng bao giờ được sử dụng. Mình cũng chứng kiến nhiều anh developer đã đi làm được nhiều năm, nhưng khả năng giao tiếp, diễn đạt kém dẫn đến khó phát triển, khó hợp tác với mọi người.

Kĩ thuật rất quan trọng, nhưng soft skill mới là thứ quyết định bạn có thành công hay không. Nếu bạn muốn cải thiện soft skill, hãy tham khảo cuốn sách này nhé.

Đọc thêm nhiều bài viết tại: https://thedarkknighttech.com

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Võ Cao Sơn

17 bài viết.
43 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
30 1
Ngày nay, thời đại của thông tin, của mạng xã hội, chúng ta có xu hướng bị đắm chìm trong những thông tin vô bổ, kém hữu ích. Video game show, thôn...
Võ Cao Sơn viết 5 tháng trước
30 1
White
29 7
Gần đây mình thấy rất nhiều bài viết câu like dạng như: “Chấm để tham gia khóa học lập trình A, B, C miễn phí”, ngạc nhiên là những bài như vậy đượ...
Võ Cao Sơn viết 5 tháng trước
29 7
White
10 2
Ly trà sữa siêu to siêu khổng lồ, nồi lẩu thái siêu cay siêu khổng lồ…, mình chẳng biết mấy cái này có còn là trend không nhưng có vẻ như chúng ta ...
Võ Cao Sơn viết 2 tháng trước
10 2
Bài viết liên quan
White
7 1
Nếu bạn đang là một sinh viên, hoặc bạn mới chỉ bắt đầu con đường sự nghiệp của mình thì một công việc thực tập có thể là vị trí lý tưởng để bạn bắ...
Võ Cao Sơn viết 5 tháng trước
7 1
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
17 bài viết.
43 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!