Joel Goldberg là người đã làm trong ngành công nghiệp phần mềm hơn bốn thập kỷ và gần đây đã nghỉ hưu. Khi rời đi, anh ấy đã chia sẻ với các đồng nghiệp tại BTI360.com về một số bài học mà anh ấy đã học được trong sự nghiệp của mình. Bài viết được chia sẻ trên BTI360 Blog và ITguru lược dịch. Đây là những bài học cực kỳ hữu ích cho những ai đang và sẽ làm việc trong ngành này.

Nhìn lại bốn thập kỷ trong ngành công nghiệp phần mềm, tôi thật sự bị ấn tượng bởi sự đổi kinh ngạc của ngành này. Tôi bắt đầu sự nghiệp của mình với thẻ đục lỗ và tôi đang kết thúc trong kỷ nguyên điện toán đám mây. Bất chấp sự thay đổi này, nhiều nguyên tắc đã giúp tôi trong suốt sự nghiệp của mình vẫn không thay đổi và tiếp tục phù hợp. Khi rời khỏi bàn phím, tôi muốn chia sẻ sáu ý tưởng mà tôi đã học được từ sự nghiệp kỹ sư phần mềm của mình. 

Nội dung

  • 1. Hãy coi chừng lời nguyền của kiến thức
  • 2. Tập trung vào các nguyên tắc cơ bản
  • 3. Đơn giản
  • 4. Lắng nghe để hiểu
  • 5. Cẩn thận với sự phụ thuộc
  • 6. Trung thực và thừa nhận khi bạn không phù hợp với vai trò của mình

1. Hãy coi chừng lời nguyền của kiến thức

Khi bạn biết hay giỏi về điều gì đó, bạn hầu như không thể tưởng tượng được cảm giác (của người khác) không biết về điều đó sẽ như thế nào. Đây là lời nguyền của kiến thức, và nó là căn nguyên của vô số hiểu lầm và sự kém hiệu quả (đặc biệt trong giao tiếp). Những người thông minh và thoải mái với sự phức tạp có thể đặc biệt dễ mắc phải nó!

Nếu bạn không đề phòng lời nguyền kiến thức (Curse of Knowledge), nó có khả năng làm xáo trộn tất cả các hình thức giao tiếp, bao gồm cả code. Công việc của bạn càng chuyên môn hóa, bạn càng có nhiều nguy cơ giao tiếp theo những cách khiến người khác không hiểu được bạn. Chống lại lời nguyền của kiến thức. Làm việc để hiểu khán giả của bạn. Hãy thử tưởng tượng bạn như khi mới học giao tiếp lần đầu tiên.

2. Tập trung vào các nguyên tắc cơ bản

Công nghệ liên tục thay đổi, nhưng một số cách tiếp cận cơ bản để phát triển phần mềm vượt qua những xu hướng này. Dưới đây là sáu nguyên tắc cơ bản sẽ tiếp tục có liên quan trong thời gian dài:

  • Làm việc theo nhóm – Các nhóm tuyệt vời xây dựng phần mềm tuyệt vời. Đừng coi làm việc nhóm là điều hiển nhiên.
  • Tin cậy – Các nhóm di chuyển với tốc độ đáng tin cậy. Hãy trở thành kiểu người đáng tin cậy mà bạn muốn làm việc cùng.
  • Giao tiếp – Giao tiếp trung thực và chủ động. Tránh những lời nguyền về kiến thức.
  • Tìm kiếm sự đồng thuận – Dành thời gian để đưa cả nhóm của bạn đi cùng. Hãy để cuộc thảo luận và bất đồng đưa bạn đến giải pháp tốt nhất.
  • Kiểm tra tự động – Mã được kiểm tra tốt cho phép nhóm của bạn tự tin tiến nhanh.
  • Code và thiết kế rõ ràng, dễ hiểu và có thể điều hướng – Hãy nghĩ đến kỹ sư tiếp theo sẽ tiếp quản code của bạn với tư cách là khách hàng của bạn. Viết code sao cho người kế nhiệm của bạn sẽ không gặp bất kỳ khó khăn nào khi đọc, bảo trì và cập nhật. 

3. Đơn giản

Các giải pháp nên càng đơn giản càng tốt. Giả sử người tiếp theo duy trì code của bạn sẽ không thông minh bằng bạn. Bất cứ khi bạn có thể sử dụng ít công nghệ hơn, hãy làm như vậy.

4. Lắng nghe để hiểu

Một trong bảy thói quen của Stephen Covey là “Lắng nghe và thấu hiểu (Seek First To Understand, Then To Be Understood)”. Câu châm ngôn này đã giúp tôi nhiều hơn bất kỳ lời khuyên nào khác để trở thành một người biết lắng nghe và đồng đội. Nếu bạn muốn tạo ảnh hưởng và làm việc hiệu quả với người khác, trước tiên bạn cần hiểu họ. Tích cực lắng nghe để hiểu cảm xúc, ý tưởng và quan điểm của họ trước khi bạn bắt đầu cố gắng làm cho suy nghĩ của riêng bạn được biết đến.

5. Cẩn thận với sự phụ thuộc

Sẽ luôn có những sản phẩm hấp dẫn tiếp theo hứa hẹn sẽ tạo ra một cuộc cách mạng về cách xây dựng phần mềm. Các công cụ Kỹ thuật Phần mềm Hỗ trợ Máy tính (Computer Assisted Software Engineering- CASE), COTS, các sản phẩm Lập kế hoạch Nguồn lực Doanh nghiệp (ERP) như Peopleoft và SAP và thậm chí có cả Ruby. Họ tuyên bố giảm đáng kinh ngạc về chi phí và thời gian nếu bạn chấp nhận triết lý phát triển toàn diện của họ. Điều không phải lúc nào cũng rõ ràng là chi phí trả trước đáng kể hoặc những ràng buộc. Sự phụ thuộc (lock-in) trước đây chủ yếu xảy ra với giữa bạn và các nhà cung cấp, nhưng bây giờ nó cũng có thể xảy ra với các framework. Dù bằng cách nào, khi đã phụ thuộc có nghĩa là bạn phải bỏ chi phí đáng kể nếu muốn thay đổi. Chọn một cách khôn ngoan. Mới không phải lúc nào cũng tốt hơn!

6. Trung thực và thừa nhận khi bạn không phù hợp với vai trò của mình

Tại một thời điểm nào đó trong sự nghiệp, bạn có thể thấy mình ở một vai trò không phù hợp. Không phù hợp không phải là một khuyết điểm, nhưng đó là một vấn đề bạn không nên bỏ qua. Có thể có nhiều hơn một giải pháp cho tình huống khó xử như vậy: bạn có thể phải phát triển hoặc vai trò có thể phát triển. Điều quan trọng là phải có kiến ​​thức bản thân để nhận ra những gì đang xảy ra và đưa bản thân ra khỏi điểm không lành mạnh.

Khi tôi còn ở GM, bạn là một người thất bại nếu bước tiếp theo của bạn không thành công — quản lý nhiều người hơn hoặc đảm nhận các dự án lớn hơn, phức tạp hơn. Đối với nhiều người, điều này tạo nên một con đường sự nghiệp khốn khó (xem Nguyên tắc Peter). Tại EDS, văn hóa không giống như vậy. Mọi người chuyển đến và rời khỏi vai trò quản lý. Không có sự kỳ thị nào liên quan đến việc chuyển từ các vai trò có phạm vi lớn hơn, như người lập kế hoạch chiến lược, sang các vai trò có phạm vi hẹp hơn, như PM hoặc nhà phát triển cấp dự án. Tôi là một trong những người đã tận dụng được tính linh hoạt này, chuyển từ vai trò ở trên đỉnh kim tự tháp kỹ thuật trở lại là nhà phát triển cấp dự án. Tôi không bao giờ nhìn lại.