Câu hỏi technical thường gặp khi phỏng vấn
TIL
594
White

GetLinks viết ngày 08/12/2016

Google không phải là công ty duy nhất tạo ra những buổi phỏng vấn nghiêm ngặt để chọn được ứng viên tốt nhất. Rất nhiều công ty tech mới thành lập tìm kiếm đội ngũ mới bằng một loạt bài kiểm tra nhận thức (cognitive test), làm dự án giả lập, và phỏng vấn cá nhân.

Sau đây là 2 nhóm câu hỏi kĩ thuật mà các ứng viên tech cần chuẩn bị tốt.

1. KHOA HỌC MÁY TÍNH & THUẬT TOÁN

Nhóm câu hỏi đầu tiên yêu cầu kiến thức cơ bản và nền tảng đối với vị trí tuyển dụng. Mỗi nhà tuyển dụng sẽ có cách hỏi khác nhau tùy thuộc vào nhu cầu đang tìm kiếm của họ ở ứng viên. Một số sẽ muốn ứng viên trả lời từng câu một, một số khác muốn thử thách với những câu hỏi kì quặc dù gốc rễ khá tương tự với những câu hỏi kĩ thuật chuẩn mực.

Phân loại (sorting)

1/ So sánh các thuật toán phân loại khác nhau. Điểm mạnh và yếu của chúng.
2/ Thuật toán nào nên dùng nhất (trong một tình huống cho trước)?

Java

Đâu là sự khác nhau giữa final, finally và finalize?

C++

Hàm ảo (virtual function) trong C++ hoạt động như thế nào?

2. PUZZLE & PROJECT

Nhà tuyển dụng muốn đánh giá quá trình suy nghĩ của ứng viên khi đối mặt với một bài toán. Hãy luôn giữ được giọng to rõ khi trả lời, nói rõ những điểm mạnh và yếu của thuật toán mà bạn đã viết, và đánh giá độ phức tạp về thời gian/không gian bằng khái niệm Big-O.

Độ phức tạp của thuật toán (Time/space complexity)

Hãy phân tích độ phức tạp thời gian/không gian bằng khái niệm Big-O.
Câu hỏi này cho thấy bạn đang đưa ra giải pháp của mình một cách thông minh, có căn cứ và có cân nhắc những giải pháp khác.

Mảng/Chuỗi (Arrays/Strings)

  1. Xác định xem chuỗi có mọi kí tự khác nhau hay không. Sau đó, không sử dụng cấu trúc dữ liệu bổ sung.

  2. Đảo ngược một chuỗi

  3. Cho hai chuỗi, xác định liệu một chuỗi có phải là hoán vị của chuỗi còn lại

  4. Đảo ngược từ trong chuỗi

Danh sách liên kết (Linked Lists)

  1. Loại bỏ bản sao trong một danh sách liên kết chưa phân loại (unsorted linked lists). Sau đó, không sử dụng bộ đệm tạm thời (temporary buffers).

  2. Tìm vị trí k tính từ cuối của danh sách liên kết

  3. Xác định liệu danh sách liên kết có liên kết vòng không

  4. Đảo ngược một danh sách liên kết

Ngăn xếp và hàng đợi (Stacks & Queue)

  1. Thiết kế một stack để theo dõi phần tử min/max. Thời gian O(1) để duy trì min/max

  2. Dùng stacks để xây tháp Hà Nội

  3. Dùng 2 stacks để implement 1 queue

Cấu trúc dữ liệu (Trees/Graphs)

  1. Xác định liệu có một route giữa hai node không

  2. Xác định liệu cây nhị phân có cân bằng không

  3. Duyệt tìm kiếm theo thứ tự pre-order, in-order, post-order đối với cây nhị phân

  4. Xuất giá trị chiều cao của cây

Một số ví dụ khác (phân tích độ phức tạp của thời gian chạy (runtime complexity) trong đáp án mà bạn đã đưa ra)

  1. Hợp nhất hai danh sách số nguyên liên kết đã phân loại

  2. Viết hàm lấy một số nguyên N làm tham số và in tất cả số nguyên tố giữa 1 và N ra stdout

  3. Thiết kế một trình quay số (dialer) cho dòng điện thoại phổ thông giá rẻ (feature phone)

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

GetLinks

2 bài viết.
1 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
1 0
_Mọi người đang dần cảm thấy data engineering là một subset của software engineering và rất nhiều software engineer đang làm việc với data. Vai trò...
GetLinks viết hơn 1 năm trước
1 0
Bài viết liên quan
White
0 2
fCC: Technical Documentation Page note So I have finished the HTML part of this exercise and I want to come here to lament about the lengthy HTML ...
HungHayHo viết 1 tháng trước
0 2
White
19 1
Toán tử XOR có tính chất: + A XOR A = 0 + 0 XOR A = A Với tính chất này, có thể cài đặt bài toán sau với độ phức tạp O(N) về runtime, và với O(1)...
kiennt viết gần 2 năm trước
19 1
White
1 1
Chào mọi người, hôm nay mình viết một bài TIL nhỏ về cách lấy độ phân giải của màn hình hiện tại đang sử dụng. xdpyinfo | grep dimensions Kết quả...
namtx viết 12 tháng trước
1 1
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
2 bài viết.
1 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!