Chuyện phỏng vấn: "Em đang ở level nào?"

Chuyện phỏng vấn: "Em đang ở level nào?"

Threads
  • Hôm trước mình thấy repository này dùng TauriSvelte để viết lại ứng dụng kiểu như là Task Manager trên Window hay Monitor trên Mac á. Tò mò tải về xem thử thì bất ngờ thứ nhất là dung lượng rất nhỏ, chỉ vài MB. Tiếp theo là tốc độ khởi động cũng rất nhanh mà ứng dụng cũng rất mượt nữa chứ 🫣

    Abdenasser/neohtop

    » Xem thêm
  • Tuôi" để ý là cứ đợt nào ham đọc cái là lại lười viết, tuần nay tuôi đang đọc một lúc 3 cuốn, à phải là đọc 2 và nghe 1.

    Cuốn sách ám ảnh nhất đến thời điểm hiện tại: Đại dương đen - thuật lại 12 câu chuyện của 12 người mắc bệnh trầm cảm. Thần kinh vững, nhưng mới đọc 2 câu truyện đầu thôi mà cảm giác ngộp thở, bứt rứt thật khó tả 😰

    Câu chuyện tiếp theo đó thì mang lại cảm giác dễ thở hơn vì họ kiểm soát được bản thân. Nhưng sang tiếp câu chuyện thứ 4, thứ 5 thì lại như một có một bàn tay siết họng mình lại. Không thể nhắm mắt mà nghe được á, có gì đó rất đáng sợ.

    Một câu mà mình cảm thấy ám ảnh nhất là khi ba mẹ của người mắc trầm cảm luôn miệng hỏi tại sao con lại như thế mỗi khi sắp lên cơn và gào thét. Họ chỉ đành bất lực trả lời là "Làm sao mà con biết! Cũng giống như hỏi một người bị ốm là tại sao lại ốm? Làm sao mà biết được chứ! Có ai muốn đâu!".

    » Xem thêm
  • Mistral.ai là một công ty AI có trụ sở tại Pháp, được biết đến với nhiều mô hình ngôn ngữ lớn Mistral. Mới đây họ vừa ra mắt thêm một số mô hình có kích thước siêu lớn, siêu mạnh... Nhưng tạm khoan nói đến vì Mistral Chat cũng vừa được ra mắt với nhiều tính năng hay ho tương tự như Chat GPT mà lại miễn phí 😇

    » Xem thêm

Vấn đề

Lần gần đây nhất tôi đi phỏng vấn tìm việc là khoảng 4-5 tháng trước. Như bao người khác, đi nhiều nơi, mỗi nơi là một trải nghiệm thú vị và nhận thấy một điều là không ai hỏi giống ai. Tôi chuẩn bị cho mình một tâm lý thoải mái và đặt ra những tiêu chí về môi trường làm việc mới, không quá quan trọng lý thuyết mà sẽ trả lời dựa trên kinh nghiệm làm việc thực tế của mình.

Một ngày nọ, có một anh CTO hỏi tôi một câu "Em tự nhận thấy mình đang ở level nào?". Tôi không chần chừ mà trả lời luôn: "Thực ra em chưa để ý nhiều đến level của mình, mục tiêu trước mắt là không ngừng học hỏi...". - "Em chưa xác định được level của mình thì cũng cần phải xem xét lại nhé!"

Dễ nhận thấy là người phỏng vấn đang muốn tôi lựa chọn giữa 3 mức Junior, Mid-Level và Senior. Với một người có hơn 5 năm kinh nghiệm, có thể tôi sẽ lựa chọn mình ở mức Senior, bởi vì đây là một điều có thể chấp nhận được khi thị trường tuyển dụng trong nước thường hay cho rằng người có từ 5 năm kinh nghiệm trở lên có thể coi là Senior. Nhưng tôi nghĩ, hiện tại mình vẫn chưa đạt được cấp độ này, có thể mình chỉ đang ở mức Mid-Level. Nhưng vì quan niệm và thị trường đang có mâu thuẫn về sự phân biệt các cấp độ, hay nói cách khác 3 cấp độ này còn phụ thuộc vào suy nghĩ của mỗi người, cho nên tôi phân vân và không đưa ra được câu trả lời chính xác cho mình.

Lời của anh CTO nói là đúng, việc không xác định được Level của mình thì quả là nguy cấp, nhưng do không nói ra suy nghĩ cho nên bị hiểu nhầm là không xác định được mình ở đâu. Vì thế, bài viết ngày hôm nay chúng ta hãy thử bàn luận về 3 cấp độ Junior, Mid-Level và Senior để xem thực chất phải làm thế nào thì mới có thể coi là một Senior "xịn" nhé!

Junior, Mid-Level và Senior

Hãy thử tìm kiếm Google với từ khóa "Junior, Mid-Level và Senior developer" sẽ có rất nhiều kết quả được tìm thấy, chứng tỏ đây là một chủ đề được rất nhiều người quan tâm. Đa phần chúng ta vào đọc để xem mình đang ở đâu và cần phải làm thêm gì thì mới có thể đạt được cấp độ tiếp theo.

Trong số đó, nhiều bài liệt kê ra số năm kinh nghiệm để đánh giá được một người đang ở cấp độ nào. Ví dụ, mới ra trường sẽ là Junior, 3-5 năm sẽ là Mid-Level, từ 5 năm trở đi thì thành Senior...!? Quả thật mà nói trước kia tôi cũng từng tin sái cổ vào những con số này. Cho rằng càng làm lâu thì "bậc" của mình cũng sẽ tự tăng.

Hoặc cũng có bài viết chỉ ra rằng số năm không hoàn toàn quyết định level của một người, mà dựa vào khả năng giải quyết vấn đề của người đó. "Họ biết cách tổ chức mã, quan tâm đến khả năng bảo trì sau này, cách đặt câu hỏi và cách giải quyết..." Nghe thì hợp lý, nhưng có lẽ vẫn chưa đủ. Đối với tôi, một lập trình viên không chỉ biết mỗi code. Do đó để đạt được cấp cao nhất trong lập trình thì phải vượt qua cả việc code và làm được nhiều điều hơn nữa.

Tình cờ tôi tìm thấy một bài viết nói rất chi tiết về những thứ có thể đạt được ở cả 3 cấp độ. Hơn nữa nó còn rất đầy đủ và chi tiết cũng như đưa ra lời khuyên làm sao để tăng được level. Bạn đọc có thể xem tại Levels of Seniority.

Để tóm tắt, bài viết tập trung nhất vào cấp độ Junior, nêu ra khái niệm, biểu hiện và những điều cần làm để tiến bộ hơn. Một vài ý nổi bật như là:

  • Câu thần chú chính của họ là "làm cho nó hoạt động" mà không chú ý nhiều đến giải pháp. Đối với họ, một phần mềm hoạt động được và một phần mềm tốt là tương đương nhau.
  • Họ không biết về khía cạnh kinh doanh của công ty, tức là không quan tâm hoặc không biết mình làm việc này cho công ty để làm gì.
  • Đổ lỗi cho người khác (Somebody else's problem) khi cho rằng ai đó phải chịu trách nhiệm cho vấn đề của bạn.
  • Họ không tham gia thảo luận nhóm.
  • ...

Sau đó, tác giải đưa ra những lời khuyên cho Junior như sau:

  • Đọc nhiều mã, không chỉ mã trong các dự án mà bạn đang làm việc, mà cả mã nguồn của các thư viện, Framework, mã nguồn mở...
  • Tự làm các dự án cá nhân.
  • Ngừng đổ lỗi.
  • Đừng để bản thân bị giới hạn bởi chức danh mà bạn có. Làm nhiều việc và chủ động hơn.
  • Tránh nói "nó hoạt động trên máy của tôi", ý chỉ hãy đi tìm hiểu nguyên nhân tại sao ứng dụng không hoạt động ở đâu đó, vì chắc chắn người khác đang gặp phải vấn đề chứ không phải là bạn. Câu nói trên chẳng khác nào phủ nhận trách nhiệm vậy.
  • Tiếp xúc với các nhà phát triển cấp cao hơn, xem họ làm việc, nếu có thể thì tìm một người hướng dẫn mình. Không ai thích một người biết tất cả mọi thứ, nhưng hãy kiềm chế cái tôi của mình và khiêm tốn để tiếp thu những bài học từ những người có kinh nghiệm.
  • ...

Một Mid-level bao gồm tất cả những yếu tố của Junior, kèm theo đó là khả năng tự giải quyết vấn đề. Họ có nhiều hiểu biết hơn Junior tuy nhiên còn lúng túng trong việc áp dụng chúng. Tác giải nhấn mạnh rằng Mid-level là rất phổ biến và đôi khi họ bị nhầm với "Senior". Tuy nhiên, họ cần được cố vấn thêm để trở thành một Sernior "chính hiệu".

Senior là cấp độ tiếp theo sau Mid-Level developer. Họ là những người có thể tự mình hoàn thành công việc mà không cần bất kỳ sự giám sát nào và không tạo ra bất kỳ vấn đề nào trong quá trình thực hiện. Một số điều mà một Senior làm được như:

  • Họ thực dụng trong công việc, không bị ảnh hưởng bởi một công cụ tốt nhất.
  • Họ có một bức tranh toàn cảnh về lĩnh vực này, biết đâu là công cụ tốt nhất cho công việc trong hầu hết các trường hợp.
  • Họ biết họ đang ở trong một đội. Họ coi đó là một phần trách nhiệm của họ trong việc hướng dẫn người khác.
  • Họ có hiểu biết sâu sắc về lĩnh vực đang làm.
  • Họ nghĩ nhiều hơn là chỉ viết mã.
  • Họ biết cách đưa ra phản hồi mà không làm tổn thương bất cứ ai...
  • ...

Hay nói tóm lại, ngoài việc viết mã, một Senior có thể hướng dẫn, làm cố vấn cho người khác, hiểu biết sâu sắc về doanh nghiệp, lĩnh vực kinh doanh và cả yếu tố con người.

Tổng kết

Junior, Mid-Level và Senior là ba cấp độ của một lập trình viên, cấp độ Junior là thấp nhất cho đến Senior là người có hiểu biết sâu rộng. Việc xác định được mình đang ở cấp độ nào cũng như cần làm gì để đạt được Level tiếp theo là một điều hết sức quan trọng trong con đường sự nghiệp của mỗi người.

hoặc
* Bản tin tổng hợp được gửi mỗi 1-2 tuần, huỷ bất cứ lúc nào.
Author

Xin chào, tôi tên là Hoài - một anh Dev kể chuyện bằng cách viết ✍️ và làm sản phẩm 🚀. Với nhiều năm kinh nghiệm lập trình, tôi đã đóng góp một phần công sức cho nhiều sản phẩm mang lại giá trị cho người dùng tại nơi đang làm việc, cũng như cho chính bản thân. Sở thích của tôi là đọc, viết, nghiên cứu... Tôi tạo ra trang Blog này với sứ mệnh mang đến những bài viết chất lượng cho độc giả của 2coffee.dev.Hãy theo dõi tôi qua các kênh LinkedIn, Facebook, Instagram, Telegram.

Bạn thấy bài viết này có ích?
Không

Bình luận (2)

Nội dung bình luận...
Avatar
Anh (Daniel) Le1 năm trước
Senior theo mình thì, đơn giản thôi, bộ phận khác đưa ra 1 idea, họ có thể validate, process, và turn nó thành 1 sản phẩm có thể dùng được.
Trả lời
Avatar
Xuân Hoài Tống1 năm trước
Vâng, họ có thể làm được nhiều thứ và biết cách tìm ai để hoàn thành nó 🤝
Avatar
Triết Trương1 năm trước
Đồng tình vì nếu ai hỏi mình ở level nào thì mình cũng trả lời ở Mid Level hơn là Senior, vì không có thang đo phổ quát cho cấp bậc này mà mỗi công ty đang tự định nghĩa.
Trả lời
Avatar
Xuân Hoài Tống1 năm trước
Vâng, nhiều khi cũng rất khó trả lời hoặc giải thích cho họ hiểu được nỗi lòng mình.