Những điều tôi học được với tư cách là một kỹ sư cấp cao (2021)
(luminousmen.substack.com)- Bài viết thẳng thắn của một kỹ sư dữ liệu có 10 năm kinh nghiệm, được viết trong lúc say về sự nghiệp, công nghệ, đồng nghiệp và cuộc sống; đây là bản lưu trữ của bài đăng gốc trên Reddit r/ExperiencedDevs
- Quan trọng không phải bản thân tech stack mà là 10–20 nguyên tắc cốt lõi của từng lĩnh vực; stack chỉ là công cụ để hiện thực hóa chúng dễ hơn
- Cách hiệu quả nhất để phát triển sự nghiệp là chuyển việc, không có lý do gì phải ở lại một nơi làm việc không thỏa mãn
- Code tốt là code mà cả kỹ sư junior cũng có thể hiểu, và code tốt nhất là không có code
- Đừng gắn giá trị bản thân với lương thưởng hay cấp bậc; sự tử tế và nỗ lực sẽ thay đổi cả sự nghiệp lẫn cuộc sống về lâu dài
Tôi đang say và có lẽ sẽ hối hận, nhưng đây là bảng xếp hạng ngà ngà về những điều tôi đã học được trong 10 năm làm kỹ sư.
- Cách tốt nhất để phát triển sự nghiệp là đổi công ty
- Tech stack không quá quan trọng — trong lĩnh vực dữ liệu có khoảng 15 pattern cơ bản, và ở mọi lĩnh vực đều có 10–20 nguyên tắc cốt lõi; tech stack chỉ là công cụ giúp làm điều đó dễ hơn, nên đừng lo quá
- Có lý do mà người ta cứ khuyên nên chuyển việc — nếu không hài lòng với nơi làm việc thì đã đến lúc rời đi
- Tôi từng kết bạn thân cả đời ở công ty, nhưng điều đó không nhất thiết phải là tiêu chí của mọi chỗ làm — tôi từng làm ở nơi hạnh phúc dù không có bạn thân, và cũng từng ở nơi bất hạnh dù có bạn tốt
- Tôi học được cách thành thật vừa phải với quản lý — đừng quá thẳng, nhưng vẫn đủ chân thật để giữ được sự tự nhiên ở nơi làm việc. Tệ nhất thì sao? Bị sa thải? Hai tuần là kiếm được việc mới
- Nếu hơn mỗi quý một lần mà bạn bị gọi dậy lúc 2 giờ sáng vì on-call, tức là đang có vấn đề nghiêm trọng; hoặc sửa nó, hoặc nghỉ
Rót thêm một ly
- Phẩm chất của một quản lý giỏi chồng lấn rất nhiều với phẩm chất của một kỹ sư giỏi
- Khi mới bắt đầu, tôi bị mê hoặc bởi công nghệ, lập trình và khoa học máy tính, nhưng giờ thì thời đó đã qua
- Code tốt là code mà kỹ sư junior hiểu được, code xuất sắc là sinh viên năm nhất CS cũng hiểu được, và code tốt nhất là không cần code
- Kỹ năng bị đánh giá thấp nhất của kỹ sư là viết tài liệu — nếu có ai dạy tôi cách viết tài liệu tốt, tôi thực sự sẵn sàng trả tiền; thậm chí khóa học 1.000 đô nếu đảm bảo tôi viết tài liệu tốt hơn thì tôi cũng trả
- Liên quan đến đó, viết proposal tốt cho các thay đổi cũng là một kỹ năng rất đáng giá
- Gần như mọi cuộc chiến tôn giáo (vim vs emacs, mac vs linux, v.v.) đều không quan trọng… trừ một cái. Xem bên dưới
- Càng lớn tuổi tôi càng trân trọng ngôn ngữ động. Đúng vậy, tôi nói đấy. Cứ lao vào đi
- Nếu có lúc bạn cảm thấy mình là người thông minh nhất trong phòng, thì đã đến lúc rời đi
- Tôi không hiểu vì sao full-stack web developer lại được trả ít đến vậy — họ phải hiểu frontend, backend, tương thích trình duyệt, networking, database, caching, khác biệt giữa web và mobile, và cả framework mới cứ liên tục xuất hiện. Mức lương cơ bản phải là 500 nghìn đô
- Chúng ta nên tuyển nhiều intern hơn — tràn đầy năng lượng và ý tưởng. Intern biết đặt câu hỏi và biết phản biện là tuyệt nhất
Nhấp một ngụm
- Đừng gặp thần tượng của mình — tôi từng học khóa 5.000 đô của thần tượng, ông ấy là người tuyệt vời, nhưng rốt cuộc cũng đang ứng biến như bao người khác
- Tech stack cũng có quan trọng — cứ nghĩ tới Python developer và C++ developer là ra hai hình ảnh hoàn toàn khác, vì một số công cụ sinh ra cho những loại việc nhất định. Nếu không biết nên làm gì thì cứ học Java — ngôn ngữ không hay lắm nhưng dùng ổn cho gần như mọi thứ
- Ngôn ngữ lập trình tốt nhất là Lisp. Bạn nên học Lisp
- Ngôn ngữ sinh lời nhất cho người mới bắt đầu là SQL — chẳng cần biết các ngôn ngữ khác. Biết SQL là kiếm được tiền. Nhân viên payroll 50k → nhân viên payroll biết SQL 90k. Nhân viên văn phòng bình thường có tổ chức tốt 40k → người biết thêm SQL thì được gọi là PM và kiếm 150k
- Test rất quan trọng nhưng TDD là một giáo phái
- Công việc công chức ổn định không tốt như người ta tưởng (ít nhất ở giai đoạn đầu và giữa sự nghiệp) — 120k + phúc lợi + lương hưu nghe hay đấy, nhưng bạn sẽ bán linh hồn cho công nghệ độc quyền. Có lý do mà tuổi trung bình kỹ sư ở đó là 50+. Không áp dụng cho contractor làm cho chính phủ
- Recruiter bên thứ ba là ký sinh trùng — nhưng nếu gặp được recruiter tốt thì hãy xây dựng quan hệ. Ai làm recruiter bên thứ ba hơn 3 năm thường không ổn; người giỏi thì chuyển sang làm recruiter cho công ty lớn
- Stock option hoặc là vô giá trị, hoặc biến bạn thành triệu phú — nếu đội ngũ engineering chưa quá 100 người thì thường là vô giá trị
- Làm việc từ xa là đỉnh cao. Nhưng tôi vẫn thấy thiếu whiteboard
- Tôi chưa từng làm ở FAANG — không biết mình bỏ lỡ gì, nhưng tôi đã phỏng vấn và tuyển người từng ở FAANG, và họ cũng chẳng biết mình đang làm gì hơn ai
- Giá trị bản thân không liên quan và không nên liên quan đến tổng thu nhập — chủ nghĩa tư bản không phải thước đo tốt để định giá bản thân
- Manager có ít quyền hơn nhiều so với bạn nghĩ — lý do họ không sa thải ai đó thường là vì họ không làm được
- Cấp bậc phần lớn không quan trọng — Principal Distinguished Staff Lead Engineer ở đâu đó cũng vậy thôi. Điều quan trọng là bạn đã làm gì và đạt được gì
- Nói thêm về cấp bậc: ở giai đoạn đầu sự nghiệp (dưới 10 năm), thăng cấp là tốt — kỹ năng và trách nhiệm đều tăng. Về sau, giảm cấp bậc lại có lợi — vẫn nhận cùng mức lương nhưng còn có dư địa tăng lương khi thăng chức lại
- Hãy đóng tối đa 401k
- Hãy tử tế với mọi người — không phải vì có lợi cho sự nghiệp đâu (dù đúng là có), mà vì bản thân sự tử tế đã là phần thưởng rồi
- Nếu trong một tháng qua bạn không học được gì từ một kỹ sư junior hay intern, thì là vì bạn đã không chú ý
Chết tiệt, hết rượu vang rồi.
- Rất đáng để chi tiền cho lớp học, sách và hội thảo — tôi đã đầu tư vào nhiều conference, khóa học 1.5k, rất nhiều sách và subscription, và thấy xứng đáng. Làm vậy giúp bạn giỏi hơn trong việc trông như mình biết mình đang làm gì
- Nghiêm túc đấy, sao web developer lại được trả thấp vậy? Họ biết mọi thứ mà!!!
- Hội chứng ống cổ tay và vấn đề lưng không phải chuyện đùa — hãy bỏ ra 1.000 đô ngay bây giờ để mua thiết bị tốt
- Người thông minh nhất tôi từng làm việc cùng là một tiến sĩ toán học — tôi học được cực nhiều từ anh ấy. Mong anh ấy vẫn ổn
- Có một cô bạn thân từ thời trung học — khi có tin đồn là chúng tôi hẹn hò, cô ấy bắt đầu phớt lờ tôi. Tôi buồn nhưng không oán trách gì, và lúc đó tôi đáng lẽ nên xử lý tốt hơn
- Hồi lớp 8, tôi muốn chia tay bạn gái nhưng không nói được nên bắt đầu lờ cô ấy đi — đó là hành động rất tệ. Xin lỗi Lena
- Điều tuyệt nhất khi làm software engineer là được gặp và trò chuyện với những người suy nghĩ về vấn đề theo cùng một cách. Không phải cùng sở thích, mà là cùng kiểu tư duy
- Trong ngành công nghệ không có đủ phụ nữ — tôi vẫn cố khích lệ và hỗ trợ các nữ kỹ sư trong tổ chức, nhưng không biết còn nên làm gì thêm
- Kỹ sư da đen cũng vậy
- Trước khi thật sự hiểu sâu về một công nghệ, tôi chưa từng ghét nó — nếu bạn ghét một công nghệ mà vẫn có thể đề xuất nó cho khách hàng thì đó lại là công nghệ tốt. Jenkins kinh khủng, nhưng đề xuất nó cũng không phải là tắc trách nghề nghiệp
- git thì kinh khủng nhưng không có lựa chọn nào khác — công cụ GUI là địa ngục, command line vẫn hơn. Chỉ cần nhớ khoảng 7 lệnh, còn lại thì Google
- Tôi là data engineer nên cũng có một bài học về dữ liệu. Đừng dùng Pandas
- Công việc dễ hơn hẳn khi trong team có một analyst bán kỹ thuật (semi-technical) — những người biết lập trình nhưng không biết software engineering. Nếu họ không hiểu được thì thiết kế của bạn đang có vấn đề. Tôi trưởng thành nhiều hơn nhờ các analyst so với nhờ những kỹ sư xuất sắc nhất
- Dark mode rất đau khổ khi bị ép chuyển sang light mode — nên tôi dùng light mode luôn
- Điều tôi biết về bảo mật là mình không biết nhiều về bảo mật
Chết tiệt, hết rượu vang rồi.
- Kỹ sư giỏi là người biết best practice, kỹ sư senior là người biết khi nào nên phá vỡ best practice
- Nếu môi trường làm việc cứ cố đổ lỗi cho bug hay sự cố, thì đã đến lúc rời đi
- Các công ty cấp tiến, đặc biệt là startup, hay bảo bạn hãy “mang con người thật của mình đến công ty” — nhưng nếu con người thật của bạn chỉ là xem phim khiêu dâm thì sao? Điều quan trọng là phải giữ ranh giới lành mạnh giữa công việc và đời tư
- Tôi thích uống với đồng nghiệp ở happy hour, nhưng thành thật mà nói tôi thà dành thời gian cho con cái, gia đình và bạn bè hơn
- Ví dụ tuyệt nhất về lãnh đạo: một leader nhận trách nhiệm thay cho sai lầm hoàn toàn là lỗi của tôi — vì người đó tôi sẵn sàng lao vào lửa
- Cũng theo nghĩa đó, những leader tốt nhất vừa bảo vệ quan điểm của mình, vừa giải thích cả những quan điểm đối lập. Tôi đang cố trở thành người như vậy
- Bỏ mấy side project đi — nếu thích thì cứ làm! Còn tôi thì có thời gian cũng bận lên Reddit viết bài lúc say mất rồi
- Thuật toán và cấu trúc dữ liệu rất quan trọng — nhưng cũng có giới hạn. Chẳng ai đi phỏng vấn dược sĩ bằng bài quiz hóa hữu cơ, nên rõ ràng quy trình phỏng vấn của ngành này có vấn đề
- Kỹ sư DevOps thực sự rất thông minh. Ít ra thì họ thường được trả công xứng đáng hơn
- Quan trọng hơn việc làm điều mình yêu thích là làm điều mình không ghét
- Càng gần sản phẩm, càng gần doanh thu, bạn càng cảm thấy giá trị của mình được công nhận — chuyện này không liên quan đến trình độ kỹ thuật, và ngay cả ở những công ty tiến bộ nhất cũng vậy
- Linux rất quan trọng — kể cả khi bạn làm trong môi trường Windows. Tại sao? Vì cuối cùng bạn rồi cũng sẽ dùng Linux. Tôi biết ơn những cuối tuần từng nghịch cài Arch
- Hãy cẩn thận với các buzzword mơ hồ như “big data” — tôi từng stream 10.000 dòng mỗi 10 phút bằng Spark/Kafka, và cũng từng batch 1 tỷ dòng mỗi giờ bằng Python/MySQL; cái nhãn đó chẳng có nghĩa gì
- Có nhiều việc tốt ngoài Silicon Valley, nhưng rất nhiều việc tốt cũng nằm ở Silicon Valley
Tìm thấy bia rồi. Tiếp tục nào.
Về ngôn ngữ lập trình
- Khi bắt đầu dùng ngôn ngữ mình từng ghét (C#), tôi vẫn ghét nó nhưng phải thừa nhận nó hữu ích
- Rời xa rồi quay lại ngôn ngữ từng ghét (C#), tôi thấy nó đã tiến bộ rất nhiều
- Ưu điểm lớn nhất của ngôn ngữ hàm là hàm là công dân hạng nhất, và mọi lập trình viên đều biết điều đó
- Dù ngôn ngữ có xuất sắc hay ưu việt đến đâu mà không ai dùng thì cũng vô nghĩa
- Học một ngôn ngữ không khó — cái khó là học hệ sinh thái của nó
Về đồng nghiệp
- Pair programming rất tuyệt, nhưng tốn nhiều thời gian — và công ty thường không muốn dành thời gian cho việc đó
- Làm việc với kỹ sư thông minh khiến bạn trở thành coder tốt hơn. Làm việc với đồng nghiệp không kỹ thuật nhưng thông minh khiến bạn trở thành engineer tốt hơn
- Đừng làm việc ngoài khung 9 giờ đến 5 giờ — trừ khi có một dự án cực hay đang chạy và bạn đang trong trạng thái flow. Cảm giác đó là tuyệt nhất
- 99% happy hour và thời gian giao lưu giữa các team chỉ là tán gẫu. Nhưng 1% còn lại lại là những cuộc nói chuyện về đoạn code quan trọng trong dự án quan trọng, và tôi từng tránh được chuyện lớn chỉ vì đem chuyện công việc ra nói ở một buổi xã giao. Không phải là bạn phải đi giao du với team khác, mà chỉ là bạn cần sự gắn kết, còn tác dụng phụ thì có thể đến
Về làm việc từ xa
- Trong môi trường nửa remote/nửa văn phòng, hãy xem nhân viên remote có bị coi là công dân hạng hai không — nếu các quyết định quan trọng được đưa ra “trên đường đi lấy nước”, thì hoặc phải thay đổi văn hóa công ty (rất khó), hoặc chuyển sang công ty khác nơi nhân viên remote được đối xử như công dân hạng nhất
- Nhược điểm tệ thứ hai của làm việc từ xa là không có whiteboard
- Nhược điểm tệ nhất của làm việc từ xa là khó học từ đồng nghiệp — nếu bạn chưa đủ tự tin để hỏi, và văn hóa công ty không coi nhân viên remote ngang hàng với người ở văn phòng, thì trong 5 năm đầu sự nghiệp, làm ở văn phòng vẫn tốt hơn
Về công nghệ
- Ai cũng biết công nghệ thay đổi, nhưng dù 10 năm qua thay đổi rất mạnh thì các nguyên tắc nền tảng không đổi nhiều — đặc biệt là những nguyên tắc cốt lõi áp dụng cho lĩnh vực bạn làm
- Hacker News và r/programming chỉ hữu ích để nắm ý tưởng chung và xu hướng mới; phần bình luận thì gần như vô dụng
- Có rất nhiều người nghiệp dư với quan điểm rất mạnh, và điều đó cũng đúng với các bài đăng trên những tạp chí hay blog “đáng kính” — cứ theo dõi tin đồn, nhưng hãy tự mình phán đoán
- Tôi làm ở một startup rất hiện đại nhưng không dùng công nghệ XYZ mới nhất mà công ty tiên phong ABC vừa công bố — vì thứ họ công bố chỉ là một phần rất nhỏ trong engineering của họ, còn phần lớn họ cũng dùng những công nghệ giống chúng ta
- Tuy vậy, vẫn phải biết đọc tín hiệu — nếu bạn muốn dùng công nghệ hiện đại mà công ty vẫn đang phát triển chủ yếu bằng jQuery, thì đã đến lúc đánh giá lại
Về data engineering
- Vì tôi là data engineer nên thêm vài lời khuyên/trải nghiệm riêng về dữ liệu
- SQL là vua — MySQL, Postgres, Oracle, SQL Server, SQLite vẫn là lựa chọn mạnh nhất. Dù bạn dùng công nghệ mới thì phần lớn kiến thức vẫn chuyển đổi được
- Phần lớn công ty không làm streaming — vì nó khó và phức tạp. Dù có 10 năm kinh nghiệm mà không xử lý được 10.000 sự kiện/giây thì bạn vẫn có việc làm
- Airflow không hay, đúng vậy. Có sản phẩm khác nhưng Airflow vẫn được dùng rộng rãi nhất
- Dự án machine learning rất dễ thất bại — phức tạp và khó triển khai. Không tin à? Hãy nghĩ xem việc viết unit test cho model ML dễ đến mức nào
- Lĩnh vực này vẫn còn mới — chưa có sách hay về data engineering, bạn cứ phải tự làm mới học được. Bootcamp là không đủ. Có thể 10 năm nữa điều này sẽ khác
Về cuộc sống
- Con người rồi sẽ chết — nếu bạn muốn code của mình trở thành di sản thì cứ dồn thời gian vào nó. Nhưng nếu giống tôi, di sản là gia đình, bạn bè và những người xung quanh, thì đừng quá ám ảnh với code
- Người tốt, người thông minh và coder giỏi cũng viết code tệ — đừng biến chất lượng code thành biến phụ thuộc của giá trị bản thân
- Khi thứ từng là sở thích trở thành công việc, sở thích đó biến mất — hãy chấp nhận rằng công nghệ không còn là hobby nữa và tìm sở thích mới, hoặc nếu muốn vui trở lại thì phải nghỉ việc
- Lập trình và CS là ngành học mới khoảng 80 năm — so với những ngành kỹ thuật khác, tất cả chúng ta vẫn đều đang mò mẫm
- Bạn đang kiếm được số tiền khá ổn — hãy biết ơn, tiết kiệm và để dành
Khác
- Tôi đã xây những platform và thư viện lớn được nhiều team dùng suốt nhiều năm, nhưng đoạn code khiến tôi tự hào nhất lại là script nhỏ chỉ mình tôi dùng
- Thành tựu tôi tự hào nhất trong sự nghiệp là giúp người khác làm việc tốt hơn — có lẽ vì tôi sinh ra để làm people manager, nên điều này có thể không hữu ích với người khác
- Khi tìm việc tôi từng tạo và cập nhật LinkedIn, nhưng chỉ nhận được phản hồi tệ nên xóa đi. Giờ thì tôi lại dùng LinkedIn để tìm ứng viên tuyển dụng — LinkedIn đầy nhiễu, và nó chỉ đáng giá vì đóng góp vào đống nhiễu đó cũng là một phần công việc
- Hồi đại học, tôi biết có một cô gái thích mình — vì tự ti nên tôi không tin, nhưng rồi cô ấy rủ tôi đi chơi. Tôi từ chối một cách lịch sự, và việc ở tuổi 19 có thể trưởng thành nói lời “không” là một trong những khoảnh khắc tôi tự hào nhất trong đời
- r/cscareerquestions là đầm lầy của cái tôi và thông tin sai lệch — tôi muốn lắc vai họ và giải thích thế giới thực ra sao, nhưng họ sẽ không tin đâu
Những cảm xúc tôi đang có lúc này
- Tôi đang say và bình thường không hay uống, nên có cảm giác mọi điều mình nói đều sẽ xấu hổ hoặc khủng khiếp
- Tôi thật sự cảm thấy mọi người nên tiết kiệm và đầu tư — nếu lương sáu chữ số thì hãy đóng tối đa 401k
- Tôi đã trở thành đúng thứ mình luôn ghét — làm trong ngành công nghệ nhưng tránh công nghệ trong đời sống thường ngày. Có lẽ già đi là vậy
- r/ExperiencedDevs là một cộng đồng khá ổn. Cảm ơn các moderator. Họ nhận được ít sự ghi nhận hơn rất nhiều so với những gì họ xứng đáng
- Tôi mang ơn Reddit về sự nghiệp, lương bổng và cuộc đời mình — từ chỗ làm ở trạm xăng với mức lương tối thiểu, tôi học Linux, SQL, Python, C# và nhiều thứ khác để đến được vị trí hiện tại. Reddit bị chửi nhiều, nhưng các cộng đồng của nó đã giúp người ta thoát nghèo
- Tôi thích trẻ con — tôi chọn không có con. Tôi yêu trẻ con, nhưng sợ mình sẽ là kiểu người cha như thế nào. Có phải đoạn này quá riêng tư cho bài viết không?
- Có lần ai đó hỏi tôi ngưỡng mộ ai, tôi trả lời là Conan O'Brien và bị cười nhạo. Nhưng tôi nghiêm túc — trong tập cuối của Tonight Show, ông ấy nói “hãy tử tế và chăm chỉ làm việc”, và tôi nghe được câu đó vào giai đoạn khó khăn của đời mình, khi chẳng còn gì để mất nên tôi làm đúng như vậy. Hơn 10 năm sống tử tế đã giúp tôi gặp những con người tuyệt vời, còn việc chăm chỉ và thử điều mới đã khiến cuộc đời tôi tốt lên vô hạn. Nghe có vẻ buồn cười khi nói mình có được một cuộc sống viên mãn nhờ một talk show đêm khuya, nhưng đó là cuộc đời của tôi, và tôi sẽ tự tin nói rằng bất kỳ thành công nào mình có đều một phần nhờ một danh hài trên truyền hình đêm khuya
Tôi say mèm rồi nên cứ bỏ qua những gì tôi nói. Xin lỗi vì đã viết dài dòng.
4 bình luận
Nội dung bài có vẻ hơi lạ nhỉ? Những nội dung đáng ra phải được tập hợp riêng dưới phần ý kiến trên Hacker News lại nằm trong phần thân bài... Có phải định hướng đã thay đổi rồi không.
Mấy ngày nay tôi loay hoay chỉnh prompt nên hơi thất thường. Tôi đã sửa lại rồi T_T
Tôi đồng cảm với phần nói về generalist. Hồi mới vào nghề tôi cũng từng nghĩ mình phải trở thành một generalist~
Ý kiến trên Hacker News
Việc nói rằng làm kỹ sư phần mềm sẽ gặp được những người có tư duy giống mình khá khác với trải nghiệm của tôi. Trong 50 người tôi gặp thì chắc chỉ khoảng 1 người làm nghề này vì tinh thần thủ công, còn đa số chỉ muốn một công việc 9-to-5, có độ hiện diện và các dự án tạo tác động, chứ không thực sự chia sẻ sâu về vấn đề hay quan điểm của mình
Câu kiểu như “tìm được việc mới trong vòng 2 tuần” đúng là rất đậm không khí của thời đó. Khi ấy người lao động nắm thị trường nên ai cũng có vẻ làm ra vẻ chuyên gia
Tôi cực kỳ đồng cảm với câu “đừng gặp trực tiếp thần tượng của mình, sau khi nghe một khóa học 5.000 đô thì nhận ra họ cũng chỉ đang ứng biến như chúng ta”
Về ý cho rằng kỹ năng bị đánh giá thấp nhất ở kỹ sư là viết tài liệu, tôi muốn bổ sung rằng tài liệu trước hết phải ghi lại lý do tại sao. Code thì có thể đọc được, nhưng tôi muốn biết vì sao một hàm 200 dòng như
invert_parameterslại tồn tại, nó giải quyết vấn đề gì, vì sao vấn đề đó xuất hiện, và đoạn code này dự kiến sẽ sống được bao lâu. Thỉnh thoảng tôi còn để lại cả bình luận mang tính xin lỗi kiểu như viết thế này vì áp lực thời gian hay vì vấn đề upstream kỳ quặc nào đó. Đặc biệt với những đoạn code không hiển nhiên, cần tái hiện được cách suy nghĩ tại thời điểm viết để bối cảnh không bị mất đi, thứ mà chỉ nhìn vào code thì không thấy. Tôi mong dù junior hay senior thì ở chỗ làm mọi người cũng làm việc này nhiều hơnNếu có ai ở độ tuổi 20 mà kiếm hơn 100.000 đô mỗi năm, thì lời khuyên hãy tối đa hóa 401k và HSA trước, rồi nạp đầy cả IRA, theo tôi là cực kỳ quan trọng. Những nguyên tắc cơ bản như bỏ toàn bộ vào target date retirement fund, và để chi phí sinh hoạt từ 6 đến 12 tháng trong high yield savings account, cũng có vẻ hợp lý. Ý ở đây là nếu bắt đầu từ năm 23 tuổi thì có thể nghỉ hưu ở tuổi 45, còn nếu trì hoãn thì đến 45 tuổi có khi vẫn phải đối mặt với thực tế là còn phải làm thêm 20 năm nữa
Bài học hữu ích nhất tôi rút ra là những ràng buộc không do tôi chọn thường dẫn đến quyết định sản phẩm tốt hơn các ràng buộc do chính tôi tự đặt ra. Tôi đang chạy một dịch vụ rút gọn link trên shared hosting, không có SSH, chỉ deploy được bằng FTP, cũng không có background worker hay Redis. Mỗi lần định thêm một hàng đợi cho ra hồn, WebSocket hay lớp cache nào đó, tôi lại phát hiện hosting không hỗ trợ nên thôi. Vì thế thông báo click được gửi bằng một cron gọi vào PHP endpoint mỗi giờ một lần. Không có queue, không có retry logic, không có worker; hoặc gửi được hoặc thất bại, rồi chỉ ghi kết quả vào log. Dùng 6 tháng rồi mà vẫn chạy tốt. Nếu ngay từ đầu tôi có VPS, có lẽ tôi đã xây một thứ to hơn và giờ còn phải bảo trì nó; nhưng vì shared hosting đặt ra ranh giới là “chỉ cho cron và DB”, tôi học được rằng thế là đủ
Tôi thấy bài gốc có khá nhiều vấn đề. Việc ngồi uống vang một mình thì hơi lạ; bình thường whisky, vodka hay bia mới có vẻ điển hình hơn. Cách viết như ‘ever thing’ lại khá hợp với bầu không khí của những suy nghĩ lộn xộn khi đang say. Và tôi cũng không nghĩ webdev có thể đại diện cho giới chuyên gia nói chung, còn dark mode thì nhiều khi chỉ cần tiện ích mở rộng trên trình duyệt là xong. Dược sĩ là nghề cần bằng cấp, nhiều năm học, thi cử và cả hóa hữu cơ; còn câu nói rằng bình luận HN vô giá trị thì cũng hơi quá. Có khá nhiều bài viết dở nhưng phần bình luận lại hay hơn cả nội dung chính
Tôi nhớ đến bài liên quan từ tháng 5/2021 là Drunk Post: Things I've Learned as a Sr Engineer. Bài đó có tới 494 bình luận
Tôi ngạc nhiên là bài này là từ năm 2021. Không khí kiểu nói về SQL hay chuyện đổi việc trong 2 tuần khiến nó giống vibe năm 2014 hơn
Liên quan đến câu “HN và r/programming tốt để nắm ý tưởng tổng quát và xu hướng mới nhất, nhưng phần bình luận thì gần như vô giá trị”, sau khi bị phía vận hành HN áp rate limit thì tôi ít đọc bình luận hơn hẳn. Mỗi ngày chỉ trả lời được vài lần nên tôi không thể thực sự tham gia, thành ra động lực để đọc cũng giảm đi. Họ không ban thẳng mà chỉ làm chậm tốc độ, nên cảm giác mình trở thành khách không mời còn tinh vi hơn. Tôi từng lo rằng có lẽ mình sẽ bỏ lỡ nhiều thứ, nhưng rồi lại nghĩ việc cắt được cái sự bị lôi kéo theo thói quen muốn kiểm tra bình luận có khi cũng không tệ như tưởng tượng