NINJAVAN, MICROSOFT, GRAB – HÀNH TRÌNH KHÔNG DỪNG LẠI
Sau offer Caladan, không dừng lại ở đó bạn học viên Engineer Pro tiếp tục chinh chiến với các ông lớn khác như Microsoft, Grab và NinjaVan để tìm kiếm nhiều cơ hội mới. Không phải ai cũng sẽ đậu Big Tech ngay từ lần đầu tiên. Nhưng có những người, nhờ mỗi lần thất bại mà tiến gần hơn đến giấc mơ của mình, một bạn học viên tại Engineer Pro là một trong số đó.
Trong buổi trò chuyện cùng Engineer Pro, anh kể lại hành trình apply và phỏng vấn liên tiếp tại NinjaVan, Microsoft và Grab nơi có những vòng interview đầy thử thách, những lần vấp ngã và cả quyết định từ chối một offer để tìm điều phù hợp hơn với bản thân. Câu chuyện không chỉ là hành trình đi tìm công việc, mà còn là hành trình hiểu chính mình.
Sau khi nhận được offer từ NinjaVan, điều gì khiến anh vẫn tiếp tục apply vào những công ty khác như Microsoft hay Grab?
Đó là một khoảng thời gian mình apply rất nhiều. Lý do đơn giản là lúc đó mình chưa muốn dừng lại. Có thể nói là đang trong “mode” phỏng vấn liên tục, cứ công ty nào mở cửa là mình gõ cửa. Có những công ty như NinjaVan và Grab, mình apply ở hai team khác nhau, có cái là bạn giới thiệu, có cái là mình apply lại vì vòng trước team không tuyển Senior.
Thực ra, lúc nhận offer ở NinjaVan, mình cũng đắn đo nhiều. Nhưng trong đầu vẫn còn những cái tên như Microsoft, Grab, nơi mình rất muốn thử sức, xem mình có đạt được level cao hơn không. Vậy là cứ đi tiếp, không vì một offer mà dừng lại.
Vậy các quy trình phỏng vấn ở từng công ty diễn ra như thế nào ạ?
Đối với NinjaVan
Mở đầu là một bài online assessment – gồm ba bài coding, thời gian khoảng hai tiếng. Bài không quá đánh đố, nhưng yêu cầu rất cao về tốc độ và độ chính xác. Làm bài trong khung thời gian giới hạn khiến mình phải thực sự tỉnh táo.
Qua vòng test, mình được mời vào hai vòng technical interview. Vòng đầu tiên là với team tại Việt Nam. Họ bắt đầu bằng vài câu hỏi về background như đã làm những project nào, dùng tech stack gì, có từng scale hệ thống chưa. Sau đó là các câu hỏi về kiến thức nền tảng như cấu trúc dữ liệu, complexity, multithreading. Cuối cùng là một bài coding mình được yêu cầu giải trực tiếp trên shared doc, vừa làm vừa giải thích tư duy.
Vòng thứ hai diễn ra với team ở Singapore. Format gần giống, nhưng cảm giác “nặng đô” hơn. Họ đào sâu hơn vào design đưa ra một bài toán về xử lý đơn hàng và yêu cầu mình thiết kế hệ thống phân phối tự động trong giờ cao điểm. Mình phải nói ra từ cách chia microservices đến logic retry khi message queue bị delay. Vòng này làm mình nhận ra mình cần học thêm về high scalability.
Tổng thể, NinjaVan phỏng vấn khá chuyên nghiệp họ đánh giá mình từ cả góc độ Việt Nam và khu vực, nên cái nhìn rất toàn diện. Và tất nhiên mình có offer từ NinjaVan
Đối với Microsoft
Microsoft thì không có vòng System Design như các công ty khác, full coding luôn. Tổng cộng mình được trải qua 3 vòng phỏng vấn.
Đến vòng thứ 2 thì mình bị đánh fail. Tưởng đã rớt, nhưng một tuần sau HR liên hệ bảo mình được tiếp tục đến vòng ba. Tuy nhiên, quá trình phỏng vấn không suôn sẻ lắm nên mình vẫn không vượt qua được để nhận offer tại đây.
Đối với Grab
Grab chỉ có hai vòng phỏng vấn thôi – vòng đầu là coding, vòng sau là system design. Vòng coding thì mình làm ổn, không gặp nhiều vấn đề. Nhưng đến vòng system design thì bắt đầu cảm thấy “đuối”.
Mình nghĩ lý do khiến mình bị loại là nằm ở vòng này. Thật ra, tuỳ vào từng team trong Grab mà họ sẽ có yêu cầu khác nhau, nhưng thông thường sẽ phân chia ứng viên theo hai mức: G3 – tương đương vị trí Middle, và G4 – tức là Senior.
Lúc vào phỏng vấn, mình cũng đặt mục tiêu là G4. Nhưng khi nhìn lại, mình thấy phần trình bày giải pháp còn khá sơ sài. Mình chưa đi đủ sâu vào những phần như scalability, trade-off hay capacity planning. Có thể vì thế mà người phỏng vấn đánh giá mình chưa đạt được kỳ vọng của một ứng viên G4.
Với ba công ty đó, anh cảm thấy mình làm tốt nhất ở đâu? Và đâu là vòng anh cảm thấy “đuối” nhất?
Mình tự tin nhất là ở vòng coding. Có thể vì mình đã dành rất nhiều thời gian để luyện thuật toán từ làm LeetCode mỗi ngày. Khi vào phỏng vấn, cảm giác giống như đang giải một đề mình đã từng gặp.
Còn vòng khó nhất có lẽ là System Design ở Grab. Lúc đó mình chưa có nhiều trải nghiệm thực tế để “kể chuyện” trong hệ thống lớn. Mình biết mô hình kiến trúc là gì, biết đặt cache ở đâu, nhưng khi bị hỏi “vì sao chọn cái này thay vì cái kia”, mình hơi lúng túng. Sau buổi đó, mình mới hiểu: System Design không phải là thuộc lòng template, mà là biết mình đang xây cái gì, phục vụ ai, và vận hành ra sao.
Có điều gì khiến anh cảm thấy tiếc nuối ở Microsoft không?
Có một vòng, họ đưa ra bài graph kết hợp dynamic programming mình nhớ đã từng thấy bài đó ở đâu đó, nhưng lúc làm lại thì chưa tìm ra cách tối ưu nhất. Thời gian trôi qua nhanh hơn mình tưởng. Mình ra khỏi phòng với cảm giác “giá mà mình bình tĩnh hơn một chút”.
Microsoft là công ty đầu tiên mà mình được đi tới vòng ba dù bị đánh fail ở vòng hai – chắc có lẽ do họ muốn đánh giá thêm. Nhưng cuối cùng thì mình cũng không qua được. Lúc đó mình không buồn nhiều, nhưng có một chút tiếc. Tiếc vì mình biết mình có thể làm tốt hơn, chỉ là chưa đủ sẵn sàng.
Sau tất cả những lần phỏng vấn đó, anh rút ra bài học gì cho bản thân?
Điều đầu tiên mình học được là đừng chủ quan. Một bài coding dễ không có nghĩa là dễ đậu vì nó chỉ là “cửa đầu tiên”. Nhất là ở Grab, vòng system mới là vòng quyết định level.
Điều thứ hai là phải luyện kỹ hơn, đặc biệt là với system design. Nhờ học ở Engineer Pro, mình mới biết cách structure lại câu trả lời chia nhỏ thành từng phần rõ ràng, dùng mô hình 7 bước. Trước đó, mình toàn nói lan man, thiếu logic.
Và cuối cùng là học cách không sợ thất bại. Rớt một công ty không có nghĩa là mình dở, nó chỉ có nghĩa là mình chưa hợp hoặc chưa đúng lúc. Phải đi tiếp thì mới biết mình có thể tiến xa tới đâu.
Hiện giờ anh có nhận lời làm việc ở NinjaVan không ạ?
Mình đã từ chối offer ở NinjaVan. Cuối cùng, mình chọn một công ty khác, nơi mình thấy phù hợp hơn với hướng đi dài hạn của mình. Có lẽ không nhiều người làm vậy, nhưng với mình, offer không phải là điểm kết thúc. Nó chỉ là bước đệm để mình chọn đúng môi trường cho hành trình phía trước.
Không phải ai cũng thành công ngay từ lần đầu tiên. Nhưng nếu bạn giống như bạn học viên này của Engineer Pro - kiên trì, chịu học hỏi và dám nhìn thẳng vào điểm yếu của mình thì thất bại cũng trở thành một phần của hành trình đi tới Big Tech.
Engineer Pro hy vọng câu chuyện này đã truyền cảm hứng cho những bạn đang băn khoăn giữa “nộp tiếp hay dừng lại”. Câu trả lời đôi khi không nằm ở kết quả, mà nằm ở việc bạn đã học được gì sau mỗi lần apply.
_________________________________
Engineer Pro là một trung tâm đào tạo các khóa học chuyên sâu dành cho các software engineer. Với 100% giảng viên đến từ các Big Tech như Google, Amazon, Shopee, TikTok, … Engineer Pro đảm bảo chất lượng giảng dạy và lộ trình học tập rõ ràng, từ cơ bản đến nâng cao, giúp học viên tự tin ứng tuyển vào các vị trí software engineer trong ngành công nghệ này.
Thông tin liên hệ: