Là một lập trình viên xuất sắc bao gồm nhiều yếu
tố hội tụ chứ không phải chỉ giỏi viết code. Justin James đã liệt kê những điểm
nổi bật cần có của các lập trình viên để họ có thể bước vào hàng ngũ cấp cao
trong nghề nghiệp của mình.
Để trở thành một lập trình viên
xuất sắc, bạn cần phải có đầy đủ đặc điểm giúp cho kỹ năng, kinh nghiệm và kiến
thức của bạn kết hợp nhuần nhuyễn để làm việc. Có một số lập trình viên có
trình độ cao để phát triển trong công việc nhưng họ sẽ không bao giờ thành công
bởi thiếu những yếu tố cần thiết khác. Dưới đây là 7 kỹ năng cần có để trở
thành một lập trình viên xuất sắc.
Học kỹ năng “kỹ thuật mới” và
“phi kỹ thuật” theo cách riêng của mình
Lập trình viên kém chỉ học hỏi
những điều khi nó hoàn toàn cần thiết. Lập trình viên giỏi học các kỹ năng “kỹ
thuật mới” xuất hiện. Còn lập trình viên xuất sắc không chỉ học các kỹ năng “kỹ
thuật mới” cho riêng mình mà còn học kỹ năng “phi kỹ thuật”. Họ sẵn sàng đón nhận
nguồn kiến thức mà những người khác có thể không bao giờ quan tâm.
Đặt điều đó trong hoàn cảnh cụ
thể, các lập trình viên kém chỉ học XAML khi họ bắt đầu một dự án sử dụng WPF.
Lập trình viên giỏi đã học nó một năm trước bởi vì họ cảm thấy thú vị. Lập
trình viên xuất sắc lại chăm chỉ đọc hướng dẫn thiết kế các ứng dụng WPF, lý
thuyết khả năng sử dụng, hoặc học một số khóa học như nghiên cứu chẳng hạn, để
làm cho UIS trở nên đặc biệt hơn.
Biết nhìn vào thực tế, không
giáo điều
Tuân thủ cứng nhắc các
"quy tắc bất thành văn của lập trình" là một điều rất khó thực hiện với
lập trình viên. Một lập trình viên giỏi sẽ luôn biết nhìn vào thực tế, căn cứ
tình hình cụ thể chứ không chỉ giáo điều theo sách vở. Điều ấy có nghĩa là phải
biết sáng tạo và học hỏi. Sẽ có lúc bạn viết code mà không học hỏi cách thực hiện
của người đi trước. Nhiều khi bạn bế tắc khi không biết phải viết code như thế
nào. Nhưng hãy nhớ rằng sẽ không bao giờ có bad-code nếu có nhiều hơn một cách
để viết nó, trừ khi bạn đã cạn kiệt khả năng sáng tạo.
Biết cách nghiên cứu để tìm ra
giải pháp
Nghiên cứu để tìm câu trả lời
có nghĩa là bạn sẽ làm nhiều hơn việc chỉ gõ một số từ khóa vào một công cụ tìm
kiếm hoặc đăng một câu hỏi tại Stack Overflow hoặc
các diễn đàn MSDN.
Tôi từng nhập vấn đề vào công cụ tìm kiếm mà không tìm ra kết quả. Mỗi câu hỏi
tôi đăng trên Stack Overflow hoặc các diễn đàn MSDN cũng không bao giờ có được
một câu trả lời thỏa đáng. Nhưng tôi vẫn giải quyết được vấn đề và nghĩ cách
chuyển vấn đề sang một hướng đi khác. Tôi không phải là nhà ảo thuật, tôi chỉ
biết làm thế nào để tìm câu trả lời hoặc phát hiện ra nguyên nhân gốc rễ.
Có nhiều vấn đề là tình huống,
và nếu bạn phụ thuộc vào công cụ tìm kiếm hoặc các diễn đàn, bạn có thể lãng
phí rất nhiều thời gian để đi xuống một cái hang thỏ (ý nói đi vòng vèo, lãng
phí thời gian) và có thể không bao giờ nhận được một giải pháp như ý. Bạn hãy
nghiên cứu kỹ vấn đề để phân tích nguyên nhân gốc, tìm hiểu đầy đủ về hệ thống
cơ bản để tìm manh mối và giải pháp khác. Và hơn hết, bạn hãy tìm hiểu thật kỹ
để có cái nhìn xa hơn về một vấn đề trước khi đi sâu vào nó.
Có niềm đam mê
Bạn không thể bước lên đỉnh cao
trong nghề này mà không yêu công việc. Có một số lập trình giỏi nói rằng: "Với
tôi, nó đơn giản chỉ là một công việc". Nhưng nếu đó là ý nghĩ của bạn, bạn
sẽ không thể sẵn sàng làm bất cứ điều gì để thành công. Ý kiến này của tôi khiến
rất nhiều người bất mãn, bởi vì họ cảm thấy đó là một sự xúc phạm cá nhân.
"Tôi là một lập trình giỏi, nhưng tôi còn có những ưu tiên khác cho cuộc sống
của tôi." Tôi hoàn toàn hiểu được, tôi cũng có những ưu tiên khác nữa. Nhiều
khi tôi ghét phải nói ra điều đó, nhưng khi đam mê công việc, tôi sẵn sàng (mặc
dù không mong muốn) từ bỏ những ưu tiên khác để hoàn thành thật tốt công việc của
mình. Đó không phải là một sự xúc phạm. Nếu bạn không sẵn sàng rút khỏi tất cả
các điểm dừng khác, bạn không thể đạt được thành công, đó là sự thật.
Bạn phải có niềm đam mê lập
trình nhiều hơn nữa - bạn cũng phải vui mừng và tự hào về công việc của bạn,
công nghệ bạn đang sử dụng, ông chủ của bạn, dự án của bạn, và tất cả những cái
khác. Tôi đã thấy một số lập trình viên giỏi và thậm chí các lập trình viên xuất
sắc chỉ làm việc ở mức độ bình thường bởi vì một số thứ không thích hợp với họ.
Chẳng hạn như họ ghét dự án hoặc là phải sử dụng một công nghệ mà họ không
thích. Tôi đã có một dự án phát triển, đã làm việc với dự án đó. Nhưng tôi
không thích nó ngay từ lúc đầu. Nếu bạn thấy mình trong tình huống đó, bạn cần
phải giải quyết ngay lập tức bằng cách khám phá điều gì đó về công việc, dự án
được nhận, hoặc ra khỏi đó. Dự án đó sẽ không có giá trị nếu bạn không đam mê
nó.
Để cái tôi của mình lại phía
sau
Nhiều lập trình viên có cái tôi
rất lớn. Bạn thông minh hơn, hiểu biết nhiều hơn, hoặc có kinh nghiệm hơn người
khác không có nghĩa là bạn giỏi hơn người đó. Bạn cần phải đối xử với mọi người
một cách tôn trọng, biết lắng nghe và thực tâm xem xét những ý tưởng của người
khác. Bạn hãy yêu cầu giúp đỡ khi cần thiết và không coi thường bất cứ ai khác.
Bạn cũng nên quan tâm nhiều hơn về việc giúp đỡ các đội khác thành công nếu được
họ tín dụng cho công việc đó.
Có tinh thần kinh doanh
Các lập trình viên giỏi nhất
không phải chỉ biết đến kỹ thuật. Họ có cảm giác thực sự của các doanh nhân và
cảm thấy mình thực sự làm chủ trong các sản phẩm. Đối với họ, sự thành công của
sản phẩm không chỉ phục vụ việc tăng lương. Bởi vì họ có tâm huyết trong các dự
án, làm việc vì lợi ích của dự án và muốn tiến xa hơn nữa trong công việc.
Đo hai lần, cắt một lần...
nhưng đừng đo quá ba lần
Một trong những sai lầm tồi tệ
nhất một lập trình viên có thể làm là lao vào viết mã mà không có bất kỳ ý tưởng
gì về nó. Khi lập trình viên xuất sắc bắt tay vào viết mã, đó là vì các thông số
kỹ thuật rất giống với một mô hình họ thực hiện trước đây. Và khi họ đang phải
đối mặt với một vấn đề mới, họ nghĩ ngay đến kế hoạch và nghiên cứu sâu hơn.
Điều quan trọng nhất của lập
trình viên xuất sắc là không để cho mình bị hút vào cái bẫy "tê liệt phân
tích". Bạn phải biết thận trọng hơn về một số điều (ví dụ bất cứ thứ gì
liên quan đến tiền hoặc dữ liệu cá nhân). Bạn cũng cần tính toán cẩn thận trước
khi làm (Đo hai lần, cắt một lần...) nhưng đừng để mất quá nhiều thời gian cho
việc đó (Đừng đo quá ba lần).
Điều quan trọng nữa là sau khi
bắt đầu viết mã, bạn phát hiện một có một vài điểm sai sót nào đó và thấy cần
phải điều chỉnh kế hoạch thì hãy tạm dừng kế hoạch đó lại. Các lập trình viên
giỏi nhất mà tôi biết sẵn sàng hy sinh một kế hoạch nếu nó không còn phù hợp hoặc
phát hiện nó có những thiếu sót không thể khắc phục.
Cuối cùng, chúc bạn sớm trở
thành một lập trình viên tuyệt vời nhất!
(theo Techrepublic)
0 nhận xét