- Công ty: Ninjavan
- Thời điểm phỏng vấn: 2022
- Nơi nộp CV: Itviec
Round 1: HR liên hệ để hỏi sơ qua về kinh nghiệm và những thứ được viết trong CV, sau đó sẽ gửi 1 bài test online gồm 3 câu thuật toán trên hackerrank.
Round 2: Phỏng vấn online gồm thuật toán và system design. Tham gia phỏng 2 gồm 2 anh 1 lead 1 senior. Interviewer khá thân thiện và giỏi, kiến thức tốt. Phỏng vấn gồm 2 phần
Thuật toán: hỏi câu Next Permutation trên leetcode. Câu này tuy medium nhưng muốn giải cách tốt nhất thì khá khó nên mình chỉ làm được cách brute force. Cái này cũng do mình ko tốt thuật toán với code trên file word nên ko làm được cách tối ưu. Nhưng có vẻ 2 anh cũng ko yêu cầu mình phải giải cách tốt nhất, chủ yếu mình giao tiếp với 2 anh để cùng nhau code là ổn.
System Design: Design Feature Flags. Thiết kế các flags để tắt bật các feature trên 1 tập users nhất định. Khúc này các anh hỏi xoáy sâu làm sao để design đươc feature flags trên 1 tập users và phải tối ưu được performance. Các câu hỏi chủ yếu là thiết kế DB ra sao, chọn SQL hay noSQL, tại sao.....
Sau khi kết thúc 2 phần này sẽ tiếp tục hỏi về kiến thức CS như Isolation levels, Threading, Microservices, Docker, K8s, Kafka,....
Kết thúc buổi này mấy anh sẽ trả lời đầy đủ những gì mình còn thắc mắc và giới thiệu team đang làm gì. Đánh gía chung mình thấy 2 anh giỏi và thân thiện, team cũng đang giải quyết những vấn đề khá hay.
Round 3: Round này mình gặp 1 anh CTO người nước ngoài. Ảnh cho 1 đoạn code và hỏi mình cách để refactor và optimize đoạn code này. Vòng này cũng khá đơn giản do anh CTO cũng như đang pair làm việc chung với mình. Sau đó, anh sẽ hỏi thêm một số câu về CS như DB indexing, Networking, về Microservices như RPC vs Message Queue,... Nói chung vòng này ko sâu như vòng trước và anh CTO cũng khá thân thiện.
Sau vòng này thì HR contact và đánh giá mình chưa được mức Senior nên ko process tiếp. Mình cũng khá tiếc vì mình nghĩ đây là một công ty tốt để improve technical skills.
Kinh nghiệm sau lần phỏng vấn: Leetcode chưa giải được tốt. Vẫn chưa nắm vững Microservices + System Design nên mình nghĩ do vậy mà chưa đạt mức Senior. Với bên đây Senior cũng yêu cầu phải nắm vững nhiều ngôn ngữ (Golang, Java, Javascript...) cũng nhưng nắm cái lib/tools (Docker, Kafka, ElasticSearch, K8s, RabbitMQ...), làm được luôn FE (ReactJS) sẽ được đánh giá cao.