Cuộc phỏng vấn sắp tới của Google, tìm kiếm một số lời khuyên chuẩn bị [đóng]


29

Vâng, tôi đã đánh những cuốn sách bất cứ nơi nào tôi có thể. Tôi có một cuộc phỏng vấn sắp tới, lần đầu tiên qua điện thoại, cho vị trí kỹ sư phần mềm. Tôi đã đọc tất cả các bài đăng trên blog, tôi đã đọc tất cả các tài khoản phỏng vấn (một số khá cũ) và chính Google thậm chí còn đề xuất một danh sách đọc sách, không ai trong số đó làm bất kỳ ai ngạc nhiên ở đây. Tuy nhiên, sau một thời gian chuẩn bị, tôi không thể lay chuyển được cảm giác rằng có một mặt đất rộng lớn như vậy để che chắn, và tôi không bao giờ chắc chắn nên đi theo chiều sâu hay bề rộng. Tôi đã thấy mình học lại toàn bộ một lĩnh vực compsci, chỉ để quên hầu hết các chi tiết nitty khi tôi chuyển sang một lĩnh vực khác.

Vì vậy, tôi không biết rằng có một câu trả lời hay cho câu hỏi này, nhưng tôi đang tìm kiếm bất kỳ lời khuyên thiết thực nào về cách giải quyết các tuần còn lại trước cuộc phỏng vấn. Một phần bộ não của tôi mệt mỏi vì bị nhồi nhét, và tất nhiên phần còn lại của nó phải được sử dụng cho một số vấn đề khó khăn tại nơi làm việc hiện tại của tôi.


3
Điều này có thể phù hợp hơn tại Careeroverflow.com IMHO. Ngoài ra, bạn không nói mức độ của vị trí, chẳng hạn như người mới bắt đầu, cấp cao, v.v. và nền tảng của bạn, để lại rất nhiều cho giả định.
vpit3833

3
@ Cá nhanh: Cho bạn biết những gì, chỉ cần thư giãn. Làm bài kiểm tra IQ và nếu bạn đạt 135+ Google hoặc không có Google, bạn biết bạn có nó.
Fanatic23

9
Ở đây thật tuyệt, vì đó là về lập trình viên ??? Tại sao những người có đại diện cao hơn thích phân loại và sắp xếp mọi thứ xuống quark?
Jonathan.

3
Đã có nhiều câu hỏi phỏng vấn xin việc. Câu hỏi của bạn khác nhau như thế nào? Nếu câu trả lời của bạn là "Google", thì đó là lý do tại sao nó không đúng ở đây. Có vô số trang web xử lý các cuộc phỏng vấn của Google, nhiều trang trong số đó sẽ giúp bạn có được thông tin tốt hơn trang này.
Nicole

2
Và bạn cho rằng người phỏng vấn sắp tới của bạn không ẩn giấu trên P.SE? :)
haylem

Câu trả lời:


30

Những điều bạn nên biết

  • Google muốn thuê bạn!

    Máu sống của bất kỳ công ty phần mềm nào là nhân viên của mình và Google cũng không khác. Đó là tìm cách thuê những người giỏi nhất và thông minh nhất và những người thực hiện cuộc phỏng vấn muốn bạn thành công như bạn.

  • Google sẽ làm điều tốt nhất để đánh giá bạn chính xác nhất có thể. Đó là công việc của họ.

    Google là một công ty định hướng dữ liệu. Quyết định tuyển dụng không được quyết định bởi người quản lý fiat. Thay vào đó, mỗi người phỏng vấn ghi chú sâu rộng trong suốt cuộc phỏng vấn được kết hợp thành một gói. Gói đó sau đó sẽ được xem xét bởi một ủy ban riêng , cuối cùng sẽ đưa ra quyết định. Vì vậy, nếu bạn không 'nói chuyện' với một trong những người phỏng vấn, đừng lo lắng! Điều quan trọng là bạn thực hiện tốt như thế nào trong cuộc phỏng vấn.

Kỹ năng bạn nên có

Hãy chắc chắn để cải thiện các kỹ năng / kỹ thuật sau đây trước cuộc phỏng vấn của bạn. Ngay cả khi bạn không được hỏi trực tiếp một câu hỏi nào, việc xem xét chúng chắc chắn có thể khiến bạn suy nghĩ đúng đắn.

  • Cấu trúc dữ liệu

    Sự khác biệt giữa một mảng và danh sách liên kết là gì? Cây và đồ thị? Khi nào bạn sẽ sử dụng cái này hơn cái kia? Làm thế nào điều đó sẽ tác động đến sự đánh đổi tốc độ / bộ nhớ?

    Một câu hỏi phỏng vấn không kết thúc tại một giải pháp làm việc. Có thể giải thích thời gian chạy của phương pháp của bạn và những loại đánh đổi bạn có thể thực hiện. Ví dụ: "nếu tôi lưu vào bộ nhớ cache mọi thứ, nó sẽ mất X hợp đồng RAM nhưng sẽ hoạt động nhanh hơn vì ...". Hoặc, "nếu tôi giữ cây nhị phân được sắp xếp trong khi tôi thực hiện các thao tác X sẽ chậm hơn, Y sẽ nhanh hơn, v.v."

  • Thuật toán

    Các thuật toán chuyển đổi đồ thị cơ bản, các thuật toán duyệt qua cây và hai cách tiếp cận tốt để sắp xếp các số.

    Đảm bảo thực hành giải quyết một vấn đề không hề nhỏ bằng Lập trình động. Đó là ace của bạn trong lỗ khi nói đến câu hỏi phỏng vấn khó khăn!

  • Bảng băm

    Điều này là rất lớn. Biết tất cả mọi thứ cần biết về bảng băm, từ việc có thể tự thực hiện một bảng, đến biết về các hàm băm, tại sao số lượng xô phải là số nguyên tố. Các khái niệm liên quan đến bảng băm có liên quan đến mọi lĩnh vực của Khoa học máy tính.

  • Nói về bản thân

    Vài phút đầu tiên trò chuyện với người phỏng vấn là thời điểm quan trọng để giải thích bất kỳ loại trải nghiệm nào làm bạn khác biệt. Các dự án có liên quan, thành tựu kỹ thuật quan trọng, và tương tự. Hãy nhớ rằng, người thực hiện cuộc phỏng vấn đã phỏng vấn hàng chục người nếu không phải hàng trăm người thông minh giống như bạn. Vì vậy, những gì bạn có thể nói rằng sẽ làm họ ngạc nhiên?

    Ví dụ, trong một cuộc phỏng vấn tôi đã nói chuyện với người phỏng vấn về một chương trình tôi đã viết để chơi trò chơi cờ vây ở trường đại học. Rất khó để viết AI cho trò chơi Go, và tôi có một Go-bot khủng khiếp để chứng minh điều đó! Điểm mấu chốt là chính bạn, và không chỉ một số người thông minh biết lập trình.

Đừng căng thẳng quá nhiều, đó chỉ là một cuộc phỏng vấn như mọi người khác. Hãy yên tâm rằng sẽ không có ai hỏi bạn những câu hỏi ngu ngốc về nắp hố ga hay Mt. Phú Sĩ.


7

Thư giãn

nếu cuộc phỏng vấn của bạn giống như cuộc phỏng vấn của tôi, người phỏng vấn sẽ không ở đó để khiến bạn phải phục tùng, anh ấy sẽ ở đó để xem bạn nghĩ như thế nào .

EDIT: đây chỉ là cuộc phỏng vấn qua điện thoại ban đầu, tôi không biết gì hơn thế ... và nếu tôi có lẽ tôi không thể nói với bạn bằng mọi cách!


2
Bạn đã nhận được công việc?
Manoj R

1
@Manoj: lol - không, nhưng đó không phải là vấn đề. Tôi thực sự không muốn công việc họ đang phỏng vấn, nhưng tò mò về quy trình và cơ hội là gì. tôi đã có / không có ý định chuyển đến California!
Steven A. Lowe

2

Mượn bài viết sau từ http://get-that-job-at-google.blogspot.in/

Kiến thức mã hóa C / C ++ và Java là ngôn ngữ lập trình ưa thích cho Người phỏng vấn Google. Bạn phải biết ít nhất một trong số họ thực sự tốt. Bạn sẽ được yêu cầu viết mã trong các cuộc phỏng vấn trên màn hình điện thoại và trong các cuộc phỏng vấn tại chỗ.

Sách được đề xuất cho các cuộc phỏng vấn CS : Giới thiệu về thuật toán - Tác giả Cormen

Phỏng vấn lập trình tiếp xúc

Bẻ khóa các cuộc phỏng vấn mã hóa

Thuật toán phỏng vấn

Các trang web được đề xuất cho thực hành mã hóa : InterviewStreet, Topcoder

Big-O Đây phải là điểm khởi đầu để chuẩn bị cho một cuộc phỏng vấn thuật toán. Bạn không được đấu tranh với phân tích phức tạp cơ bản, vì nó sẽ đảm bảo không được thuê. Bạn nên làm quen và hiểu các ký hiệu O, và .. Tôi khuyên bạn nên đọc phần phân tích độ phức tạp từ sách Cấu trúc dữ liệu và thuật toán.

Sắp xếp Bạn sẽ có thể viết các thuật toán O (n * lgn) như QuickSort và MergeSort một cách dễ dàng. So sánh và hiểu các trường hợp phức tạp nhất, tồi tệ nhất và trung bình. Tôi thấy bảng này trên wiki rất tiện dụng; nó liệt kê các thuộc tính quan trọng của tất cả các thuật toán sắp xếp. Đừng bỏ qua các thuật toán O (n ^ 2) cơ bản như Sắp xếp bong bóng hoặc Sắp xếp chèn, vì các thuật toán khác cải thiện hơn các thuật toán này. Các cuộc phỏng vấn là nhiều hơn về việc cải thiện một ý tưởng cơ bản, các thuật toán sắp xếp sẽ giúp với quá trình này.

Bảng băm Khi nghi ngờ, hãy nghĩ về bảng băm. Chúng rất hữu ích trong hầu hết các vấn đề và thường xuyên giúp chúng tôi cải thiện độ phức tạp thời gian của một số vấn đề bằng cách lưu kết quả vào bộ đệm.

Cây Đi qua các thuật toán xây dựng, chuyển đổi và thao tác cây cơ bản. Bạn sẽ có thể thực hiện các thuật toán dựa trên cây tìm kiếm nhị phân. Bạn nên làm quen với cây cân bằng mặc dù bạn không cần phải viết mã cho chúng trong cuộc phỏng vấn: cây AVL, cây đỏ-đen, cây Trie, cây n-ary, v.v. chúng ta có thể giải quyết nhiều vấn đề về cây bằng cách thực hiện các sửa đổi đơn giản cho một trong những đường ngang này.

Đồ thị Đồ thị là một khái niệm rất quan trọng trong Khoa học Máy tính. Thực hành ba biểu diễn cơ bản của đồ thị (đối tượng và con trỏ, ma trận và danh sách kề) và làm quen với những ưu và nhược điểm của chúng. Không có nhiều thời gian trong cuộc phỏng vấn vì vậy bạn không nên mong đợi một điều gì đó rất phức tạp. Tuy nhiên, các thuật toán duyệt đồ thị cơ bản (DFS và BFS) là bắt buộc, bạn nên thực hiện chúng trong tất cả các biểu diễn cơ bản. Bạn sẽ có thể thực hiện các thuật toán Dijkstra hoặc Floyd-Warshall cũng như các thuật toán cây bao trùm tối thiểu (Kruskal và Prim). Tìm hiểu về sắp xếp cấu trúc liên kết, vì nó rất hữu ích trong nhiều vấn đề đặt hàng.

Lập trình động Đây có lẽ là chủ đề quan trọng nhất vì các triển khai là nhỏ. Bạn sẽ có thể thực hiện 2-3 thuật toán động trong thời gian 35-40 phút. Khi bạn kiểm tra các tài nguyên trên blog này hoặc trên web, bạn sẽ thấy rằng bạn nên mong đợi ít nhất một câu hỏi lập trình động cho mỗi cuộc phỏng vấn.

Hệ điều hành Tìm hiểu về các quy trình, chủ đề và các vấn đề tương tranh. Biết về mutexes, semaphores, màn hình và cách chúng hoạt động. Hiểu được bế tắc và livelock là gì và làm thế nào để tránh chúng. Tìm hiểu về chuyển đổi ngữ cảnh, lập lịch, vv

Toán học Bạn nên làm quen với việc đếm, tổ hợp và xác suất.

Các ấn phẩm của Google Đọc các ấn phẩm phá cách của Google được liệt kê dưới đây nếu bạn có thời gian. Hệ thống tệp của Google

Google Bigtable

Google MapReduce


Bạn nên đăng văn bản có liên quan ở đây và tránh thối liên kết.
chết người

Xin lỗi, tôi mới vào diễn đàn này. Tôi đã cải thiện câu trả lời của mình
chinmay

1
"... Java ... ngôn ngữ lập trình ưa thích cho Google" Tôi không biết điều đó. Giải thích tại sao Chrome sử dụng tài nguyên gấp 3 lần như các trình duyệt khác. (Tiếng gõ cửa. Ai ở đó? ... tạm dừng lâu ... Java!)
Josh Campbell

1

Nếu bạn đã dành vài tháng cuối cùng tại careercup, bạn có thể đủ khả năng để thư giãn. Những gì xảy ra tại thời điểm đó trong cuộc phỏng vấn không thể được lên kế hoạch nhưng tốt hơn là hãy thư giãn và có năng lượng để vượt qua các vòng.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.