Kỹ năng mềm cho lập trình viên

Viết ra những suy nghĩ của tôi về việc trở thành một đồng đội tốt và điều tôi ước mọi đồng nghiệp tương lai của mình sẽ biết

Trước khi chúng ta bắt đầu: Kỹ năng mềm là gì?

Kỹ năng mềm là sự kết hợp của các kỹ năng giao tiếp, cảm xúc, xã hội và con người cho phép chúng ta làm việc tốt với những người khác. Chúng thường bị bỏ qua, tuy nhiên, theo tôi các kỹ năng đó khá quan trọng trong thế giới phát triển phần mềm, mọi lập trình viên nên hiểu và cố gắng phát triển cho sự nghiệp của mình. Chắc chắn, code tốt là quan trọng, nhưng tôi có xu hướng đặt các kỹ năng cứng và kỹ năng mềm lên cùng mức độ quan trọng cho mọi lập trình viên. Theo tôi, một lập trình viên tuyệt vời cũng cần phải là một người đồng đội tuyệt vời. Hai thứ đi đôi với nhau.

Phát triển sự đồng cảm

Đồng cảm là khả năng hiểu cảm giác của người khác. Trong giây lát hãy tưởng tượng mình là một người khác và cố gắng nghĩ xem người đó thích gì. Theo tôi, đây là nền tảng của mọi tương tác. Là lập trình viên phải cộng tác với nhiều người, một số trong đó bạn có thể thích hoặc không thích, sự đồng cảm của chúng ta bị thách thức nhiều lần mỗi ngày, trong nhiều tình huống, chẳng hạn như:

  • khi bắt cặp và review
  • khi thu thập spec
  • khi debugg cho người khác
  • khi dẫn dắt các lập trình viên khác

Tầm quan trọng của ngôn ngữ

Ngôn ngữ và giao tiếp có tác động rất lớn trong cuộc sống hàng ngày của chúng ta: quá nhiều lần, tôi nhận thấy rằng mọi người tự ti khi bị hạ thấp hoặc cọ xát do văn hóa và các kỹ năng liên quan đến ngôn ngữ thay vì thiếu sự đồng cảm; đặc biệt đối với một số người chưa thành thạo 100% một ngôn ngữ nhất định, họ thường dễ bị hiểu nhầm hơn so với người nói tiếng bản ngữ.
Do sự đa dạng của các đội tôi làm việc, các tình huống như thế này xảy ra hàng ngày; Đôi khi nó dễ dàng nản lòng. Khi một người nói một ngôn ngữ khác, bạn đã phải đối mặt với hai vấn đề: lựa chọn từ ngữ và khía cạnh văn hóa. Dĩ nhiên, sự lựa chọn từ có thể được điều khiển từ các khía cạnh văn hóa: ví dụ, bằng tiếng Anh, thường sử dụng những lời xin lỗi, cảm ơn bạn, và vui lòng, trong câu nói. Tuy nhiên trong tiếng Việt thì hiếm khi.
Tất nhiên, tôi hy vọng người khác sẽ biết điều này và sẽ sử dụng những từ tương tự khi cần

Nghe kỹ, rồi nói

Đây có lẽ là lẽ thường mang giá trị toàn cầu, nhưng nó cần được liệt kê. Là lập trình viên, sau tất cả, chúng ta cố gắng để có hiệu quả trong mọi khía cạnh của cuộc sống.
Làm gián đoạn đồng nghiệp của bạn là một trong những hành vi phổ biến nhất mà tôi thấy trong các cuộc họp. Đó là một cách chắc chắn để làm nản lòng đồng nghiệp của bạn, trong trường hợp bạn đang tự hỏi.
Lắng nghe đầu tiên và cẩn thận là vô cùng quan trọng, và không chỉ là vấn đề tôn trọng, ngay cả khi bạn không đồng ý với từng từ. Bạn có thể nghĩ rằng nó rất lãng phí thời gian, nhưng điều đó lại đúng.

Dạy, nhưng cũng học cùng một lúc

Nó rất dễ dàng để đi xuống như hạ thấp khi bạn đang cố gắng đưa ra quan điểm của mình, giải thích một cái gì đó, hoặc trong khi tư vấn cho người khác. Giao tiếp là vô cùng khó khăn, vì vậy bạn nên mong đợi điều này xảy ra ngay cả khi bạn hoàn toàn không có ý đó. Có nhiều cách chúng ta có thể cố gắng để tránh như hạ thấp tông giọng trong khi thảo luận.

  • Tất nhiên, lựa chọn cẩn thận lời nói của bạn là điều quan trọng, và lời khuyên của tôi là hãy trung lập hết mức có thể: ví dụ, thay vì cách tiếp cận tồi, thì tôi sẽ nói rằng đó là một cách không tối ưu, hay đó có thể là tốt hơn.
  • Ngừng chỉ huy, thay vào đó là tư vấn: thay vì nói, bạn nên làm theo cách đó, bạn có thể nói, lời khuyên của tôi là hãy làm theo cách đó.
  • Ngừng chỉ nói về quan điểm của bạn; đặt câu hỏi thường xuyên và kiểm tra quan điểm của người đối thoại của bạn về những gì bạn đang thảo luận.
  • Ngừng giả sử bạn biết mọi thứ về chủ đề này.

Chấp nhận những lời chỉ trích và hãy cởi mở để thay đổi

Chúng ta là một ngành công nghiệp sáng tạo.
Đối với chúng ta, code của chúng ta là nghệ thuật, giống như một bức tranh đối với một nghệ sĩ hoặc một bài hát cho một nhạc sĩ.
Trở thành lập trình viên có nghĩa là bị đánh giá mỗi ngày, bằng cách này hay cách khác. Khi chúng ta có xu hướng xác định cá nhân với các kết quả đầu ra của chúng ta, chúng ta đưa ra bất kỳ phán xét nào về code, ý tưởng của chúng ta và quan điểm của chúng ta cực kỳ trung tâm. Một trong những phần khó nhất trong công việc của chúng ta là chấp nhận những lời chỉ trích từ người khác, có thể là trong các cuộc phỏng vấn, các cuộc họp, đánh giá PR, v.v.

Chúng ta dành nhiều năm để rèn luyện các kỹ năng của mình trong một công nghệ cụ thể và khi thời gian trôi qua, chúng ta đã quen với cách làm việc của chúng ta hoặc theo cách của nhóm chúng ta. Do đó, chúng ta ngày càng trở nên chống lại những thay đổi, đặc biệt là khi họ mang đến từ bên thứ ba.
Hãy nhớ rằng lính mới muốn bắt đầu tái cấu trúc toàn bộ cơ sở mã? Hoặc có người muốn giới thiệu Go và thay thế Java của bạn? Tôi chắc chắn rằng tất cả chúng ta, đôi khi, đã sống những tình huống như vậy: Tôi không biết bạn, nhưng đối với tôi, họ cuộc tấn công cá nhân tôi.
Có thể hiểu, các nhà phát triển ghét thay đổi.
Nếu bạn không chú ý, điều này sẽ xảy ra theo cả hai cách:

  • Lính mới thích kiến trúc tại công ty trước của anh ta và thiếu kiên nhẫn để viết lại mọi thứ theo cách mà anh ấy đã sử dụng, vì anh ấy chắc chắn 100% rằng nó tốt hơn.
  • Thay vào đó, nhóm đã quen với cách họ viết codebase của họ (hoặc theo cách họ thừa hưởng nó) và không có ý định để cho lính mới thay đổi mọi thứ.

Tất nhiên, đây là một kịch bản chung (mặc dù rất phổ biến) và bất kỳ bên nào cũng có thể đúng. Có lẽ kiến trúc hiện tại thực sự là xấu và cần tái cấu trúc, và có lẽ anh chàng chỉ đang rất quan tâm.
Vấn đề là nếu bạn ngay lập tức cảm thấy bị tấn công khi có người khác đưa ra sự kiện để thay đổi điều gì đó, thì vấn đề là ở bạn, thay vì với chính ý tưởng đó. Bạn đã bất hợp lý để phòng thủ chống lại một cách tiếp cận mới trước khi hoàn toàn hiểu nó.
Tôi nghĩ rằng điều này xảy ra với tôi mọi lúc. Nó rất giống tôi và bao nhiêu người khác. Làm thế nào để tôi chắc chắn rằng tôi không chiến đấu với ý tưởng này vì tôi?

  • Tôi lắng nghe nó một cách cẩn thận
  • Tôi yêu cầu đồng nghiệp cho tôi một chút thời gian để thực hiện một số nghiên cứu và suy nghĩ về nó
  • Tôi trở lại với những suy nghĩ trung thực của tôi

Nếu bạn ngay lập tức cảm thấy bị tấn công khi người khác đưa ra sự kiện để thay đổi điều gì đó, thì vấn đề là ở bạn, hơn là với chính ý tưởng đó.

Lời khuyên chung

  • Nếu bạn nghĩ rằng một đồng nghiệp đã làm tốt, hãy ủng hộ và khen ngợi họ thật sự.
  • Cung cấp tín dụng cho người khác khi đến hạn.
  • Càng minh bạch càng tốt: nói chuyện với đồng nghiệp của bạn về việc làm rõ, thay đổi và ý kiến. Ví dụ: lén lút cam kết khi ai đó ở ngoài văn phòng không phải là một cách hay để tái cấu trúc mã người khác. Nói chuyện và suy nghĩ về nó cùng nhau một cách cởi mở.
  • Đôi khi xung đột sẽ xảy ra nếu bạn không làm gì sai và làm theo tất cả các lời khuyên có thể; hãy nhớ rằng điều này là hoàn toàn bình thường, chúng ta có thể kiểm soát mọi thứ. Các công ty và con người rất phức tạp, và đây đơn giản là sự đơn giản hóa những gì thực sự xảy ra hàng ngày.

Tổng kết

Tất nhiên, đây là ý kiến cá nhân của tôi về những gì tạo nên một người đồng đội tốt và cách một kỹ sư phần mềm giỏi nên cư xử với đồng nghiệp tại nơi làm việc. Đây không phải là khía cạnh khoa học - chỉ là quan điểm của tôi dựa trên kinh nghiệm của tôi. Tóm lại, đây là một số khía cạnh mà tôi muốn thấy ở một người nào đó như là đồng nghiệp tiếp theo của tôi:

  • Đồng cảm giúp bạn trở thành một người tốt hơn nhưng đặc biệt là một đồng nghiệp tốt hơn
  • Cố gắng hiểu quan điểm khác của cộng đồng, xem xét văn hóa, ngôn ngữ và cách các chuẩn mực xã hội của họ có thể khác với quan điểm của bạn
  • Ngừng gạt bỏ ý kiến của người khác trước khi nghe ý kiến đầy đủ của họ
  • Cố gắng không hạ mình trong những tình huống dễ xảy ra hiểu lầm và xung đột
  • Hãy cố gắng cởi mở hơn với những lời chỉ trích và thay đổi, và hiểu khi nào bạn thấy bất hợp lý để bảo vệ cho ý kiến của bạn
  • Đôi khi các tình huống xấu sẽ xảy ra ngay cả khi đã làm mọi thứ chính xác theo quan điểm của bạn; không nên chán nản, điều đó là bình thường và những điều này sẽ đóng vai trò là kinh nghiệm cho sự nghiệp lâu dài của bạn

via blog.bitsrc.io