15 ĐỨC TÍNH CỦA MỘT LẬP TRÌNH VIÊN GIỎI

20141215190648-15-characteristics-good-programmer

Các nhà lãnh đạo doanh nghiệp thường gặp nhiều thách thức khi tìm nhân viên lập trình tài năng, giàu kinh nghiệm và đặc biệt là lương phải phù hợp trong khi ngân sách thì có hạn. Thực tế là hầu hết các công việc của một lập trình viên được làm việc trên máy tính nên quá trình tuyển dụng trở nên phức tạp hơn. Trong vài tháng qua tôi đã tìm kiếm một vài người có tài về công nghệ để khởi động dự án mới nhất của tôi là Hostt.com. Đây là một thách thức lớn khi tôi sống ở Silicon Valley và nhưng người có tài thì rất khó thuyết phục để họ rời bỏ các công ty lớn với mức lương tốt để làm việc cho một dự án khởi đầu mới.

Với tất cả những gì tôi đã trải qua, tôi quyết định viết về một số đức tính của những người lập trình giỏi  mà có thể thu hút tôi đối với việc khởi nghiệp của mình. Ngoài việc biết các ngôn ngữ lập trình cần thiết để thực hiện công việc, có một số yêu cầu nhất định cần thiết để thuê một lập trình.

Dưới đây là 15 đức tính tốt của ứng viên sẽ là nhưng người bổ sung tuyệt vời cho đội ngũ lập trình của bạn

1.Kỹ năng kỹ thuật ấn tượng

Một sai lầm mà nhiều nhà quản lý tuyển dụng đưa ra là tuyển dụng từ danh sách các yêu cầu. Thay vì yêu cầu kinh nghiệm 3 năm C++ và 1 năm Java, bạn hãy nhìn vào bức tranh toàn cảnh. Một lập trình viên đã làm việc chủ yếu bằng ngôn ngữ cũ nhưng gần đây đã học thêm một ngôn ngữ mới để chứng tỏ anh ấy đang cố gắng hoàn thiện hơn. Vì những năm kinh nghiệm đã cho anh ấy một nền tảng tuyệt vời để bắt đầu ngôn ngữ lập trình khác.

Câu hỏi phỏng vấn mẫu: Mô tả kinh nghiệm của bạn với các ngôn ngữ lập trình khác nhau

2. Sẵn sàng học hỏi

Công nghệ luôn phát triển và các kỹ năng và khả năng mà một lập trình viên ngày nay có thể sẽ lỗi thời trong một vài năm. Điều quan trọng là tìm một lập trình viên có hứng thú theo dõi các xu hướng mới nhất và rất mong muốn tham gia vào bất kỳ cơ hội giáo dục thường xuyên nào có sẵn.

Câu hỏi phỏng vẫn mẫu: Bạn làm gì để giữ kĩ năng lập trình hiện tại?

3. Kỹ năng gỡ lỗi

Tạo mã chỉ là một phần của công việc của một người lập trình. Khi phần mềm hoạt động không như mong đợi, một lập trình viên được kỳ vọng sẽ trở thành gốc rễ của vấn đề một cách nhanh chóng và hiệu quả. Thay vì phải mất hàng giờ để thực hiện xử lý lỗi, hãy tìm kiếm một lập trình viên muốn nghiên cứu cẩn thận mã của mình và nghiên cứu các vấn đề có thể có cho tới khi tìm được câu trả lời.

Câu hỏi phỏng vấn mẫu: Làm thế nào để bạn xử lý lỗi trong mã của bạn? (sau đó hãy cung cấp cho họ một chương trình chạy thử nghiệm để gỡ lỗi mã).

4. Phù hợp với môi trường làm việc

Một số lập trình viên đòi hỏi sự im lặng hoàn toàn để tập trung, trong khi những người khác lại làm việc tốt hơn trong môi trường có tiếng động. Sở thích cá nhân của nhân viên là một phần quan trọng trong năng suất làm việc của anh ta. Vì vậy tốt nhất nên rõ ràng về môi trường văn phòng làm việc để tránh những vấn đề sau khi người đó được tuyển dụng.

Câu hỏi phỏng vấn mẫu: Bạn hãy mô tả ý tưởng môi trường làm việc mà bạn mong muốn.

5. Kỹ năng giải quyết vấn đề

Đối với những người chưa bao giờ cố gắng tạo ra một ứng dụng từ đầu, việc lập trình tốt được so sánh với việc giải quyết một phương trình toán học khó. Một lập trình viên giỏi sẽ tìm cách để làm mọi thứ chạy ổn định, mặc dù khó khăn. Nếu không bạn có thể sẽ nghe cụm từ “không thể làm được” mỗi khi bạn đề xuất một dự án sáng tạo mới.

Câu hỏi phỏng vấn mẫu: Bạn sẽ giải quyết nó như nào? (với nhiệm vụ gần như không thể cho tổ chức của bạn)

6. Đam mê với công việc

Trong khi một số nhân viên lập trình chỉ đơn giản có thể làm đúng giờ làm việc theo yêu cầu, nhiều nhà quản lý tuyển dụng quan tâm đến việc tìm một ai đó vui lòng dành nhiều thời gian làm việc cho đến khi hoàn thành dự án. Thường thì các nhân viên này có thể được tìm thấy trong quá trình phỏng vấn. Các lập trình viên thực sự đam mê sẽ tuyên bố họ là ” những chuyên gia về máy tính” bằng việc họ dành thời gian chơi game, xây dựng máy chủ hoặc tạo ra các ứng dụng cho bạn bè. Mặc dù niềm đam mê này không phải là điều cần thiết nhưng thường là một cách để tìm ứng viên hàng đầu.

Câu hỏi phỏng vấn mẫu: Sở thích của bạn là gì?

7. Chịu được áp lực công việc

Nó có vẻ trông không giống như vẻ bề ngoài nhưng lập trình là một nghề rất căng thẳng. Khi thời gian được giới hạn và có rất nhiều thứ để làm việc, bạn sẽ rất dễ trở nên bị hoảng loạn và không thể làm được việc gì. Các ứng cử viên lập trình lý tưởng sẽ có thể bình tĩnh xử lý những tình huống khó khăn, quan trọng nhất và vẫn có thể tiếp tục làm việc.

Câu hỏi phỏng vấn mẫu: Mô tả thời gian bạn bị áp lực quá nhiều và các ứng dụng của bạn không hoạt động. Bạn đã làm gì?

8. Kỹ năng nhân sự

Các nhà lập trình nói chung không phải là người có tài năng phục vụ khách hàng khó tính. Theo đặc thù công việc họ sẽ ngồi làm việc trước máy tính cả ngày. Tuy nhiên các lập trình sẽ thường xuyên tương tác với nhà quản lý, đồng nghiệp và khách hàng, do đó họ phải có khả năng làm việc tốt với người khác. Điều này trở nên cần thiết nếu người lập trình của bạn thỉnh thoảng được yêu cầu tham gia các cuộc họp của khách hàng và giải thích cho họ cách hoạt động của hệ thống.

Câu hỏi phỏng vấn mẫu: Giải thích các ứng dụng yêu thích của bạn theo cách mà một người bình thường cũng có thể hiểu.

9. Sự lười biếng

Larry Wall, tác giả ban đầu của Ngôn ngữ lập trình Perl mô tả ba phẩm chất tốt của người lập trình giỏi: sự  lười biếng, thiếu kiên nhẫn và ngạo mạn. Sự lười biếng có vẻ như là điểm bất lợi cho bất kỳ nhân viên nào nhưng các nhà quản lý CNTT nói rằng nếu bạn muốn tìm cách tốt nhất để làm điều gì đó, hãy hỏi một người lười biếng. Rất có thể người đó sẽ tìm ra cách làm nhanh nhất, hiệu quả nhất. Một nhân viên lập trình của công ty thường có thể tìm thấy cách để tự động hoá quy trình, tiết kiệm thời gian và tiền bạc.

Câu hỏi phỏng vấn mẫu: Cho chúng tôi biết bạn mất bao lâu để tiết kiệm thời gian bằng cách tự động hoá quy trình.

10. Một quan điểm kinh doanh

Thật dễ dàng bị mất cái nhìn về bức tranh tổng thể khi bạn chỉ tập trung vào việc tạo ra một phần mềm. Các lập trình viên lý tưởng có một quan điểm kinh doanh  sẽ giúp anh ta vượt ra  ngoài ứng dụng hiện tại. Một lập trình viên có quan điểm kinh doanh sẽ đề xuất các ý tưởng cho các ứng dụng mới để cải thiện hoạt động.

Câu hỏi phỏng vấn mẫu: Bạn đã bao giờ đưa ra gợi ý để cải thiện quy trình kinh doanh chưa?

11. Khả năng lên kế hoạch

Thay vì tham gia vào nhiệm vụ mới, một sự bổ sung tốt cho nhân viên lập trình của bạn là trước tiên họ sẽ học càng nhiều càng tốt về sản phẩm cuối cùng mà họ mong muốn. Một khi đã hoàn thành phân tích đó, trước tiên, người lập trình sẽ thiết kế cấu trúc chương trình trước khi gõ dòng đầu tiên của mã.

Câu hỏi phỏng vấn mẫu: Hãy giải thích cách tiếp cận của bạn với một thiết kế mới? Bạn làm gì trước?

12. Khả năng xử lý lỗi

Các lập trình viên hiếm khi làm đúng mọi thứ trong lần thử đầu tiên. Trên thực tế, thất bại gần như là chắc chắn. Điều quan trọng là tìm nhân viên lập trình có thể tìm ra lỗi và sửa chúng chứ không phải là dấu hiệu thất bại. Tính bền bỉ là rất quan trọng cũng như khả năng bắt đầu lại nếu cần thiết, ngay cả sau nhiều giờ làm việc.

Câu hỏi phỏng vấn mẫu: Bạn đã bao giờ bỏ ra hàng giờ đồng hồ cho việc code chỉ vì đó là cách tiếp cận sai? Bạn đã làm gì khi đó?

13. Tinh thần đồng đội

Người lập trình hiếm khi làm việc một mình ngay cả khi anh ta là nhà phát triển duy nhất trong công ty. Khả năng làm việc với các lập trình viên khác, người kinh doanh, tiếp thị và nhân viên bán hàng là điều cần thiết.

Câu hỏi phỏng vấn mẫu: Chia sẻ trải nghiệm của bạn khi nhóm của bạn được khen thưởng.

14. Sẵn sàng nghiên cứu

Ngôn ngữ của một lập trình chỉ là một phần của bức tranh tổng thể. Một nhà phát triển tốt phải tìm hiểu về các ngành cụ thể để thiết kế các chương trình làm việc cho nhân viên hoặc khách hàng.

Câu hỏi phỏng vấn mẫu: Cho chúng tôi biết về thời gian bạn tìm hiểu về một doanh nghiệp cụ thể? Bạn đã nghiên cứu như thế nào?

15. Tôn trọng deadline

Hầu hết các lập trình viên làm việc trên các dự án có thời hạn. Mặc dù điều quan trọng là các nhà quản lý hiểu được thời gian quay vòng hợp lý để viết mã cho một ứng dụng mới hoặc sửa chữa các ứng dụng hiện có nhưng các lập trình viên cũng nên tôn trọng hạn chót. Điều quan trọng là xác định rằng người ứng cử viên sẽ làm mọi thứ có thể để đáp ứng thời gian được giao.

Câu hỏi phỏng vấn mẫu: Mô tả khoảng thời gian mà bạn phải đáp ứng hạn chót.

Không phải là dễ dàng để tìm đúng lập trình viên như ý muốn, đặc biệt nếu kiến thức về lập trình còn hạn hẹp. Một cách để nâng cao kinh nghiệm tuyển dụng của bạn là mời một thành viên lập trình tham gia vào cuộc phỏng vấn. Họ sẽ giúp bạn hỏi những câu mà bạn không biết làm thế nào để hỏi.

(Bài viết trên được dịch từ bài báo: “15 Characteristics of a Good ProGrammer” trên trang web Entrepreneur)

 

Table of Contents

Bài viết liên quan