BÍ QUYẾT THÀNH CÔNG KHI PHỎNG VẤN TIK TOK & AMAZON CỦA HỌC VIÊN ENGINEER PRO
Làm việc tại các công ty công nghệ lớn như TikTok và Amazon là mơ ước của nhiều lập trình viên. Để hiện thực hóa giấc mơ này, các ứng viên không chỉ cần kỹ năng lập trình vững vàng mà còn phải có nền tảng kiến thức và kỹ năng phỏng vấn tốt.
Một học viên xuất sắc tại Engineer Pro đã có những trải nghiệm thực tiễn đáng chú ý trong quá trình học tập và phỏng vấn tại 2 gã khổng lồ công nghệ là Tiktok và Amazon.
Hãy cùng lắng nghe câu chuyện của bạn học viên này chia sẻ về hành trình của mình, từ những khóa học tại Engineer Pro cho đến kinh nghiệm phỏng vấn tại các công ty hàng đầu.
Xin chào bạn, cảm ơn bạn đã dành thời gian tham gia phỏng vấn hôm nay của team EP. Bạn có thể giới thiệu đôi chút về bản thân và quá trình học tập tại Engineer Pro được không?
Học viên: Mình hiện đang làm việc tại công ty Crypto và là cựu học viên tại Engineer Pro. Trước khi mình tham gia học tại Engineer Pro thì mình cũng biết một chút về thuật toán, nhưng cách học của mình lúc đó không có hệ thống.
Thường là lên LeetCode, chọn ngẫu nhiên bài nào thì giải bài đó thôi, chứ không học theo một lộ trình bài bản. Nhiều khi gặp bài chưa từng thấy hay dạng bài na ná nhưng cách mình giải trước đây lại không có cấu trúc rõ ràng. Điều này khiến mình dễ rơi vào trạng thái lúng túng khi gặp bài khó.
Lý do mình tìm đến Engineer Pro là để học khóa DSA nhằm củng cố kỹ năng thuật toán của mình. Ngoài ra, mình cũng đăng ký khóa System Design vì là Mobile Engineer nên mình ít có kinh nghiệm về System Design. Khi phỏng vấn, mình cũng không biết chính xác người ta sẽ hỏi gì về phần này. Vậy nên mình quyết định học thêm khóa này để củng cố kiến thức về System Design cho chắc. Đó là lý do mình quyết định tham gia 3 khóa học là Khóa DSA 2, DSA 3 và khóa System Design tại Engineer Pro.
Sau khi hoàn thành khóa học, mình mong muốn cải thiện những điểm mình đang còn thiếu. Đối với DSA, mình muốn hiểu rõ hơn về cấu trúc dữ liệu và thuật toán, học một cách có hệ thống để áp dụng hiệu quả trong thực chiến. Còn về System Design, mình hy vọng sẽ có được những tài liệu và kiến thức đầy đủ từ Engineer Pro, từ đó học hỏi thêm kinh nghiệm, xem cách họ System Design như thế nào. Điều này sẽ giúp mình tự tin hơn khi đi phỏng vấn, đặc biệt là khi gặp bài System Design. Mình sẽ biết bắt đầu từ đâu, tập trung vào những điểm nào và cần trình bày những gì.
Sau khi hoàn thành các khóa học, mình đã có thể trình bày các ý tưởng và giải pháp một cách rõ ràng và mạch lạc hơn.
Bạn có thể chia sẻ về quy trình phỏng vấn mà bạn đã trải qua tại TikTok và Amazon không?
Học viên: Về quy trình phỏng vấn tại TikTok, có ba vòng mà mình phải vượt qua.
Thật ra, lần này là lần thứ ba mình phỏng vấn tại TikTok nên họ bỏ qua phần thuật toán cho mình. Nhưng với các bạn phỏng vấn lần đầu, thường sẽ có một vòng coding với độ khó từ easy đến medium. Sau đó, sẽ có một số câu hỏi về kiến thức chuyên ngành, tùy theo vị trí mình ứng tuyển. Ví dụ, nếu phỏng vấn vị trí iOS, họ sẽ hỏi về các khía cạnh của iOS. Trước khi bước vào phỏng vấn, mình đã dành rất nhiều thời gian luyện tập qua các nền tảng như LeetCode và HackerRank, cũng như thực hành từ các tài liệu học ở Engineer Pro nên đối với mình vòng này không quá khó khăn để vượt qua.
Vòng tiếp theo là gặp Hiring Manager. Họ thường hỏi về kinh nghiệm làm việc, kiểm tra xem mình hiểu rõ về dự án mình đang làm hay không. Sau đó, họ sẽ đưa ra các tình huống thực tế để xem cách mình giải quyết. Trong vòng này cũng có câu hỏi về System Design, nhưng chỉ yêu cầu thiết kế một phần nhỏ của hệ thống trong lĩnh vực mà mình đang làm.
Vòng thứ ba thường sẽ là Hiring Manager + 1 (skip manager). Họ sẽ hỏi sâu hơn về system design, yêu cầu mình thiết kế một module hoặc cả một ứng dụng.
Cuối cùng, là vòng cuối với những câu hỏi về hành vi. TikTok không quá khắt khe về phần này. Vòng này sẽ đánh giá về kỹ năng giao tiếp, khả năng lãnh đạo và làm việc nhóm của từng cá nhân.
Chính những kiến thức từ khóa học System Design tại Engineer Pro đã giúp mình tự tin và có thể giải quyết tốt các vấn đề này.
Vậy còn về quy trình phỏng vấn tại Amazon thì sao? Có sự khác biệt nào so với TikTok không?
Học viên: Quy trình phỏng vấn của Amazon thực sự phức tạp hơn rất nhiều so với TikTok.
Phỏng vấn ở Amazon bao gồm nhiều vòng hơn, đầu tiên là mình phải nộp đơn, có người giới thiệu thì sẽ nhận được link để làm Online Assessment. Online Assessment kéo dài 90 phút với hai câu coding, một câu medium và một câu khó hơn, liên quan đến dynamic programming. Sau đó, là các câu hỏi về work simulation và system design, nhưng ở dạng câu hỏi trắc nghiệm.
Sau Online Assessment, nếu qua được sẽ là vòng phone interview với Hiring Manager. Ở đây, họ sẽ hỏi về leadership principles và một số câu hỏi về chuyên môn như domain knowledge, networking, multithreading. Cuối cùng, là một câu coding dài, liên quan đến domain của mình. Ở đây, họ hỗ trợ mình bằng cách hướng dẫn và giúp mình xác định đúng trọng tâm cần giải quyết.
Sau phone interview, là onsite interview với bốn vòng liên tiếp trong hai ngày. Mỗi vòng tập trung vào một chủ đề như algorithms, reusable code và API design, coding về kiến thức chuyên ngành và system design. Điều đặc biệt là mỗi vòng đều kèm theo hai câu hỏi về leadership principles.
Các bài coding tại Amazon thường có mức độ khó cao hơn và đòi hỏi mình phải áp dụng nhiều thuật toán phức tạp cùng khả năng tối ưu hoá. Ngoài ra, vòng System Design tại Amazon cũng yêu cầu mình phải có khả năng tư duy chiến lược và giải quyết các bài toán mang tính hệ thống lớn hơn.
Có vẻ như mỗi công ty đều có những yêu cầu đặc thù riêng. Bạn có cảm nhận gì về sự khác biệt giữa TikTok và Amazon trong quy trình tuyển dụng và đâu là nơi phỏng vấn phức tạp hơn?
Học viên: Amazon chắc chắn là phức tạp hơn rất nhiều so với TikTok, cả về quy trình phỏng vấn lẫn nội dung câu hỏi. Tại Amazon, thời gian cho mỗi buổi phỏng vấn thường kéo dài từ 1 tiếng 15 phút đến 1 tiếng rưỡi. Điều này khác hẳn với TikTok, có thời gian phỏng vấn thường ngắn hơn và ít áp lực hơn.
Ở Amazon, không chỉ dừng lại ở các câu hỏi kỹ thuật, họ còn rất chú trọng đến các leadership principles. Trong mỗi vòng phỏng vấn, mình thường phải trả lời từ hai đến ba câu hỏi liên quan đến các nguyên tắc này và điều đó khiến quá trình phỏng vấn trở nên phức tạp và đòi hỏi kỹ năng phân tích cao hơn.
Trong các vòng phỏng vấn, bạn thấy vòng nào khó nhất và đã áp dụng những kiến thức từ khóa học tại Engineer Pro như thế nào?
Học viên: Vòng coding tại Amazon là thử thách lớn nhất đối với mình. Mình khá tự tin với kiến thức chuyên môn của bản thân, đặc biệt là về domain knowledge, nhưng khi phải đối mặt với các câu hỏi về algorithms và cấu trúc dữ liệu, mình thấy mình chưa thực sự vững vàng. Đặc biệt, có một lần họ yêu cầu giải quyết bài toán tìm kiếm vé máy bay rẻ nhất – một dạng bài toán khá phức tạp về thuật toán.
May mắn thay, trong khóa DSA 2 tại Engineer Pro, mình đã từng học qua bài này, nên mình đã có sẵn một phương pháp tiếp cận rất hiệu quả. Điều này giúp mình không phải mất nhiều thời gian để suy nghĩ và tìm hướng giải quyết. Mình không cần phải học thuộc lòng từng bước, nhưng mình nhớ rõ dạng bài và cách tiếp cận từ khóa học, nên cảm thấy tự tin khi đối diện với nó. Điều đó giúp mình giải quyết bài toán một cách dễ dàng hơn và mình đã vượt qua vòng này mà không gặp quá nhiều khó khăn.
Chính nhờ kiến thức và kỹ năng đã được củng cố từ Engineer Pro, mình có thể tiếp cận bài toán một cách logic và hiệu quả hơn, thay vì bị lúng túng hay mất phương hướng trong những vòng phỏng vấn coding đầy áp lực.
Bạn có lời khuyên nào dành cho các ứng viên đang chuẩn bị cho phỏng vấn tại các công ty lớn không?
Học viên: Lời khuyên của mình dành cho các bạn là hãy tập trung vào kiến thức đặc biệt là về thuật toán và cấu trúc dữ liệu. Các khóa học tại Engineer Pro rất sát với thực tiễn, nên cứ tập trung làm tốt các phần này. Ngoài ra, đừng quên rằng System Design cũng rất quan trọng, nhất là khi phỏng vấn cho các vị trí cao hơn. Một phần nữa mà mình thấy nhiều bạn thường bỏ qua là phần behavior. Đây cũng là yếu tố quan trọng không kém trong các buổi phỏng vấn.
Một điểm mà mình muốn nhấn mạnh nữa, đó là khả năng giao tiếp. Khi phỏng vấn, không phải chỉ cần giải bài toán là đủ, mà còn phải tương tác với người phỏng vấn, để họ cảm nhận được cách bạn suy nghĩ và tiếp cận vấn đề. Ví dụ, thay vì chỉ đưa ra một giải pháp duy nhất, mình có thể đưa ra nhiều giải pháp khác nhau, rồi phân tích rõ ràng ưu và nhược điểm của từng giải pháp. Điều này giúp người phỏng vấn thấy được rằng mình có tư duy phân tích sâu sắc và trước khi tiếp cận vấn đề, mình đã suy nghĩ kỹ càng.
Cuối cùng, người phỏng vấn không chỉ tìm kiếm một người có thể giải bài toán, mà còn là người có khả năng làm việc nhóm tốt, biết cách giao tiếp và chia sẻ với đồng nghiệp. Hãy tạo ấn tượng bằng cách giao tiếp rõ ràng và tương tác tích cực trong suốt buổi phỏng vấn.
Cảm ơn bạn đã chia sẻ những kinh nghiệm quý giá! Bạn có dự định gì cho tương lai hay có muốn tham gia thêm các khóa học khác để nâng cao kiến thức cho mình không?
Học viên: Về định hướng tương lai, mình vẫn muốn tiếp tục trải nghiệm ở các công ty Big Tech khác sau khi đã có cơ hội phỏng vấn tại TikTok và Amazon. Mình muốn có thêm nhiều kinh nghiệm từ những môi trường khác nhau. Nếu sau này quay lại để phỏng vấn thêm ở các công ty khác, chắc chắn mình sẽ tìm đến Engineer Pro để ôn lại kiến thức. Mình cũng rất quan tâm đến các khóa học mới của Engineer Pro, vì mình tin rằng các khóa học này sẽ giúp ích rất nhiều trong các cuộc phỏng vấn tiếp theo.
Team EP cảm ơn bạn vì những chia sẻ hữu ích. Chúc bạn ngày càng tiến xa hơn trong lĩnh vực công nghệ và đạt được nhiều thành tựu lớn tại các công ty Big Tech. Engineer Pro luôn sẵn sàng đồng hành cùng anh trong mọi chặng đường phát triển!