Theo em thì:
- Kỹ năng giải quyết vấn đề tốt.
- Khả năng học/ nắm bắt cái mới và công nghệ mới.
Theo quan điểm cá nhân của các bác thì như thế nào là một lập trình viên giỏi?
Theo em thì:
Theo quan điểm cá nhân của các bác thì như thế nào là một lập trình viên giỏi?
Đồng ý với ý kiến của @Dung_Nguyen, Đạt bổ sung thêm:
Giống như để tán gái giỏi thì phải “đẹp trai”, thì một lập trình viên giỏi phải kiên nhẫn
Kiên nhẫn khi
Không gỡ đc lỗi thì mất ăn mất ngủ =))))
Bài dịch của anh Hồ Sĩ Hùng này phù hợp với câu hỏi của bạn: http://vinacode.net/2014/09/26/dang-cap-cua-lap-trinh-vien/
Ý @programmerit nói là cái này đúng không?
- Lập trình viên nghiệp dư
Một lập trình viên nghiệp dư yêu thích việc viết code, và điều đó chỉ ra rằng: họ có thể là một sinh viên hoặc một thực tập sinh đầy triển vọng, hoặc có thể họ đang đóng góp công sức vào một số dự án mã nguồn mở, hoặc đang thích thú xây dựng các ứng dụng và các trang web với mục đích “chỉ cho vui” trong thời gian rảnh rỗi. Những ý tưởng và đoạn code của họ cho thấy sự nhiệt tình và đầy triển vọng.
Trở thành một lập trình viên nghiệp dư là một điều tốt; từ cấp độ này họ có thể nhanh chóng phát triển lên trở thành một lập trình viên giỏi.
Việc nói là giỏi hay không thật quá khó trong bất kỳ việc gì. Chính vì vậy, cần có 1 thang đo để biết mình đang ở đâu. Có thể nội dung của bài dịch trên không thực sự đánh giá được các cấp độ thực sự của LTV, nhưng phần nào cũng cho ta thấy được ta đang ở vị trí nào và như thế nào mới được gọi là giỏi, thành công,…
Ở đây là mình hỏi ý kiến cá nhân của mỗi người, không cần phải theo tiêu chuẩn nào cả.
4. Lập trình viên giỏi
Bạn có một sự nghiệp thành công với tư cách là một nhà phát triển phần mềm. Các kỹ năng của bạn luôn đáp ứng được yêu cầu và bạn chẳng bao giờ phải chờ lâu hoặc khó nhọc để kiếm một công việc tuyệt vời nào đó. Các đồng nghiệp của bạn rất nể phục bạn. Mỗi công ty mà bạn làm việc cho họ thì luôn tăng trưởng và thịnh vượng hơn theo một cách nào đó bởi sự hiện diện của bạn.
Cách giải thích như vậy khá là mơ hồ. Nên mình không hình dung được là một lập trình viên giỏi để đạt được như trong bài viết là một người như thế nào, cần phải làm gì để đạt được tới level đó.
Đây là câu hỏi thực tế khi mình đi phỏng vấn nên nếu trả lời như trong bài viết thì xác định
lập trình viên tốt thì ngoài chuyên môn giỏi thì có thể hỗ trợ mọi người trong nhóm của mình.
Chia sẻ kiến thức cho mọi người trong nhóm.
Lập trình viên giỏi là một lập trình viên giỏi, trình độ cao và được trả nhiều tiền lương!!!
Vậy theo bạn như thế nào là trình độ cao và làm sao để có được trình độ cao ?
Trình độ cao là làm việc cho các công ti phần mềm lớn của thế giới (như là Microsoft, Google…), và là chuyên gia giải quyết các vấn đề khó! Đừng hỏi mình như thế nào là công ty phần mềm lớn nha!
Lập trình viên giỏi là một nhà Toán học nghiệp dư. Họ thông minh, code nhanh như thợ đánh máy, ngồi hàng giờ với máy tính mà không bị cận. Giải quyết vấn đề tốt hơn người khác. Cả ngày chỉ code và ăn xong code!
Ôi thôi rồi. Em van bác. Nói chuyện với bác em nhức đầu quá.
Theo mình ngoài kỹnăng giải quyết vấn đề tốt (trong thời gian cho phép),
thì lập trình giỏi thì phải best pratice trong ngôn ngữ chuyên môn của anh ta:
Ví dụ trong Java: phải biết khi nào dùng map-hashmap…, Khi nào dùng Stringbuilder, Stringbuffer… Biết dùng các design partern thích hợp
Khi build 1 dự án tùy theo yêu cầu mà biết công nghệ nào sẽ tối ưu.
theo mình thì giải quyết được mọi vấn đề là gỏi
Vấn đề là bao lâu…
Mình xin đóng góp vài điều đó là
1- chăm đọc sách, bất cứ khi nào bạn muốn tiếp xúc tốt một công nghệ thì bạn nên tìm đọc một cuốn sách về nó , vì trên thực tế tra cứu trên mạng chỉ là giải pháp nhất thời. ít khi thấy một blog nào có thể tạo ra một chủ đề xuyên suốt công nghệ đó. Khi viết ra cuốn sách tác giả đã có cái nhìn tổng quát về công nghệ đó rồi như vậy sẽ tốt hơn.
2- tinh thần tự lập cao , bạn hãy cố gắng tra cứu bằng mọi cách để giải quyết vấn đề của mình chứ đừng thấy lỗi là copy file logs lên mạng hỏi ngay, không hay tý nào
3- đọc lỗi , trên thực tế sửa lỗi là một kỹ năng sống còn của lập trình viên
4- suy nghĩ cách áp dụng kiến thức mình vừa học được vào thực tế , nếu thấy nó hay mà chưa biết áp dụng vào đâu thì bạn ghi tên nó lại và viết vào dòng ghi chú, biết đâu sau này bạn sẽ cần chúng
và khiêm tốn, tìm hiểu các giải pháp của cùng một vấn đề mà mình đã xử lý và nhận ra cái nào tốt hơn.
xem thử cái này, mình thấy đạt mức from-scratch developer như thế này chính là lập trình viên giỏi