Các câu hỏi phỏng vấn về SQL và Python trong lĩnh vực quảng cáo: hướng dẫn đầy đủ

Cập nhật lần cuối: 8 Tháng Tư 2026
  • Các cuộc phỏng vấn kỹ thuật trong lĩnh vực công nghệ quảng cáo tập trung vào kỹ năng SQL trung cấp, Python với thư viện pandas và kỹ năng phân tích.
  • Việc nắm vững các hàm JOIN, GROUP BY, truy vấn con và hàm cửa sổ trong cả SQL và các hàm tương đương trong pandas là điều cần thiết.
  • Hiểu rõ các chỉ số đánh giá mô hình như độ chính xác, F1 hoặc ROC-AUC sẽ làm tăng giá trị trong các vai trò phân tích nâng cao.
  • Việc chuẩn bị hiệu quả cần kết hợp lý thuyết, nhiều bài tập thực hành và khả năng giải thích lý luận một cách rõ ràng.

Câu hỏi phỏng vấn về công nghệ quảng cáo, SQL và Python

Nếu bạn đang chuẩn bị cho một cuộc phỏng vấn trong lĩnh vực công nghệ quảng cáo , phân tích kỹ thuật số hoặc phân tích dữ liệu , sớm muộn gì bạn cũng phải đối mặt với bài kiểm tra kỹ thuật đầy thử thách. Đó là nơi các công ty kiểm tra xem bạn có thực sự thành thạo những gì bạn đã ghi trong CV hay không: SQL để trích xuất dữ liệu, Python để xử lý và phân tích dữ liệu, và một số kỹ năng tư duy phân tích để không bị lạc giữa tất cả các bảng và đoạn mã.

Tin tốt là các cuộc phỏng vấn kỹ thuật không phải là điều kỳ diệu: chúng thường xoay quanh các khối kiến ​​thức cơ bản về SQL, Python và đánh giá mô hình . Nếu bạn nắm vững các nguyên tắc cơ bản, thực hành với các bài tập thực tế và học cách giải thích lý lẽ của mình, bạn sẽ có lợi thế đáng kể so với các ứng viên khác.

Vì sao phỏng vấn kỹ thuật lại đáng sợ (và làm thế nào để giảm bớt sự lo lắng)

các tham số trí tuệ nhân tạo
Bài viết liên quan:
Các tham số của trí tuệ nhân tạo và cách chúng định hình các mô hình

Trong các vị trí phân tích dữ liệu hoặc sản phẩm trong lĩnh vực công nghệ quảng cáo, các cuộc phỏng vấn kỹ thuật thường kết hợp các câu hỏi lý thuyết với các bài tập thực hành trực tiếp . Bạn có thể được yêu cầu giải thích chức năng của một mệnh đề SQL hoặc giải quyết một trường hợp kinh doanh liên quan đến dữ liệu chiến dịch quảng cáo lập trình.

Thông thường, bạn sẽ được đánh giá trên ba khía cạnh: SQL ở mức độ trung cấp (JOIN, GROUP BY, truy vấn con, hàm cửa sổ), Python hướng dữ liệu (pandas, làm sạch dữ liệu, tổng hợp, hợp nhất) và khả năng diễn giải kết quả cũng như truyền đạt phát hiện . Họ không tìm kiếm một nhà khoa học dữ liệu cấp cao, mà là người có thể làm việc với dữ liệu một cách mạnh mẽ và đáng tin cậy.

Sai lầm điển hình mà nhiều ứng viên mắc phải là tập trung vào việc ghi nhớ cú pháp mà quên thực hành các bài tập hoàn chỉnh , tương tự như những bài tập bạn sẽ gặp trên các nền tảng như HackerRank, StrataScratch, hoặc các bài kiểm tra nội bộ của chính công ty. Mục tiêu của bạn nên là đến buổi phỏng vấn với kinh nghiệm đã giải quyết hàng chục truy vấn và kịch bản rất giống nhau.

Kỹ năng SQL thường được yêu cầu trong các cuộc phỏng vấn về quảng cáo và phân tích dữ liệu.

Đối với vị trí chuyên viên phân tích trong lĩnh vực công nghệ quảng cáo hoặc tiếp thị kỹ thuật số, các công ty kỳ vọng bạn thành thạo SQL quan hệ cổ điển : trích xuất dữ liệu từ nhiều bảng, kết hợp, nhóm và lọc dữ liệu, cũng như tạo ra các chỉ số hữu ích. Họ không yêu cầu kỹ năng quản trị cơ sở dữ liệu, nhưng bạn nên thoải mái với các truy vấn có độ phức tạp vừa phải.

Thông thường, bài kiểm tra sẽ bao gồm các truy vấn kết hợp INNER JOIN, LEFT JOIN, các bộ lọc với mệnh đề WHERE, các phép tổng hợp với GROUP BY và một số điều kiện trên các phép tổng hợp sử dụng mệnh đề HAVING. Từ đó, ở các vị trí nâng cao hơn một chút, rất phổ biến khi thấy các truy vấn con và các hàm cửa sổ để xếp hạng, tính tổng tích lũy và so sánh hàng.

Trong lĩnh vực công nghệ quảng cáo, bạn thường sẽ phải trả lời những câu hỏi kinh doanh như "Chiến dịch nào có tỷ lệ CTR tốt hơn mức trung bình của ngành?" hoặc "Nhà xuất bản nào đang mất lượt hiển thị so với tháng trước?". Giải quyết hiệu quả những câu hỏi này thường đòi hỏi sự hiểu biết cơ bản về các truy vấn con tương quan và các hàm cửa sổ.

Các câu hỏi SQL cơ bản thường gặp (và cách trả lời)

Hầu hết các cuộc phỏng vấn kỹ thuật liên quan đến dữ liệu đều bao gồm một số câu hỏi lý thuyết SQL cơ bản . Họ không cố gắng bắt lỗi bạn, mà chỉ muốn đảm bảo bạn có nền tảng kiến ​​thức vững chắc.

Một trong những câu hỏi thường gặp nhất là sự khác biệt giữa mệnh đề WHERE và HAVING . Cách giải thích rõ ràng nhất là WHERE lọc các hàng riêng lẻ trước khi nhóm , trong khi HAVING lọc các nhóm đã được tổng hợp . Bạn cũng có thể đề cập rằng các điều kiện liên quan đến các hàm tổng hợp (COUNT, SUM, AVG, v.v.) nên được đặt trong HAVING, chứ không phải WHERE.

Một câu hỏi kinh điển khác là có những loại phép nối nào và khi nào nên sử dụng từng loại: INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN, và trong một số trường hợp, CROSS JOIN hoặc tự nối. Trong phân tích dữ liệu, LEFT JOIN được sử dụng rộng rãi khi bạn muốn giữ lại toàn bộ tập dữ liệu chính (ví dụ: tất cả người dùng) ngay cả khi không có bản ghi liên quan nào trong bảng phụ (ví dụ: các giao dịch mua hàng).

Ví dụ về các truy vấn SQL cơ bản và logic của chúng.

Để bạn hình dung về mức độ "tối thiểu hợp lý", bạn cần có khả năng viết các truy vấn từ bộ nhớ, chẳng hạn như chọn các cột cụ thể, lọc hàng và sắp xếp kết quả . Ở mức độ rất cơ bản, các câu hỏi điển hình bao gồm: làm thế nào để trích xuất tất cả các cột từ một bảng, làm thế nào để chỉ chọn một số cột hoặc làm thế nào để áp dụng các bí danh dễ đọc với AS.

Cũng thường gặp câu hỏi về mệnh đề WHERE với nhiều điều kiện kết hợp AND, OR và NOT, hoặc cách sử dụng các toán tử so sánh (<, <=, >, >=, =) cho cả giá trị số và ngày tháng. Nhiều công ty nhấn mạnh đến bộ lọc NULL , trong đó chỉ sử dụng dấu bằng là không đủ; bạn cần sử dụng IS NULL hoặc IS NOT NULL.

Một phương pháp kinh điển khác là lọc dựa trên văn bản với toán tử LIKE và các mẫu sử dụng ký tự đại diện % và _. Ví dụ, bạn có thể tìm các chiến dịch có tên chứa một từ cụ thể hoặc người dùng có địa chỉ email kết thúc bằng một tên miền cụ thể. Điều quan trọng cần giải thích là toán tử LIKE '%text%' tìm kiếm mẫu ở bất kỳ đâu trong chuỗi.

Cuối cùng, phần cơ bản này thường bao gồm cách cập nhật bản ghi bằng lệnh UPDATE và lọc các hàng được sửa đổi bằng lệnh WHERE, cũng như cách xóa các hàng bằng lệnh DELETE FROM với các điều kiện rõ ràng. Điều quan trọng là bạn luôn phải nhấn mạnh tầm quan trọng của việc sử dụng mệnh đề WHERE cụ thể để tránh vô tình xóa mất một nửa bảng.

Các truy vấn trung gian: GROUP BY, HAVING, truy vấn con và UNION

Khi bạn vượt qua cấp độ junior, hầu hết các công ty đều bắt đầu đánh giá cao khả năng thành thạo việc kết hợp GROUP BY, các hàm tổng hợp và lọc trên các tập hợp với HAVING . Đây là những gì bạn sẽ sử dụng hàng ngày để tạo báo cáo hiệu suất cho các chiến dịch, đối tượng và nội dung quảng cáo.

  PHP là gì?: Hướng dẫn đầy đủ

Nó hoạt động như sau: GROUP BY nhóm các hàng theo một hoặc nhiều cột, và bạn có thể áp dụng SUM, COUNT, AVG, MIN và MAX cho các nhóm này để tính toán các chỉ số. Tiếp theo là HAVING, để chỉ giữ lại các nhóm đáp ứng một điều kiện, ví dụ: khách hàng có doanh số bán hàng trên một ngưỡng nhất định.

Một chủ đề thường xuyên xuất hiện khác là các truy vấn con : một truy vấn nằm trong một truy vấn khác. Chúng thường được sử dụng để lọc theo các giá trị được tính toán ở bước trước đó, chẳng hạn như chọn khách hàng có doanh số bán hàng cao hơn mức trung bình toàn cầu hoặc các chiến dịch có số lượt hiển thị trên phân vị thứ 90.

Bạn cũng thường được hỏi về sự khác biệt giữa UNION và UNION ALL . UNION kết hợp hai tập kết quả có cùng cấu trúc và loại bỏ các bản ghi trùng lặp; UNION ALL thực hiện điều tương tự nhưng giữ lại tất cả các hàng, ngay cả khi chúng lặp lại. Trong phân tích dữ liệu, bạn thường ưu tiên sử dụng UNION ALL vì lý do hiệu suất và vì bạn muốn bảo toàn tất cả các bản ghi gốc.

Hàm cửa sổ: bước tiến tiếp theo trong SQL

Các hàm cửa sổ đã trở thành tiêu chuẩn trong kiểm thử kỹ thuật ở một mức độ nhất định, đặc biệt là đối với các vị trí liên quan đến công nghệ quảng cáo, nơi cần phân tích xu hướng theo thời gian, xếp hạng chiến dịch hoặc tổng vốn đầu tư.

Ý tưởng chính là hàm cửa sổ tính toán một giá trị trên một tập hợp các hàng liên quan đến hàng hiện tại , nhưng không thu gọn kết quả như hàm GROUP BY. Nói cách khác, bạn vẫn thấy từng hàng riêng lẻ, nhưng kèm theo đó là một giá trị tổng hợp được tính toán trên một "cửa sổ" dữ liệu.

Cú pháp thông thường là sử dụng hàm (SUM, AVG, RANK, v.v.) theo sau là OVER, và bên trong OVER xác định phân vùng (PARTITION BY) và thứ tự (ORDER BY). Ví dụ, tính toán thứ hạng bán hàng theo nhân viên bán hàng hoặc tổng số lượt hiển thị mỗi ngày.

Nếu muốn thể hiện sự thành thạo, bạn nên làm quen với các hàm như RANK, DENSE_RANK, ROW_NUMBER, LAG và LEAD . Chúng rất hữu ích để xếp hạng các chiến dịch dựa trên hiệu suất, so sánh từng kỳ với kỳ trước đó hoặc xác định sự biến động hàng năm của các chỉ số quan trọng.

CTE, tổng tích lũy và trung bình động

Trong các cuộc phỏng vấn xin việc hiện đại, khả năng đọc hiểu mã SQL của bạn được đánh giá rất cao. Đó là lý do tại sao bạn thường được hỏi về Common Table Expressions (CTE) . Về cơ bản, CTE là một loại bảng tạm thời được đặt tên, được định nghĩa bằng mệnh đề WITH, chỉ tồn tại trong suốt quá trình thực thi truy vấn.

CTE (Common Table Expression) được sử dụng để chia nhỏ các truy vấn phức tạp thành các khối logic và tái sử dụng các kết quả trung gian. Ví dụ, trước tiên bạn tính toán các chỉ số hàng ngày cho mỗi chiến dịch trong một CTE, sau đó, trong truy vấn chính, bạn thực hiện các phép tổng hợp hoặc lọc bổ sung trên kết quả đó.

Một bài tập rất phổ biến khác là tính tổng tích lũy bằng cách sử dụng hàm SUM như một hàm cửa sổ. Trong môi trường quảng cáo công nghệ, người ta thường yêu cầu cung cấp số lượt hiển thị, lượt nhấp chuột hoặc chi tiêu tích lũy để xem hiệu quả của một chiến dịch theo thời gian.

Liên quan đến điều này là các trung bình động , trong đó hàm AVG được áp dụng như một hàm cửa sổ trên một khung hàng được dịch chuyển (ví dụ: hai ngày trước đó và ngày hiện tại). Đây là một cách đơn giản để làm mịn chuỗi thời gian và phát hiện xu hướng mà không cần phụ thuộc quá nhiều vào các đỉnh hàng ngày.

Trình độ Python thường được yêu cầu đối với nhà phân tích dữ liệu.

Trong hầu hết các vị trí phân tích dữ liệu (bao gồm cả lĩnh vực công nghệ quảng cáo), các công ty không mong đợi bạn trở thành chuyên gia về máy học, nhưng họ kỳ vọng bạn có thể sử dụng thành thạo Python với thư viện pandas . Thông thường, bạn sẽ được yêu cầu tải các tập dữ liệu, làm sạch chúng, chuyển đổi chúng và thu được các số liệu hoặc hình ảnh trực quan đơn giản.

Các bài kiểm tra Python thường tập trung vào các thao tác như đọc dữ liệu từ tệp CSV , kiểm tra giá trị null và kiểu dữ liệu cột, lọc hàng, tạo cột mới, tổng hợp dữ liệu bằng cách sử dụng groupby và kết hợp giữa các DataFrame. Trong nhiều trường hợp, cách diễn đạt gần như giống hệt phần SQL, nhưng ở định dạng pandas.

Trong bài kiểm tra phân tích, việc yêu cầu xây dựng các mô hình phức tạp từ đầu không phải là điều phổ biến, mặc dù họ có thể đánh giá cao khả năng kết nối với scikit-learn để huấn luyện một mô hình cơ bản và trên hết là kiến ​​thức của bạn về các chỉ số cơ bản để đo lường hiệu suất của nó.

Các thao tác cơ bản với pandas mà bạn nên nắm vững

Để hoàn thành thành công bất kỳ bài tập dữ liệu Python nào, bạn phải thành thạo các thao tác cơ bản với DataFrame. Bước đầu tiên thường là tải một tệp bằng cách sử dụng `read_csv` và khám phá cấu trúc của nó bằng các phương thức như `head()`, `info()` hoặc `describe()`.

Phần xử lý các giá trị null cũng thường xuất hiện: đếm số lượng giá trị null trên mỗi cột bằng isnull().sum(), quyết định xem có nên xóa toàn bộ hàng hoặc cột bằng dropna() hay điền vào các giá trị thiếu bằng fillna(), ví dụ như sử dụng giá trị trung bình hoặc trung vị của cột.

Đối với bộ lọc, bạn sẽ được yêu cầu xây dựng các điều kiện trên các cột số hoặc cột phân loại, chẳng hạn như chọn doanh số bán hàng trên một số tiền nhất định hoặc các hàng đáp ứng nhiều điều kiện kết hợp với toán tử & và |. Điều quan trọng là phải biết cách viết dataframe mà không cần do dự.

Phần giải thích về `groupby` trong pandas hầu như luôn được bao gồm, vì nó tương đương trực tiếp với `GROUP BY` của SQL. Bạn nhóm theo một hoặc nhiều cột và sau đó áp dụng các phép tổng hợp như `sum`, `mean`, `count`, v.v. Cú pháp `groupby('column').agg()` là rất cần thiết.

Kết hợp và hợp nhất giữa các DataFrame

Cũng giống như việc thành thạo JOIN trong SQL là điều thiết yếu, việc thành thạo pd.merge là bắt buộc trong pandas . Các công ty sẽ muốn xem liệu bạn có biết cách kết hợp các tập dữ liệu có chung một khóa, ví dụ, một bảng người dùng với một bảng khác về sự kiện hoặc giao dịch mua bán hay không.

Hàm merge nhận hai DataFrame cần kết hợp, cột khóa (on) và loại kết hợp (how), có thể là 'left', 'right', 'inner' hoặc 'outer', giống như trong SQL. Trong phân tích dữ liệu, phép nối trái (left join) chủ yếu được sử dụng để giữ nguyên tập dữ liệu chính và thêm các thuộc tính hoặc số liệu từ các bảng phụ.

  So sánh toàn diện các công cụ lập lịch kịch bản và quản lý lịch trình

Trong buổi phỏng vấn, bạn nên đề cập đến những chi tiết như điều gì xảy ra khi có các khóa trùng lặp ở cả hai phía hoặc cách xử lý xung đột tên cột với hậu tố tham số. Điều này thể hiện sự trưởng thành hơn.

Các câu hỏi Python điển hình, mang tính lý thuyết hơn

Ngoài pandas, nhiều cuộc phỏng vấn còn bao gồm một phần ngắn các câu hỏi tổng quát về Python để kiểm tra sự hiểu biết của bạn về ngôn ngữ này. Đó thường là những câu hỏi ngắn về các tính năng, bộ nhớ, kiểu dữ liệu hoặc các đoạn cú pháp nhỏ.

Trong số các chủ đề xuất hiện nhiều lần là quản lý bộ nhớ tự động trong Python, dựa trên một vùng nhớ heap riêng mà người dùng không truy cập trực tiếp và một bộ thu gom rác chịu trách nhiệm giải phóng các đối tượng không còn được tham chiếu nữa.

Người ta cũng thường yêu cầu người khác so sánh Python với Java , không phải để tuyên bố ngôn ngữ nào thắng, mà để chứng minh rằng bạn hiểu sự khác biệt: Python năng động hơn, với cú pháp ngắn gọn hơn, hoàn hảo cho việc tạo mẫu và khoa học dữ liệu, trong khi Java có xu hướng chiếm ưu thế trong các hệ sinh thái doanh nghiệp và hiệu năng cao.

Các câu hỏi điển hình khác xoay quanh biểu thức lambda (các hàm ẩn danh cho các phép toán đơn giản), quy trình đóng gói/giải nén để tuần tự hóa các đối tượng thành byte và truy xuất chúng, hoặc sự khác biệt giữa danh sách và bộ dữ liệu, trong đó danh sách có thể thay đổi và được định nghĩa bằng dấu ngoặc vuông, còn bộ dữ liệu là bất biến và được định nghĩa bằng dấu ngoặc đơn.

Các khái niệm Python quan trọng hơn trong các cuộc phỏng vấn

Thường thì người ta hay hỏi cách xóa hoặc sao chép một đối tượng trong Python. Thông thường, chỉ cần giải thích rằng bạn có thể sử dụng câu lệnh `del` để xóa một tham chiếu, và sao chép nông được thực hiện bằng `copy.copy()`, trong khi sao chép sâu yêu cầu `copy.deepcopy()`.

Một khái niệm khác có thể xuất hiện, đặc biệt là trong các cấu hình máy chủ phụ trợ, là hiệu ứng "tấn công dồn dập" ( dogpile effect ), mô tả tình huống nhiều người dùng hoặc quy trình cùng lúc tấn công một tài nguyên (ví dụ: một trang web hoặc bộ nhớ đệm), làm quá tải hệ thống.

Liên quan đến hệ sinh thái, bạn cũng có thể gặp các câu hỏi về cơ sở dữ liệu có thể sử dụng với Python . Cách tiếp cận hợp lý nhất là đề cập đến một số cơ sở dữ liệu phổ biến như MySQL, PostgreSQL, SQLite, MongoDB và Oracle, và lưu ý rằng Python thường tích hợp tốt với nhiều loại công cụ cơ sở dữ liệu quan hệ và NoSQL khác nhau.

Cuối cùng, những câu hỏi đơn giản hơn thường nảy sinh, chẳng hạn như làm thế nào để sắp xếp một từ điển bằng cách sử dụng từ khóa `sorted` trên các mục, không gian tên là gì và nó được sử dụng để làm gì (liên kết tên với các đối tượng trong các phạm vi khác nhau), hoặc làm thế nào để khởi chạy một tiến trình con bằng cách sử dụng mô-đun `subprocess` với các hàm như `run()` hoặc `Popen()`.

Các chỉ số đánh giá mô hình trong Python: những điều tối thiểu bạn cần biết

Mặc dù nhiều vị trí phân tích viên không yêu cầu bạn thiết kế kiến ​​trúc học sâu, nhưng việc nắm vững các chỉ số cơ bản để đánh giá mô hình phân loại là điều phổ biến , đặc biệt nếu công việc liên quan đến sản phẩm dữ liệu, phân bổ chiến dịch hoặc phát hiện gian lận trong lĩnh vực quảng cáo công nghệ.

Điểm xuất phát là ma trận nhầm lẫn , tóm tắt những thành công và thất bại của bộ phân loại nhị phân hoặc đa lớp. Trong trường hợp nhị phân, nó được chia thành các kết quả dương tính thật (TP), âm tính thật (TN), dương tính giả (FP) và âm tính giả (FN). Hiểu rõ bốn loại này là điều then chốt.

Từ ma trận, các chỉ số như độ chính xác (accuracy ), đo lường tỷ lệ dự đoán đúng trên tổng số; độ chính xác (precision ) (TP / dự đoán tích cực); và độ nhạy (recall hoặc sensitivity) (TP / số lượng tích cực thực tế). Hai chỉ số cuối cùng này đặc biệt quan trọng khi các lớp không cân bằng.

Điểm F1 kết hợp độ chính xác và độ thu hồi bằng cách sử dụng trung bình điều hòa, phạt điểm đối với các điểm số đặc biệt thấp ở một trong hai yếu tố. Đây là một chỉ số phổ biến trong các trường hợp cả sai sót dương tính giả và âm tính giả đều gây tốn kém, chẳng hạn như phát hiện gian lận, chấm điểm khách hàng tiềm năng hoặc phát hiện bệnh tật.

Các chỉ số nâng cao khác: ROC-AUC, logloss, Jaccard, và nhiều chỉ số khác.

Đối với các vị trí yêu cầu kiến ​​thức chuyên sâu hơn về khoa học dữ liệu hoặc phân tích tiếp thị, các công ty sẽ xem xét liệu bạn có thành thạo các chỉ số nâng cao hơn như ROC-AUC hay không. ROC-AUC đo diện tích dưới đường cong ROC và phản ánh khả năng phân tách các nhóm của mô hình.

Đường cong ROC biểu thị mối quan hệ giữa tỷ lệ dương tính thực (độ thu hồi) và tỷ lệ dương tính giả (1 – độ đặc hiệu) đối với các ngưỡng quyết định khác nhau. Một mô hình ngẫu nhiên sẽ nằm trên đường chéo, trong khi một mô hình tốt sẽ nằm gần góc trên bên trái hơn. Diện tích dưới đường cong càng lớn, khả năng phân biệt càng tốt.

Một chỉ số phổ biến khác là tổn thất logarit (logloss) , đánh giá chất lượng của các xác suất dự đoán, phạt nặng sự tự tin thái quá và các lỗi. Một mô hình hoàn hảo sẽ có tổn thất logarit bằng 0, và nhìn chung, tổn thất logarit càng thấp thì càng tốt.

Họ cũng có thể hỏi bạn về chỉ số Jaccard , chỉ số này đo lường sự tương đồng giữa hai tập hợp bằng kích thước của phần giao nhau chia cho kích thước của phần hợp nhất. Nó được sử dụng để đánh giá các thuật toán phân loại, phân đoạn và hệ thống đề xuất, cùng nhiều ứng dụng khác.

Trong một số ngữ cảnh , biểu đồ tăng trưởng và nâng cao được đề cập , cho thấy tỷ lệ phần trăm mục tiêu bạn đạt được chỉ bằng cách sử dụng một phần dân số (ví dụ: 20% người dùng hàng đầu được mô hình của bạn đánh giá). Điều này được sử dụng rộng rãi trong tiếp thị để quyết định nên nhắm mục tiêu vào ai trước tiên.

Kiểm định Kolmogorov-Smirnov, hệ số Gini và đánh giá chuyên sâu

Nếu công ty tập trung mạnh vào các mô hình chấm điểm hoặc rủi ro, các chỉ số như thống kê Kolmogorov-Smirnov (KS) có thể xuất hiện , đo lường mức độ phân tách giữa phân bố điểm tích cực và tiêu cực.

Giá trị KS gần 100 (tính theo phần trăm) cho thấy mô hình phân tách hai quần thể gần như hoàn hảo; giá trị gần 0 ngụ ý rằng mô hình không phân biệt tốt hơn so với xác suất ngẫu nhiên. Trên thực tế, các mô hình thực tế nằm trong khoảng giá trị trung gian và được so sánh với nhau để chọn ra mô hình tốt nhất.

  Brackets IDE: Hướng dẫn đầy đủ — Lịch sử, cài đặt, tiện ích mở rộng và lợi ích của một trong những trình soạn thảo mã phổ biến nhất

Hệ số Gini là một chỉ số khác được suy ra từ ROC-AUC bằng công thức Gini = 2 × AUC – 1. Rất phổ biến trong lĩnh vực tín dụng và bảo hiểm, nó cũng được hiểu là thước đo sự bất bình đẳng: Gini càng cao, khả năng tập trung các kết quả tích cực thực sự ở điểm số cao hơn của mô hình càng lớn.

Trong các cuộc phỏng vấn nâng cao hơn, bạn có thể được yêu cầu giải thích cách các chỉ số này được triển khai trong Python bằng scikit-learn (ví dụ: confusion_matrix, accuracy_score, roc_auc_score, f1_score…) và bình luận về thời điểm sử dụng từng chỉ số tùy thuộc vào bản chất của vấn đề và sự mất cân bằng lớp.

Cách thức cấu trúc câu trả lời trong buổi phỏng vấn kỹ thuật

Ngoài đoạn mã bạn viết, nhà tuyển dụng còn rất chú ý đến cách bạn suy nghĩ và cách bạn diễn đạt . Một câu trả lời thiếu cấu trúc có thể khiến bạn trông thiếu kinh nghiệm hơn so với thực tế, ngay cả khi bạn biết câu trả lời đúng.

Một cách tiếp cận rất hữu ích để trả lời các câu hỏi kỹ thuật như sau: trước tiên, hãy giải thích khái niệm bằng một câu , sau đó cung cấp một ví dụ cụ thể (lý tưởng nhất là liên quan đến một trong những dự án của bạn), và nếu cần thiết, hãy đề cập đến các phương án thay thế hoặc các điểm khác biệt nhỏ . Cách này hiệu quả như nhau đối với SQL, Python hoặc các chỉ số mô hình.

Ví dụ, nếu bạn được hỏi CTE dùng để làm gì, bạn có thể nói rằng đó là một truy vấn con tạm thời được đặt tên giúp cải thiện khả năng đọc hiểu của các truy vấn phức tạp, thêm rằng bạn sử dụng nó khi cần tái sử dụng một kết quả trung gian nhiều lần, và đề cập rằng trong một số trường hợp, nó có thể được thay thế bằng các truy vấn con lồng nhau mặc dù điều đó ít rõ ràng hơn.

Việc suy nghĩ thành tiếng cũng rất quan trọng . Nếu bạn gặp khó khăn, đừng im lặng: hãy nói rõ những gì bạn đang cố gắng làm, thông tin nào bạn còn thiếu, những giả định nào bạn đang đưa ra. Điều này giúp người phỏng vấn thấy được quá trình suy nghĩ của bạn và đôi khi thậm chí còn cung cấp cho bạn những manh mối hoặc sự làm rõ giúp bạn dễ dàng tiến lên hơn.

Những lỗi thường gặp nhất trong phỏng vấn kỹ thuật về dữ liệu

Nhiều ứng viên bị loại không phải vì thiếu kỹ năng SQL hoặc Python, mà do sự kết hợp giữa khâu chuẩn bị kém và lỗi giao tiếp . Điều quan trọng là phải nhận thức đầy đủ các lỗi thường gặp để tránh chúng.

Thứ nhất là học thuộc lòng mà không hiểu . Việc biết cú pháp của RANK hay hàm lambda không có nhiều ích lợi nếu bạn không thể giải thích được trong trường hợp nào bạn sẽ sử dụng những công cụ đó hoặc tại sao chúng lại được ưu tiên hơn các lựa chọn thay thế khác.

Một lỗi rất phổ biến khác là không đánh giá chất lượng dữ liệu trong các bài tập. Nếu được cung cấp một tập dữ liệu, trước khi bắt đầu tổng hợp, bạn nên kiểm tra xem có giá trị rỗng, trùng lặp hoặc giá trị ngoại lệ nào có thể làm sai lệch phân tích hay không. Điều này thể hiện khả năng phán đoán tốt và kinh nghiệm thực tiễn.

Việc tránh đặt câu hỏi làm rõ cũng rất có hại . Ví dụ, trong một bài toán kinh doanh về chiến dịch quảng cáo, việc hỏi về tính mùa vụ, khung thời gian mục tiêu, liệu có cần đo lường theo người dùng hay theo lượt hiển thị, v.v. là hoàn toàn hợp lý. Im lặng và đưa ra giả định thường dẫn đến những giải pháp không phù hợp với ý định của người phỏng vấn.

Cuối cùng, hãy tránh cách tiếp cận "mã hóa quá mức": tạo ra các giải pháp phức tạp không cần thiết khi truy vấn hoặc kịch bản có thể đơn giản hơn. Trong môi trường làm việc thực tế, sự rõ ràng, khả năng bảo trì và hiệu quả được đánh giá cao , chứ không phải các giải pháp rắc rối như trò chơi xếp hình.

Kế hoạch chuẩn bị chuyên sâu trong hai tuần

Nếu bạn có ít thời gian trước buổi phỏng vấn, bạn có thể theo một kế hoạch rút gọn bao gồm ba lĩnh vực chính: SQL, Python với thư viện pandas và ứng dụng thực tế. Bạn sẽ không thể làm nên điều kỳ diệu trong 14 ngày, nhưng bạn có thể đạt được trình độ vững chắc và sự tự tin nhất định.

Trong vài ngày đầu tiên, bạn nên tập trung vào SQL từ cơ bản đến trung cấp : ôn lại cú pháp cơ bản, JOIN, GROUP BY, truy vấn con và các hàm cửa sổ thông dụng nhất. Dành thời gian để đọc ví dụ và tự viết truy vấn của riêng mình.

Ở giai đoạn thứ hai, hãy tập trung vào pandas : tải dữ liệu, làm sạch dữ liệu, lọc dữ liệu, nhóm dữ liệu, hợp nhất dữ liệu và một số thao tác trực quan hóa nhanh với matplotlib hoặc seaborn. Bạn không cần phải xây dựng các bảng điều khiển phức tạp, nhưng bạn cần có khả năng tái tạo trong Python các phép biến đổi tương tự như bạn thực hiện trong SQL.

Sau đó, hãy dành ra vài ngày để thực hành trên các nền tảng như HackerRank hoặc các kho lưu trữ bài phỏng vấn kỹ thuật. Mục tiêu là làm quen với định dạng, giới hạn thời gian và áp lực khi viết mã trong một môi trường được kiểm soát.

Cuối cùng, hãy thử một hoặc hai bài tập mô phỏng phỏng vấn đầy đủ : sử dụng một bộ dữ liệu công khai, đặt các câu hỏi kinh doanh hợp lý, giải quyết chúng bằng SQL hoặc Python, và giải thích toàn bộ quá trình suy luận của bạn bằng lời nói, từ bước tìm hiểu ban đầu đến kết luận cuối cùng.

Với sự kết hợp tốt giữa ôn tập lý thuyết, thực hành có hướng dẫn và các bài tập thực tế, bạn sẽ có được nền tảng vững chắc về SQL trung cấp, Python cho phân tích dữ liệu và các chỉ số mô hình — chính xác là những gì hầu hết các công ty trong lĩnh vực quảng cáo và phân tích dữ liệu mong muốn.