#interview #coding #dev #j2team_share
Hỏi: Liệu tôi có nên bỏ giấc mơ làm kỹ sư phần mềm sau khi trượt 10 cuộc phỏng vấn về kỹ thuật không?
Trả lời: Kurt Guntheroth, trên 35 năm vật lộn với các chữ số nhị phân; trên 20 năm làm C++. Windows, Linux, nhúng.
==========
Cái gì cơ, bạn chỉ tạch 10 cuộc phỏng vấn thôi à? Và bạn muốn đầu hàng sao?
Vâng, có lẽ bạn không nên làm kỹ sư phần mềm. Bạn bỏ cuộc dễ quá đấy.
Hãy quay lại khi bạn tạch 100 lần và chẳng nhận được bất kỳ lời mời nào nhé. Quay lại khi bạn đã đọc lại quyển sách về cấu trúc dữ liệu và giải thuật và vẫn chẳng được ai thuê ấy. Và quay lại khi bạn đã thực hiện trên 100 câu hỏi kiểm tra viết code mà bạn có thể tìm thấy trên web hết lần này đến lần khác cho tới khi bạn có thể tự tin viết code trên bảng trắng đó. (Có rất nhiều câu phỏng vấn hay ở đó mà bạn có thể làm được đơn giản chỉ bằng cách nhớ câu trả lời).
Tôi là một nhà phát triển có kinh nghiệm và có thể giải quyết tốt các câu hỏi về thuật toán. Khi thất nghiệp, tôi có thể trải qua 30 lần phỏng vấn trước khi tôi có được một lời mời làm việc, rồi tôi vẫn có thể sẽ từ chối lời mời đó. Bạn có thể tạch bởi vì ứng cử viên mà Chúa phái đến đã phỏng vấn từ tuần trước mất rồi, họ có nhiều kỹ năng và trải nghiệm tốt hơn, vì thế bạn không cạnh tranh được. Có thể bạn tạch sau khi trả lời đúng câu hỏi, bởi ứng viên tiếp theo thích nói về thể thao, và cái gã tuyển dụng kia cũng vậy. Công ty đó lại có thể đóng phần Yêu Cầu Trợ Giúp trước khi người phỏng vấn bạn có thể đưa ra được một lời mời cho bạn. Hoặc có thể họ chỉ định trêu chọc những gã siêu nhân code mà thôi, chứ chẳng có ý định tuyển ai, vì thế ngay từ đầu bạn đã chẳng có cơ hội nào rồi. Họ thích làm thế mà. Nếu bạn để sự ngu ngốc trong doanh nghiệp ấy đánh gục bạn, thì có lẽ thế giới này đã nguyền rủa bạn mất rồi.
Vâng, tất nhiên, nếu bạn khó trả lời một câu hỏi về thuật toán, hãy về nhà sau buổi phỏng vấn và nhanh chóng viết câu hỏi đó ra trước khi bạn quên. Sau đó giải quyết bài toán. Dùng cả sách vở lẫn internet nếu cần nhé. Viết code rồi làm cho nó chạy tốt vào. Bạn sẽ chẳng bao giờ phạm phải lỗi lầm đó lần nữa đâu.
Thực sự bạn thất bại bao nhiêu lần cũng chẳng hề quan trọng. Chỉ cần thành công một lần là đủ rồi.
https://www.quora.com/Should-I-give-up-my-dream-to-become-a-software-developer-after-failing-my-10-technical-interviews/answer/Kurt-Guntheroth-1
PS: Các bạn tạch phỏng vấn nhiều nhất là bao nhiêu lần rồi? Lần phỏng vấn cuối cùng, mình trả lời giống trong ảnh và giờ nghĩ lại vẫn không ngậm mồm được :v
#j2team_share #google #Interview #vmc
No.16
Hỏi: Tôi có thể vượt qua cuộc phỏng vấn của Google chỉ với 1 tháng chuẩn bị được không? Nếu được thì làm như thế nào? Tôi chỉ biết cơ bản về C và C++ thôi.
Trả lời: Andrew McGregor, Kỹ sư Độ tin cậy Website của Google (2013-nay)
------
Nếu đó là tất cả những gì về lập trình mà bạn biết, và bạn không có bằng Thạc sĩ hay Tiến sĩ trong ngành gì đó tương tự thì không thể.
Nếu bạn có một bằng Tiến sĩ về logic, toán hoặc thống kê, tất nhiên, không vấn đề, chỉ cần đăng ký vào đúng vị trí.
Không có lối tắt nào hết. Những bài phỏng vấn đó được thiết kế một cách đặc biệt để loại bỏ những người cố gắng đi tắt trong việc học của mình, bởi vì khi họ thực sự bắt đầu công việc, họ sẽ thấy không có bất kỳ sự khoan nhượng nào, vấn đề luôn khó hơn rất nhiều so với bất kỳ thứ gì mà đại học có thể dạy cho sinh viên về mặt thực tế, và thực tế sẽ không có bất kỳ sự khoan dung nào với những ảo tưởng của bạn.
Đừng nghĩ tôi đang phê phán bạn bằng những gì tôi sắp viết, hoặc phóng đại những gì tôi có lên. Đây chỉ là một lời nói thành thực về nơi tôi đang làm việc và những gì cần thiết để trở thành một kỹ sư phần mềm/kỹ sư độ tin cậy website lâu năm tại Google. <EDIT> Có thể điều này là quá nhiều, nhưng hãy nhớ rằng tôi đã ở trong ngành công nghiệp này 26 năm rồi, và đây là cách quá mức cần thiết để có được một công việc tại Google… đó cũng là những việc rất đáng làm, và trong khi việc này thực sự khó khăn và đòi hỏi rất nhiều nỗ lực để có được, nếu bạn nhắm vào một vị trí tại Google có khả năng nào đó là bạn sẽ giành được nó, và có một cơ hội rất lớn là bạn sẽ có được một vị trí nào đó trả lương bằng với những gì mà một sự nghiệp tốt đẹp có thể mang lại. </EDIT>
Khi tôi chuẩn bị đi làm, tôi đã hoàn thành các câu lệnh của Bash, C và Python, một chút về C++ và Lua, và đã viết mã lệnh trong hơn 30 ngôn ngữ khác nhau. Tôi đã sử dụng và quản trị các mạng máy tính Unix, không chỉ các hệ thống đơn lẻ, với nhiều người dùng sản phẩm, trong 21 năm. Tôi có hai bằng sáng chế, đã được chuyển giao đầy đủ trong hơn 15 nước. Tôi đã phát minh và quản lý dự án đã viết một phần của bộ Linux WiFi có thể chạy trên ít nhất một tỷ thiết bị trên toàn thế giới, và rất có thể bạn sở hữu một thiết bị; bạn chắc chắn đã sử dụng nó mà không biết. Tôi còn viết trong nhân Linux, Emacs, Clang, NS3, trình biên dịch ngữ cảnh X-Plane, và có thể là một số dự án mã nguồn mở khác mà tôi quên mất. Tôi là đồng sáng lập của một công ty mà khi ở đỉnh cao nó đã có 30 nhân viên, và huy động được gần ba mươi triệu đô la tài trợ. Nó đã tồn tại 13 năm, gấp khoảng 4 lần các startup trung bình. Tôi đã chủ trì một nhóm làm việc IETF, biên tập một RFC, và đóng góp cho nhiều thứ khác.
Làm việc cho Google, tôi đã học được hai ngôn ngữ khác, và phát triển kỹ năng C++ của tôi nhiều hơn trước đó (tôi sẽ phải học Go tiếp theo, tôi có thể nói như vậy... (thở dài), lại một ngôn ngữ khác,vẫn như thế, ít nhất thì ngôn ngữ đó khá dễ dàng). Một năm nay, tôi đã đọc nhiều bài báo học thuật hơn so với khi làm nghiên cứu sinh vật lý; ngay bây giờ tôi có mười bốn bài báo mở trong các tab trong cửa sổ khác. Tôi có thể dễ dàng nghĩ ra năm dự án mà tôi đã làm được nhưng lại quá khó cho một đề tài luận văn thạc sỹ, và một vấn đề mà tôi vẫn tiếp tục làm thì còn khó hơn đề tài tiến sĩ của tôi (tôi chưa bao giờ viết ra điều này, nhưng về cơ bản tôi đã hoàn thành các nghiên cứu và các kỹ thuật vẫn vận hành tốt). Bây giờ, tôi đã lên được ba cấp độ từ một người mới vào nghề, và có thể được đề bạt lên mức kế tiếp, nhưng điều này cho bạn một số ý tưởng về việc điều đó là như thế nào. Có năm cấp độ công nghệ ở trên tôi.
Bây giờ bạn có thấy bạn còn phải đi bao xa không? Bạn không nhất thiết phải tiếp cận theo cách đó để được tuyển dụng, tất cả những thứ đó đã ngốn mất 26 năm của tôi, nhưng bạn phải thực sự làm một số việc. Sẽ rất khó khăn. Đó là vấn đề đấy, công việc thực tế luôn rất khó khăn ... và cũng rất thú vị, rất nhiều niềm vui, và được trả hậu hĩnh. Vì vậy, bạn cũng có thể cảm thấy thoải mái khi làm những thứ khó nhằn.
Bài mình dịch từ câu trả lời gốc tại:
https://www.quora.com/Can-I-crack-the-Google-interview-in-just-1-month-of-preparation-If-yes-then-how-I-just-know-the-basics-of-C-and-C++/answer/Andrew-McGregor-12