4 Kỹ năng quan yếu nhất đối với một lập trình viên

  -  

sở hữu hồ hết lập trình web kỹ thuật, tiếng nói lập trình và những nền móng tăng trưởng như bây giờ, thì rất khó để nhận ra đâu là thứ phải chăng nhất để bạn đầu cơ thời kì và công sức học các kỹ năng quan yếu trong nghề tăng trưởng phần mềm.

Tôi thường được rộng rãi người hỏi về việc khiến thế nào để phát triển thành một lập trình viên chuyên nghiệp hơn, và rằng liệu họ có nên đầu cơ thời gian vào một tiếng nói lập trình hoặc công nghệ xác định nào đấy hay ko. Nhưng hôm nay, tôi sẽ liệt kê ra đây 1 số kỹ năng tôi nghĩ rằng ấy là những kỹ năng quan trọng nhất và không bị lỗi thời mà một lập trình viên nên sở hữu, chúng sẽ mang lại cho bạn những thời cơ rẻ nhất trong nghề nghiệp và giúp bạn khiến việc hiệu quả hơn.

1. Kỹ năng giải quyết vấn đề
Trước đây, tôi đã từng kể về sự thiết yếu về việc học cách giải quyết vấn đề, bởi vì tôi nghĩ rằng đây là 1 kỹ năng cực kỳ quan yếu đối có bất kỳ một lập trình viên nào. Công việc vững mạnh phần mềm thì thực ra 100% là để khắc phục các vấn đề. Nếu ko mang những trắc trở thì chúng ta cũng chẳng cần với những phần mềm khiến cho chi phải không bạn?

gần như phần mềm đều được ngoại hình để khắc phục 1 số vấn đề của người sử dụng và trong chiếc biện pháp chung đấy lại sở hữu một mảng rất to những khó khăn nhỏ hơn phát sinh. Không quan yếu về việc bạn đang dùng tiếng nói lập trình hoặc công nghệ nào, ví như bạn chẳng thể khắc phục những vấn đề thì bạn ko phải là một người lớn mạnh phần mềm giỏi.

Tham khảo =>>https://mindx.edu.vn/blog/post/lap-trinh-android

1 điều đáng kinh ngạc là tất cả những lập trình viên lại rất yếu trong kỹ năng khắc phục vấn đề. Tôi thường xuyên nghe được những lời than phiền về các buổi phỏng vấn tuyển dụng rằng nó thì quá khó, bởi vì họ đã hỏi lập trình viên về bí quyết giải quyết một vài vấn đề phức tạp. Tôi đã đề cập về việc vì sao các buổi phỏng vấn khó lại là 1 điều thấp và 1 phần của lý do là bởi vì họ muốn kiểm tra khả năng giải quyết vấn đề của các lập trình viên mà thôi. Tôi biết rằng mang toàn bộ lập trình viên vẫn không đồng ý mang tôi về quan niệm này và họ không hiểu tại sao 1 trang web giống như TopCoder sẽ làm cho nâng cao khả năng lớn mạnh phần mềm của họ lên phần nhiều, nhưng từ kinh nghiệm tư nhân thì tôi biết rằng chính việc thực hiện bí quyết giải quyết vấn đề trên TopCoder là bước đột phá trong nghề nghiệp của tôi.

Bạn hãy nghĩ về 1 người thợ mộc làm cho ví dụ. Ví như muốn trở thành 1 người thợ mộc thành công, thì bạn nên giỏi trong việc cắt gỗ. Bạn cũng phải mang khả năng thực hành được toàn bộ các dạng cắt và dùng nhiều dụng cụ khác nhau. Không quan trọng là bạn với bao lăm năm kinh nghiệm trong nghề thợ mộc hay bạn mang khả năng kiểu dáng đồ mỹ nghệ thấp tới đâu, nếu như mỗi lần bạn thử cắt gỗ mà bạn phải nặng nhọc lắm mới hoàn thành được nhát cắt đó thì bạn không phải là 1 người thợ mộc chuyên nghiệp.

Cắt gỗ là một kỹ năng căn bản của nghề thợ mộc, cũng giống như khắc phục vấn đề là kỹ năng cơ bản của nghề vững mạnh phần mềm.

hai. Kỹ năng tự học

sở hữu thể kể rằng ko có 1 kỹ năng nào trong cuộc sống lại quan trong bằng kỹ năng học bí quyết để học. Kỹ năng này đặc thù quan trọng trong lĩnh vực tăng trưởng phần mềm, bởi vì ko ngành nghề nào mà tôi biết lại mang tốc độ thay đổi nhanh hơn là ngành nghề lớn mạnh phần mềm.

Xem thêm =>>https://mindx.edu.vn/course/fullstack-web

Bạn không thể biết hầu hết về mọi thứ. Thậm chí bạn cũng chẳng thể đầu tư thời kì để phát triển thành thông tỏ dù chỉ một kỹ thuật hoặc framework xác định nào ấy — bởi vì mọi thứ thay đổi quá nhanh! Thay vì đấy bạn cần có khả năng chóng vánh thu được kiến thức mà bạn cần cho công tác đang làm cho. Giả dụ bạn thực sự muốn có một kỹ năng mà sẽ giúp bạn luôn tiện lợi trong nghề vững mạnh phần mềm, thì hãy học cách làm cho thế nào để dạy chính mình.

Chỉ mang một phương pháp độc nhất vô nhị để vững mạnh kỹ năng này là hãy thực hiện nó. Hãy học một ngôn ngữ lập trình hoặc kỹ thuật mới, thậm chí nếu như bạn nghĩ rằng mình sẽ chẳng bao giờ sử dụng nó. Bạn sẽ rất ngạc nhiên vì khả năng hấp thu rất nhanh của mình, bởi vì bạn đã với tri thức nền tảng trước đó rồi. Giả dụ bạn sở hữu thể chóng vánh thích ứng có sự đổi thay chóng mặt trong lĩnh vực phát triển phần mềm và các khoa học cũng như các nền tảng hài hòa cùng với nó, thì bạn sẽ mang các kỹ năng mà sẽ xoành xoạch giải quyết được yêu cầu công việc.

mặc dù tôi mang tí chút hoài nghi về một tuyên bố của tác kém chất lượng Tim Ferris, anh ta đã viết một cuốn sách hoàn hảo tên là “Trở thành đầu bếp giỏi trong vòng 4 giờ”, nó chứa một số kỹ thuật rất hay về cách khiến cho thế nào để học mọi thứ một cách nhanh nhất. (Tôi cũng đang muốn viết 1 cuốn sách tương tự về mọi chủ đề).

3. Kỹ năng đặt tên
Kỹ năng đặt tênKhi mọi người hỏi tôi rằng công tác mà tôi làm cho hàng ngày là gì, tôi thường nói nghề của tôi là “đọc các thứ do người khác đặt tên và đặt tên cho 1 số thứ.” Vâng, thực ra ko một người nào hỏi tôi thắc mắc đó và tôi cũng không thực sự trả lời theo phương pháp này, nhưng tôi chắc là mình có thể khiến như vậy. Tăng trưởng phần mềm thì toàn bộ là về bộc lộ những thứ trừu tượng. Toàn bộ các thứ mà chúng ta đang xây dựng thì chẳng thể nhìn thấy được.

Mỗi lần mà bạn viết code tức là bạn đang đặt tên cho 1 số thứ. Khi bạn đọc code của chính mình hoặc của một ai khác viết ra, thì bạn đang quyết tâm hiểu đoạn code đó phê duyệt tên của những thứ trong nó. Hầu như tôi với thể đoán xác thực trình độ của 1 lập trình viên bằng cách xem qua phương pháp họ đặt tên những phương thức, biến và các lớp trong code mà họ viết.

một lập trình viên mà thiếu hụt khả năng đưa ra những tên thấp tới các định nghĩa và dữ liệu trong code của họ thì giống như 1 nhà thông dịch mà bị câm vậy. Ko quan trọng liệu bạn có hiểu một điều gì ấy hay không, nếu bạn chẳng thể giảng giải điều đấy một cách thức rõ ràng thì trong phút giây nó sẽ rời khỏi đầu của bạn.

phương pháp tốt nhất để tăng kỹ năng này là xoành xoạch thực hiện nó. Tôi thường đổi tên một số thứ trong code ngay lúc tôi vừa đọc và hiểu nó. Ngay lúc tôi bắt đầu hiểu được phương thức đấy thực thi điều gì, thì tôi sẽ thay đổi tên của nó cho phù hợp mang điều tôi hiểu. Tôi sẽ làm cho điều này cả trong khi tôi đang đọc code, thậm chí việc này không tạo ra một đổi thay logic nào trong đó. Bạn càng quy tụ nhiều vào việc đưa ra những dòng tên thích hợp cho những thứ, thì bạn ngày càng trở thành rẻ hơn. Điều này cũng là thứ dễ nhận thấy nhất về đoạn code của bạn. Rất khó để biết liệu code của bạn thì sở hữu đúng hoặc hiệu quả hay ko chỉ bằng bí quyết xem qua chúng, nhưng giả dụ tôi đọc nó và sở hữu thể hiểu được thì tôi sẽ cho rằng bạn biết bạn đang khiến cho gì.

4. Kỹ năng cộng tác mang mọi người

Trong danh sách này thì kỹ năng hợp tác có mọi người được liệt kê cuối cùng, nhưng trong nhiều trường hợp thì sở hữu thể nói rằng nó là kỹ năng đầu tiên và quan yếu nhất. Ở mọi nơi bạn tới đều mang con người. Trừ lúc bạn làm việc 1 mình hoặc lớn mạnh phần mềm cho chính bạn xài, còn ko thì người khác sẽ ảnh hưởng đến nghề nghiệp lớn mạnh phần mềm của bạn.

Trước đây tôi đã nhắc về tại sao bạn lại không muốn chỉ trích người khác, nhưng thực ra với rộng rãi cách thức để hiệp tác có mọi người hơn là chỉ trích. Tôi luôn đọc lại cuốn sách lừng danh của tác kém chất lượng Dale Carnegie, là cuốn “Đắc Nhân Tâm”, bởi vì cuốn sách này rất quan trọng trong việc học phương pháp làm cho thế nào để thành công trong cuộc sống. Nếu như bạn muốn phát triển những kỹ năng của con người thì hãy đọc cuốn sách này!

Vấn đề cơ bản là loài người chẳng phải là một sinh vật với logic, chúng ta thường hành xử theo xúc cảm. Cứng cáp là chúng ta luôn tự hào về khả năng lý trí của mình, nhưng trong thực tại thì đông đảo những quyết định mà chúng ta tạo ra thì thường bị ảnh hưởng bởi cảm xúc hơn là lý trí. Điều ấy với nghĩa là trong nghề vững mạnh phần mềm thì trừ lúc bạn sở hữu thể hợp tác hiệu quả mang các lập trình viên khác, những người quản lý và thậm chí là cả khách hàng; nếu như ko thì bạn sẽ luôn luôn gặp phải những khó khăn rối rắm, cho dù bạn mang các ý tưởng phải chăng tới mấy hay kỹ năng của bạn với lý tưởng ra sao đi nữa.

tích cực tham gia vào cùng đồng vững mạnh phần mềm tổng thể sở hữu thể giúp bạn đa số trong nghề nghiệp. Nó không chỉ là về tạo mối quan hệ, nhưng việc đưa tên của bạn ra ngoài cũng là cách thức hay để xây dựng một “nghiệp” phải chăng. Thực hành điều này thành công là bản lề dẫn đến khả năng bạn có thể hợp tác hiệu quả mang mọi người. (Bạn có muốn tạo ra 1 trục đường tắt trong việc học bí quyết làm cho thế nào để cộng tác sở hữu mọi người không? Nó thì rất đơn thuần. Hãy thấp bụng!)

Thế còn các kỹ năng về thực hành thì sao?
Bạn với thấy rằng tôi vẫn không đưa vào trong danh sách trên một kỹ thuật xác định hoặc thậm chí một đôi kỹ năng đang cường thịnh hành hiện giờ là phát triển web và di động không? Mang một nền tảng chắc chắn trong một đôi ngành nghề khoa học nào đấy là điều khá quan yếu, nhưng thực ra những kỹ năng ấy lại ko quan trọng bằng 4 kỹ năng mà tôi đã đề cập ở trên.

nếu bạn với thể giải quyết vấn đề, học mọi thứ nhanh chóng, đặt tên mọi thứ hợp lý, và hiệp tác hiệu quả với mọi người, thì bạn sẽ với được mức thành công lớn hơn phổ thông trên các con phố sự nghiệp và sẽ thành chuyên gia trong bất kỳ ngành nghề khoa học nào.

Chuyện học tập & làm việc ở MindX