5 bài học lớn sau hơn 10 năm làm kỹ sư phần mềm
Mà mình ước có thể học được khi mới bắt đầu sự nghiệp
Đó là một buổi tối muộn, cả team đã ngồi hàng giờ trước màn hình, debug mãi một lỗi mà khiến cả hệ thống bị đơ. Cuối cùng, khi vấn đề được khắc phục, mọi người reo lên vui mừng 🎉, nhưng trong đầu mình vẫn tự hỏi: “Liệu đây (code và fix bug) có phải tất cả những gì một kỹ sư phần mềm cần làm để thành công?”
Đến giờ nhìn lại, mình cũng đã có câu trả lời: “Nope, thành công của kĩ sư phần mềm cần nhiều hơn việc viết code giỏi”
Hành trình hơn 10 năm qua đã dạy mình nhiều điều quý giá, và trong bài viết này, mình muốn chia sẻ với các bạn 5 bài học dành cho những ai đang bán mình cho tư bản, đặc biệt là các bạn kĩ sư phần mềm đang ở giai đoạn junior đến mid-level developer.
Bắt đầu nào!🚀
👋 Hey, nếu đây là lần đầu bạn đọc newsletter này, thì xin tự giới thiệu mình là Bryant (Dũng). Chào mừng bạn đến Growth Engineering Journal - newsletter hàng tuần của mình, nơi mình chia sẻ về tư duy phát triển bản thân và những thứ hay ho cho kĩ sư phần mềm 😜.
1. Chủ động làm chủ sự phát triển của bản thân 🛤️
Ngành công nghệ luôn thay đổi không ngừng, từ mobile apps, blockchain đến AI. Có những lúc đam mê của bạn sẽ trùng với xu hướng, nhưng cũng có khi không. Điều quan trọng không phải là chạy theo xu hướng, mà là đi theo con đường phù hợp với khả năng của bản thân.
Chủ động định hướng sự nghiệp không chỉ dừng lại ở việc đặt ra những mục tiêu dài hạn tuy thách thức nhưng đầy cảm hứng, mà còn thể hiện ở việc bạn dám đưa ra quyết định và chịu trách nhiệm trong các tình huống thực tế. Những khoảnh khắc đó đôi khi chính là bước ngoặt, giúp bạn tiến thêm một bước trên con đường sự nghiệp của mình.
Không ít người nghĩ rằng chỉ cần làm tốt các nhiệm vụ được giao là đủ để phát triển sự nghiệp. Nhưng trong thực tế, chính những hành động chủ động vượt khỏi phạm vi nhiệm vụ thường ngày mới giúp bạn nổi bật và phát triển nhanh hơn.
💬 Câu chuyện cá nhân:
Mình đã trải qua điều này khi làm việc trong một dự án. Khi cả team đang bế tắc với cách triển khai một tính năng phức tạp, mình đề xuất một hướng tiếp cận mới, dù ban đầu khá mạo hiểm. Buổi Sprint review hôm đó không chỉ là cơ hội để trình bày ý tưởng mà còn giúp cả team tránh được một rủi ro lớn. Khoảnh khắc được tech lead, anh em dev và quản lý gật đầu tán thưởng đã dạy mình rằng sự chủ động đôi khi là bước ngoặt.
Vài dấu hiệu của việc thiếu chủ động:
Chỉ làm những gì được giao
Đợi manager chỉ định hướng phát triển
Thụ động trong các cuộc họp team
Không có kế hoạch career path rõ ràng
✨ Gợi ý thực hành tính chủ động1
Cho sự nghiệp:
Đặt mục tiêu học tập và phát triển
Tìm kiếm feedback từ đồng nghiệp
Kiếm mentor hoặc coach
Cho công việc: đánh giá xem có khía cạnh nào mà mình có thể tạo ra giá trị ngoài những công việc được giao hay không
Chủ động: từ chuyện học cho tới chuyện muốn tăng lương, hãy chủ động cho sếp biết và record lại achievement của mình. Sếp không phải là thánh mà tới cuối năm tự nhiên biết hết công lao, nỗ lực của bạn.
trích Vài suy nghĩ về software engineer và việc phát triển sự nghiệp.
2. Học, học nữa, học mãi 🧠
📖 Học tập trong ngành công nghệ giống như bơi ngược dòng 🏊. Nếu bạn không học hỏi, bạn sẽ bị trôi bỏ lại phía sau.
💬 Câu chuyện cá nhân:
Mình đã trải qua hành trình từ iOS, sang Ionic, React Native, rồi Web development và backend. Mỗi lần chuyển đổi đều đầy thách thức:
Từ iOS sang cross-platform: thay đổi tư duy từ native sang hybrid, học cách optimize performance cho web view, làm quen với hệ sinh thái với JavaScript…
Từ Mobile sang Web: hiểu biết về browser rendering, nắm vững các Web APIs, học các design patterns mới…
Tóm lại là đòi hỏi một quá trình unlearn, relearn, reskill lại để đáp ứng nhu cầu công việc.
✨ Gợi ý để học hiệu quả
Xây dựng thói quen học tập:
Dành 30 phút để đọc tech blogs, sách, học cái mới
Học 2-3 khóa học online mỗi quý (Udemy, Coursera…)
Tham gia side project
Ưu tiên học những gì áp dụng được ngay
Tập trung vào kiến thức cơ bản trước khi đi sâu vào chuyên môn.
Thực hành và chia sẻ:
Viết technical blog
Workshop chia sẻ trong nội bộ công ty
Làm mentor cho junior devs
3. Phát triển kỹ năng mềm càng sớm càng tốt 🤝
💬 Câu chuyện cá nhân:
Nhìn lại chặng đường đã qua, có giai đoạn sự nghiệp của mình đi ngang vì quá tập trung vào kỹ thuật. Mình đã bỏ qua việc phát triển khả năng giao tiếp và tạo ảnh hưởng tích cực đến team, tới những người liên quan.
Dấu hiệu nhận biết khi quá focus vào technical:
Không quan tâm đến business context
Khó khăn trong việc giải thích technical concepts cho dân non-tech.
Thường xuyên conflict trong team, thiếu kĩ năng giao tiếp
✨ Gợi ý để ân bằng technical và soft skills
Giao tiếp hiệu quả:
Luyện tập trình bày technical topics
Học cách active listening
Thực hành cho/nhận feedback
Ví dụ: Thay vì nói "API này chậm quá", hãy nói "Mình thấy API X đang có response time trung bình 5s, cao hơn standard 3s. Mình đề xuất làm abcxyz"
Hiểu kỳ vọng của manager
Chủ động cập nhật tiến độ
Biết cách escalate vấn đề
Đây là một phạm trù rất rộng và vô chừng, chỉ khi bạn chủ động ngồi lại và xin feedback thì bạn mới biết mình đang thiếu kĩ năng nào để trau dồi.
Nếu bạn chỉ nói ngôn ngữ của máy, bạn sẽ bỏ lỡ cơ hội kết nối với con người.
4. Vượt qua giới hạn của "Code Monkey"🐒
Trong thời đại AI đang dần thay thế các công việc lập trình cơ bản, một kỹ sư phần mềm cần phải đóng nhiều vai trò khác nhau, đội nhiều chiếc mũ để giải quyết công việc. Từ việc hiểu nhu cầu người dùng, đánh giá tác động kinh doanh, đến việc thiết kế giải pháp có khả năng mở rộng.
💬 Câu chuyện cá nhân:
Trong một lần làm dự án, khách hàng yêu cầu thêm tính năng rất đơn giản. Mình thử ngồi lại và trao đổi sâu hơn, phân tích và phát hiện điều họ thực sự cần là cải thiện trải nghiệm người dùng, không phải thêm tính năng. Tư duy product và business đã giúp tìm ra đúng vấn đề để giải quyết.
🛠️ Các vai trò một kỹ sư cần đảm nhiệm:
Problem solver: phân tích root cause, đưa giải pháp, cân nhắc trade-offs…
Product thinker: hiểu nhu cầu user, đánh giá business impact, đề xuất chức năng…
System architect: thiết kế giải pháp mở rộng, tối ưu hiệu năng…
💡 Mẹo: Hãy tận dụng GenAI2 để tự động hóa task lặp lại và tập trung vào giải quyết bài toán lớn hơn.
Đừng chỉ là người lập trình giải quyết vấn đề, hãy là người nhìn ra vấn đề thực sự cần được giải quyết.
5. Your network is your net worth 💲
Networking 🌐 chỉ đơn giản là kết bạn với những người thú vị mà không nhất thiết phải tìm kiếm sự đổi chác lập tức cho mối quan hệ đó.
Các mối quan hệ chính là bệ đỡ ta trong thời điểm khóa khăn và nguồn cảm hứng trong giai đoạn thuận lợi
✨ Cách xây dựng network:
Bắt đầu từ nội bộ: tham gia tech talks, volunteer cho cross-functional projects, tổ chức event nội bộ…
Mở rộng ra cộng đồng: tham gia tech meetups, đóng góp open source, viết blog chia sẻ…
Duy trì kết nối: check-in thường xuyên, chia sẻ bài viết hay, chúc mừng thành công của đồng nghiệp…
Kinh nghiệm thực tế:
Làm việc lâu năm trong một công ty công nghệ lớn cũng là một lợi thế khi mình xây dựng được các mối quan hệ qua quá trình làm việc, để rồi khi có việc cần mình có thể dựa vào đó để kết nối với người phù hợp.
📖 TL;DR
Chủ động cho sự phát triển của bản thân 🛤️
Học hỏi liên tục 🧠
Quan tâm tới phát triển kỹ năng mềm 🤝
Đừng chỉ chăm chăm vào code 🐒
Xây dựng mối quan hệ chất lượng 🌐
✌️ Bài hôm nay chỉ có thế
Hãy bắt đầu ngay từ hôm nay bằng những hành động nhỏ: đặt kế hoạch phát triển bản thân trong 6 tháng tới, học một kỹ năng mới, tham gia một cộng đồng công nghệ, hay đơn giản là viết blog chia sẻ.
Bài học nào trong số này khiến bạn tâm đắc nhất? Hoặc bạn đã học được bài học nào từ hành trình của mình? Để lại comment cho mình biết nhé! Mình rất mong nhận được ý kiến từ độc giả của mình (và nếu bạn đã làm được đến mức này thì mình rất rất trân trọng 🙏🏻). Đừng ngần ngại để lại comment nhé, chắc chắn mình sẽ phản hồi!
See ya 🤖!
Bryant!
🗞️ Những bài viết liên quan bạn có thể quan tâm:
Phạm vi bài viết chỉ liên quan tới sự nghiệp, công việc
Generative AI: AI tạo sinh
Hay quá à, Cảm ơn chia sẻ hữu ích của bạn .
Bài viết khá hay nha. Extra, mình thích đi từ kiếm 1 vài cái networks xịn để từ đó kiếm được mentor/ friends xịn. Sau đó các kỹ năng kia có thể phát triển nhanh hơn nhờ sự giúp đỡ của mọi người.