Phỏng vấn tuyển dụng Machine Learning - Hướng dẫn đầy đủ
(silviasapora.github.io)- Tổng hợp kinh nghiệm thực chiến về toàn bộ quá trình tìm việc cho vị trí Research Scientist sau khi lấy bằng tiến sĩ Machine Learning
- Dựa trên trường hợp nhận offer từ mọi công ty đã hoàn tất phỏng vấn, bao gồm DeepMind, Isomorphic Labs, Cohere, Meta và các startup stealth
- Trình bày theo từng bước từ tiêu chí để có được phỏng vấn, cách chuẩn bị kỹ thuật, cảm xúc và hậu cần, so sánh startup với big tech, đến đàm phán lương
- Bao gồm các hạng mục chuẩn bị cụ thể như khác biệt về thuế và cấu trúc giữa RSU và stock option, cũng như tự triển khai transformer và attention
- Nhấn mạnh thông điệp rằng phỏng vấn về bản chất là mang tính ngẫu nhiên (stochastic), và kết quả không quyết định giá trị của bạn với tư cách là một nhà nghiên cứu
Kết quả phỏng vấn tổng thể và bối cảnh
- Tự mình trải qua và tổng hợp lại quá trình tìm việc Research Scientist sau tiến sĩ ML; khi bắt đầu gần như không có tài liệu tham khảo nào
- Nhận offer từ mọi công ty đã hoàn tất phỏng vấn — gồm DeepMind (đã nhận), Isomorphic Labs, Cohere, Meta và một startup stealth
- Anthropic, Mistral, TeslaAI phản hồi muộn nên chưa hoàn tất quy trình
- ReflectionAI là lần bị từ chối duy nhất ở vị trí RS, nhưng có đề xuất chuyển sang track Engineering
- SpaceXAI, Waymo, Wayve không gửi lời mời phỏng vấn
- Với Waymo, đã nộp đơn 6 tháng một lần suốt thời gian làm tiến sĩ nhưng chưa từng nhận phản hồi
Cách có được phỏng vấn
- Đòn bẩy quan trọng nhất để có phỏng vấn là nhiều bài báo hơn, chủ đề hợp xu hướng hơn, và kỳ thực tập tốt hơn
- Trong thời gian làm tiến sĩ có 4 bài báo first author (hoặc đồng first author) tại ICLR / NeurIPS / ICML (LLM, RL, Meta-Learning, Evolution Strategies)
- Có kinh nghiệm thực tập tại Apple và từng làm software engineer ở Meta
- Mốc tham khảo gần đúng: nếu có từ 3 bài first author trở lên + ít nhất 1 kỳ thực tập hoặc kinh nghiệm công nghiệp, thì thường có thể đều đặn nhận callback từ các lab hàng đầu
- Nếu bạn đã bắt đầu nhận được phỏng vấn, thêm bài báo cũng không giúp nhiều nữa → cần tập trung vào chuẩn bị phỏng vấn chứ không phải nghiên cứu; cảm giác “đã sẵn sàng” sẽ không tự đến, nên phải bắt đầu ngay
Cover letter, referral, cold email, LinkedIn/X
- LinkedIn / X: nhiều công ty đăng tin tuyển dụng ở đây, và với internship thì đôi khi đây là con đường ứng tuyển duy nhất
- Phải điền Google form gắn với bài đăng thì mới được tính là đã ứng tuyển
- Referral: có thì tốt nhưng không bắt buộc
- Ở DeepMind, cả vị trí có referral lẫn không có referral đều nhận được lời mời phỏng vấn
- Cold email: gửi email trực tiếp cho recruiter hoặc thành viên trong team thường được đón nhận
- Đừng chỉ lặp lại CV, mà hãy giải thích vì sao bạn phù hợp với team đó và điểm nào khiến bạn hứng thú
- Cover letter: hiếm khi được yêu cầu, nhưng nếu có thì hãy viết cho tử tế
- Đừng giao toàn bộ việc viết cho Claude / Gemini / ChatGPT, chỉ nên tự viết rồi dùng chúng để biên tập lại
Startup vs big tech
- Khó tìm startup hơn, vì không có nơi tra cứu tập trung → cách tốt nhất là qua truyền miệng từ đồng nghiệp, bạn bè, người quen cũ; bù lại mức cạnh tranh thường thấp hơn
- Quy trình phỏng vấn ở startup biến động rất lớn, còn big tech có cấu trúc tương đối dễ đoán hơn
- Nếu quy trình thấy quá dễ, đó có thể là tín hiệu về độ phức tạp thực tế của công việc
- Tính chất công việc là con dao hai lưỡi — ở startup phù hợp, bạn có thể làm nghiên cứu thú vị hơn và tạo ảnh hưởng lớn hơn; nhưng cũng có thể đi kèm áp lực nhiều hơn, nhiều việc hạ tầng hơn, và đổi hướng nghiên cứu thường xuyên hơn
- Trong phỏng vấn nên hỏi ai là người quyết định ưu tiên nghiên cứu, con đường kiếm tiền là gì, đối thủ là ai
- Cơ hội phát triển: startup cho phép tăng trưởng nhanh, mở rộng trách nhiệm, và có cơ hội định hình hướng công việc; ở big tech thì bạn chỉ là một trong số rất nhiều người
- Độ nhận diện trên CV: OpenAI hay Anthropic được nhận ra ngay, còn startup stealth vô danh thì cần giải thích thêm
- Độ ổn định việc làm: big tech cũng đã nhiều lần sa thải quy mô lớn, nên không bên nào an toàn 100%
Đãi ngộ: RSU vs Stock Option (theo chuẩn Anh)
- RSU (phổ biến ở big tech): nhận cổ phiếu thật theo lịch vesting; khi vesting thường khoảng một nửa sẽ bị bán ngay để nộp thuế thu nhập — RSU bị đánh thuế như thu nhập
- Stock option (phổ biến ở startup): không phải cổ phiếu mà là quyền mua cổ phiếu với mức giá cố định X
- Nếu giá thị trường Y > X thì có thể mua ở X và bán ở Y để hưởng chênh lệch; nếu Y < X thì option vô giá trị
- Stock option thường hết hạn sau 90 ngày kể từ khi nghỉ việc, và nếu công ty chưa niêm yết thì kể cả đã mua cũng chưa chắc bán được
- Ở Anh, ngay lúc thực hiện quyền chọn, dù chưa nhận được đồng nào, bạn vẫn phải nộp thuế thu nhập trên phần chênh lệch Y−X
- Nếu làm 2 năm ở công ty chưa niêm yết rồi nghỉ và thực hiện quyền chọn, bạn sẽ phải trả chi phí mua (X × số option) + thuế thu nhập trên (Y−X) × số option × thuế suất trước khi có bất kỳ khoản tiền thực nhận nào
- Phần lớn có tùy chọn cashless exercise, và nhiều công ty có tổ chức mua lại cổ phần nội bộ (liquidity event)
- Tuy vậy, mỗi vòng gọi vốn đều làm pha loãng tỷ lệ sở hữu; lợi nhuận tăng thêm còn chịu khoảng 20% capital gains tax, và giá trị trong liquidity event thường thấp hơn định giá chính thức của công ty
- Tóm lại: nếu recruiter đưa ra tổng đãi ngộ của startup có tính cả equity, hãy lịch sự mỉm cười nhưng tự chiết khấu con số đó đi đáng kể
Cấu trúc phỏng vấn
- Hầu hết công ty theo cấu trúc tương tự nhau, nhưng tỷ trọng từng vòng khác nhau
- Recruiter screen: thường là cuộc trò chuyện tương đối nhẹ nhàng, là cơ hội để xác nhận mức độ phù hợp của năng lực với vị trí và khả năng giải thích các bài báo của chính mình
- Technical interviews: chiếm phần lớn quy trình và là phần quan trọng nhất cần chuẩn bị; tùy công ty mà có 3–8 vòng
- Coding: kiểu LeetCode, thường ở mức Medium hoặc Hard
- ML coding/debugging: triển khai attention, viết backward pass, tìm bug trong training loop
- ML knowledge: nền tảng cơ bản, lý thuyết, applied ML, system design
- Behavioural interviews: gồm câu hỏi hành vi cổ điển và câu hỏi kiểu nghiên cứu (chủ đề quan tâm, góc nhìn về lĩnh vực); tuy casual hơn technical interview nhưng không nên xem nhẹ
Chuẩn bị kỹ thuật
- Đây là phần quan trọng nhất, đừng bỏ qua — ngay cả nhà nghiên cứu rất giỏi cũng có thể bị loại vì chuẩn bị không đủ; việc làm ML hằng ngày khác hoàn toàn với việc tự code attention từ đầu, và cần dành ít nhất một tháng để học đều đặn
- Chiến lược meta: giảm tối đa việc chuẩn bị chung chung, thay vào đó chuẩn bị có mục tiêu theo đúng vòng phỏng vấn và công ty sắp tới, để kiến thức luôn còn mới trong đầu
- Phỏng vấn RS / Engineer có thể hỏi gần như mọi thứ, từ kiến thức nền như overfitting cho tới LeetCode, triển khai transformer, hay các kiến trúc hiện đại như Griffin, TransformerXL, S4
Flashcards
- Dùng cho ML cơ bản, applied ML và thảo luận nghiên cứu; flashcard vật lý hiệu quả hơn Anki
- Tự viết flashcard đã là một nửa quá trình học, đừng tải bộ thẻ của người khác
- Khi ôn tập, hãy tự đặt câu hỏi và đào sâu sự hiểu biết; nhiều câu tự hỏi lúc học đã xuất hiện nguyên vẹn trong phỏng vấn thật
Phỏng vấn thử với LLM (Claude / Gemini)
- Trước mỗi vòng, dán mô tả vị trí, vòng phỏng vấn và công ty vào LLM (chủ yếu là Claude) rồi yêu cầu phỏng vấn thử; câu hỏi luyện tập và câu hỏi thật trùng nhau khá thường xuyên
- Nếu độ khó không phù hợp, hãy mở chat mới và mô tả rõ hơn về trình độ cũng như nền tảng của bản thân
- Claude là công cụ học tốt nhất và cho feedback công bằng hơn, trong khi Gemini có xu hướng khen hơi quá
LeetCode / NeetCode
- Tối thiểu làm Blind 75, có thể làm thêm NeetCode 150, tập trung vào Medium
- Hãy nhắm tới lời giải tối ưu cho từng bài (ví dụ lời giải O(N²) cho TwoSum là không chấp nhận được), và đừng dành quá nhiều thời gian cho Hard
- Cần triển khai nhanh các pattern cơ bản như DFS, BFS, Graphs, Backtracking, DP, Binary Search, với mục tiêu dưới 20 phút cho mỗi bài Medium
- Nếu mắc kẹt quá 15 phút, hãy xem đáp án, đánh dấu lại rồi chuyển sang bài khác
- Độ phủ quan trọng hơn độ sâu, tổng cộng giải khoảng 150 bài Medium
Sách
- Designing Machine Learning Systems (Chip Huyen): bao phủ được nhiều câu hỏi về ML cơ bản và applied ML
- The JAX Scaling Book: tác giả chỉ phát hiện ra sau phỏng vấn nhưng đánh giá rất cao; nếu biết sớm đã dùng tích cực để chuẩn bị
- Reinforcement Learning (Sutton & Barto): chỉ khuyến nghị cho người mới vào RL; với người đã làm trong lĩnh vực này thì hơi quá
Khóa học
- Đại số tuyến tính: khóa học YouTube của Gilbert Strang, có thể xem hết trong một ngày ở tốc độ 2x
- Diffusion / Flow Matching: cả khóa MIT và Stanford đều rất tốt nhưng nặng về toán; nếu chưa nghiên cứu lĩnh vực này thì chỉ cần ghi nhớ trực giác cơ bản và các điểm cốt lõi như diffusion SDE hay flow matching ODE
ML coding và debugging
- Đây là mảng có ít tài liệu tốt nhất và kinh nghiệm thực tế lại quan trọng nhất; việc luyện debug interview cũng khó vì LLM không tạo bug code đủ tự nhiên một cách ổn định
- Cách tốt nhất là review codebase của chính mình hoặc của đồng nghiệp; DeepML và Tensor Puzzles cũng hữu ích
- Mức nền mục tiêu
- triển khai transformer end-to-end
- triển khai causal, cross, self attention
- triển khai flash attention
- triển khai attention backward pass
- triển khai MLP forward / backward pass
- triển khai SGD training loop bằng PyTorch hoặc JAX
- Nếu có thể tự triển khai các mục trên dưới áp lực thời gian thì đang ở trạng thái khá tốt
Chuẩn bị cảm xúc
- Nếu bạn đang ổn về mặt tinh thần thì hãy bỏ qua phần này, để tránh gieo thêm lo âu không cần thiết
- Vấn đề lớn nhất là giấc ngủ — nhiều đêm trước phỏng vấn không ngủ được, và khi có 10 buổi phỏng vấn mỗi tuần thì đây trở thành vấn đề nghiêm trọng; ăn uống cũng khó khăn và dễ buồn nôn
- Khuyến nghị tập thể dục đều đặn, duy trì routine buổi tối nhất quán, và tránh cô lập xã hội
- Chạy bộ trước phỏng vấn giúp giải tỏa năng lượng căng thẳng và reset đầu óc
- Việc giữ routine trước phỏng vấn đem lại cảm giác ổn định lớn — đặt hoa tươi phía sau, trang điểm hoặc skincare, xem cùng một video mang tính xoa dịu
- Có lúc lo âu còn cản trở hơn cả việc chuẩn bị, thậm chí khiến đầu óc trống rỗng giữa buổi phỏng vấn
- Sẽ có lợi nếu trước khi bắt đầu bạn tự nhìn lại trigger của mình, mối quan hệ của mình với thất bại, và nền tảng của lòng tự trọng
- Thông điệp quan trọng: giá trị của bạn với tư cách một con người không được quyết định bởi các buổi phỏng vấn này, vì bản chất quy trình là ngẫu nhiên; có những điều bạn biết rất rõ nhưng vẫn có thể làm sai, và điều đó không sao cả
- Những cuốn sách hữu ích: The Now Habit, The Gifts of Imperfection, Mindset, The Tyranny of Merit
Chuẩn bị hậu cần
- Mỗi ngày chỉ một buổi phỏng vấn: phỏng vấn rất hao sức, đến buổi thứ ba trong ngày thì kết quả tự nhiên sẽ giảm; sau buổi sáng hãy dùng phần thời gian còn lại để chuẩn bị cho vòng tiếp theo
- Bắt đầu từ các công ty ít quan tâm hơn: như startup nhỏ hoặc nơi ở khu vực không ưu tiên, để làm quen quy trình, tăng tự tin và hiệu chỉnh kỳ vọng lương trước
- Cân nhắc thời điểm: mỗi công ty có tốc độ khác nhau, nên cần điều chỉnh để các offer đến vào thời gian gần nhau nhằm tạo đòn bẩy thực sự
- Cho mọi công ty biết bạn đang chạy quy trình với nơi khác: sẽ làm timeline rõ hơn, đẩy nhanh tiến độ, và khiến bạn được nhìn nhận là ứng viên nghiêm túc hơn
Đàm phán
- Trái với lời khuyên phổ biến là nên giấu offer cạnh tranh, nhiều công ty trước khi tăng offer đã yêu cầu rõ ràng bằng chứng về offer khác, thậm chí có nơi còn hỏi cả tính xác thực của ảnh chụp màn hình
- Nếu thực sự muốn tuyển bạn, công ty có thể điều chỉnh con số rất mạnh, nên lúc nào hỏi thêm cũng đáng; đa số đều sẵn sàng đàm phán
- Hạn chót rất khác nhau, từ 1–2 tuần đến kiểu mơ hồ như “trong thời gian hợp lý”, và thường không linh hoạt lắm trong việc gia hạn
- Recruiter đọc vị sở thích của ứng viên rất giỏi; những tín hiệu nhỏ như tần suất nhắc tới công ty hay giọng điệu cũng bị ghi nhận
- Công ty có dữ liệu lịch sử về lựa chọn của ứng viên → chỉ offer từ các đối thủ ngang tầm (như OpenAI) mới có trọng lượng thực sự; so sánh không thực tế sẽ không hiệu quả
Quá trình ra quyết định
- Lúc đầu vì lo lắng nên từng muốn chấp nhận sớm offer đến trước, nhưng cuối cùng đã tin vào trực giác và tìm được lựa chọn tốt hơn
- Tiêu chí chọn offer khác nhau tùy người: vị trí địa lý, đãi ngộ, danh tiếng, loại công việc; thứ tự ưu tiên cũng thay đổi khi hiểu rõ hơn về team, văn hóa và package bồi thường
- Đã nói chuyện với gần như mọi người ở cả hai công ty, nhưng ai cũng nói sẽ chọn công ty của chính họ nên không giúp được nhiều → cuối cùng, trao đổi với người thực sự hiểu rõ bản thân bạn mới là điều hữu ích nhất
Nếu làm lại thì sẽ thay đổi gì
- Duy trì spreadsheet: quản lý mọi thứ trong đầu có giới hạn; nếu ghi lại công ty, giai đoạn quy trình, deadline và thông tin liên hệ thì đã tránh được việc bỏ lỡ ứng tuyển vào vài nơi từng quan tâm
- Chuẩn bị cả cảm xúc chứ không chỉ kỹ thuật: phỏng vấn dễ bị cảm nhận như một phán quyết cuối cùng về năng lực nghiên cứu và giá trị của tấm bằng tiến sĩ, nhưng đó là cách nhìn phi lý; tự phản tư hoặc đi tư vấn trước khi bắt đầu hẳn đã có ích
- Chủ động hơn với các công ty không phản hồi: đừng chỉ dựa vào đơn ứng tuyển, mà hãy gửi cold email trực tiếp để thể hiện sự quan tâm và xuất hiện trên radar của họ
Danh sách chủ đề kỹ thuật
- Đây là danh sách chủ đề học tập được lập trước khi bắt đầu phỏng vấn; do nền tảng cá nhân nên có nhiều câu hỏi về LLM và RL, và gần như mọi chủ đề đã học đều xuất hiện ít nhất một lần
- Reinforcement Learning: Q-Learning / TD Learning, Bellman Equations, PPO, GRPO, GAE, DPO, Policy Gradient Theorem, On/Off-Policy, MuZero, Dreamer, AlphaGo, Soft Actor-Critic, MDP, v.v.
- LLMs: Flash Attention, LoRA, TransformerXL, Griffin, Perceiver, Scaling Laws, Mixture of Experts, RoPE, S4, Tokenisation, RLHF, Causal/Cross Attention, v.v.
- Generative Modelling: GANs, VAE và ELBO, Score Function, Diffusion Forward/Reverse Process (DDIM/DDPM), Diffusion SDE, Flow Matching ODE, Classifier Free Guidance
- Applied ML: Tensor Parallelism, FSDP, DDP, Pipeline Parallelism, Mixed precision training, Gradient checkpointing/accumulation/clipping, JAX·PyTorch·TensorFlow, v.v.
- General ML: Curse of dimensionality, CNN, RNN/LSTM, MLE vs MAP, Bias-Variance Tradeoff, Backprop, BatchNorm/LayerNorm/RMSNorm, Adam/AdamW, KL Divergence, Precision/Recall/F1/AUC-ROC, v.v.
- Linear Algebra: Positive Semi-Definite, Jacobian, Eigenvectors/Eigenvalues, Hessian, Null/Image space, Rank/Span, Determinant, v.v.
Chưa có bình luận nào.