Ông có vấn đề đọc hiểu à? Tôi đã nói rõ là tôi ko thích cách của Google và tôi đưa ra cả 1 list đầy cty tốt ko dùng cách của Google rồi đấy. Ko thích thì ko theo và thậm chí sẽ lên tiếng phản đối
Và thực tế có rất nhiều người giỏi trong cộng đồng lên tiếng phản đối.
Bạn đang tự huyễn hoặc rằng cứ cty top là cách tuyển dụng tốt nhất, trong khi chưa có nghiên cứu nào chứng minh nó là đúng.
Nếu nói như bạn, nếu Google bắt bạn ăn cứt để được vào. Nếu bạn ko làm được nghĩa là bạn kém hơn
Đại loại ý của tôi là, cách của Google sẽ ko tìm được những SWE giỏi nhất. Họ vẫn sẽ tìm được người tốt vì đơn giản họ có quá nhiều applicant giỏi nên loại nhiều false negative cũng ko vấn đề gì.
Giờ các ông giải thích thử, 1 senior SWE 25 năm exp, tại sao khi apply không hỏi những gì họ làm được trong 25 năm đấy, mà lại hỏi 1 cái ko liên quan gì đến công việc mà họ phải cày thêm vào mỗi tối??? Thì có đúng là những người có gia đình bất lợi hơn những người rảnh ko?
Cho các bạn 2 cái ví dụ kinh điển nhé, đối với tôi nhưng người này mới là SWE đỉnh. Đang nói SWE nhé chứ còn Researcher cần dùng algorithm thì ko nói.
Creator of Ruby on Rails:
Creator of HomeBrew:
Hmm, apply vào Google thượng vàng hạ cám đủ cả, 1000 người chọn 1 mà ko có phương pháp thì sao tuyển đc người giỏi?
Algorithm có những cái lợi như sau:
Consistent: tức là 5 người pv 1 candidate thì output chắc chắn là tương đương nhau, chứ ko có chuyện 1 người bảo tốt, 1 người bảo kém.
Scale: độ khó có thể đo đếm đc, có tính định lượng, và dễ dàng sàng lọc, so sánh giữa các ứng viên với nhau.
Limiting bias: tất cả kiến thức của Algo đều là kiến thức cơ bản, ai cũng biết, nên sẽ ko có trường hợp may mắn, thằng làm nhiều về 1 technology nào đó thì sẽ có lợi thế hơn thằng còn lại.
SWE là 1 ngành khó, đòi hỏi soft vs hard skill, nên cách tuyển chọn đòi hỏi phải abstract, chứ ko thể dập khuôn đc.
Có 2 phương pháp phỏng vấn đã đc back up bởi nhiều nghiên cứu khoa học là IQ test và Behaviour. Nhưng IQ test đã bị cấm ở Mỹ, nên có thể xem Algo là 1 phương pháp tương đương. Còn behaviour thì đã và đang đc nhiều cty áp dụng như Amz, FB, G ...
Và nói thẳng luôn là cách hiểu về algo của 2 người bạn trích dẫn rất sai, cái cần khi phỏng vấn, đó là thể hiện tư duy, phương pháp làm việc khi gặp 1 vấn đề, chứ ko cần text book version của 1 thuật toán kinh điển. bạn nhận đc 1 vấn đề, và có cách giải quyết rõ ràng, mạch lạc, communicate đc cách làm đó với người pv, để đưa vấn đề chưa giải đc thành vấn đề giải đc, đó mới là cái cần đánh giá. Nên ở Google, ko ai hỏi thuật toán kinh điển cả, mà sẽ là 1 mô hình tối giản của 1 vấn đề trong thực tế. Từ câu hỏi đó, có thể scale lên để biến thành 1 hệ thống phức tạp, với nhiều hướng đi, lựa chọn khác nhau, tôi nghĩ là cũng khá gần gũi vs hoạt động thường ngày của SWE.
Onsite Google, FB, Amz v.v..., Với những người có nhiều kn, thì sẽ có thêm 1 tới vài vòng system design, ko hỏi về algo mà chỉ tập trung vào design và kn thực tế, cách giải quyết những vấn đề kỹ thuật. Giống như khi bạn là tech lead và đang thuyết phục người khác follow design của mình vậy.
Hy vọng trả lời đc thắc mắc của bạn