xTer chia sẻ kinh nghiệm phỏng vấn thực tế chinh phục NTD dày chuyên môn | Học trực tuyến CNTT, học lập trình từ cơ bản đến nâng cao

xTer chia sẻ kinh nghiệm phỏng vấn thực tế chinh phục NTD dày chuyên môn

Chia sẻ kiến thức 17/09/2019

Tốt nghiệp chuyên ngành Địa chất tại Đại học Bách khoa, nhưng ra trường lại làm trái ngành, sau đó 4 năm, xTer Q.T phát hiện ra niềm đam mê Lập trình và quyết tâm theo đuổi. Bạn có nghĩ như vậy là quá muộn để thay đổi lựa chọn nghề nghiệp của mình?

Hãy xem cách trả lời phỏng vấn của xTer Q.T (nhân vật yêu cầu giấu tên) trong bài chia sẻ dưới đây, bạn sẽ có ngay câu trả lời cho mình nhé! 

Vượt qua vòng phỏng vấn full test kỹ thuật, Q.T tiếp tục hành trình chinh phục nhà tuyển dụng (NTD) của mình tại vòng vấn đáp trực tiếp. Ở vòng interview này, T được phỏng vấn bởi NTD là cấp quản lý cao nhất của công ty mà bạn đã apply vào. Cách giao tiếp, phản xạ, tư duy và định hướng cá nhân là những điểm chính mà NTD muốn kiểm tra Q.T trong cuộc phỏng vấn. 

Kết quả, sau 3 ngày phỏng vấn, xTer Q.T nhận được thông tin mình đã pass và được mời làm việc tại công ty. 

Q.T cho biết kiến thức học ở bài giảng FUNiX giúp bạn được khoảng 70% nội dung trả lời trong cuộc phỏng vấn, 30% còn lại là do bạn tự học và được mentor hỗ trợ. T chia sẻ chân tình: “Những cái mình trả lời, toàn được học qua từ mentor, chứ không có gì ở ngoài cả, đa số mình học từ mentor trong lúc được coaching. Được cái mình ghi nhớ và hiểu bản chất nên lúc trả lời không bị lúng túng”. 

Cũng phải đề cập rằng đối mặt với các câu hỏi “khó nhằn” từ NTD và đòi hỏi vẫn giữ bình tĩnh mà lại phải tư duy nhanh, đây là việc không phải ai cũng dễ dàng làm được. Khi được hỏi vì sao bạn không hồi hộp, lo lắng khi đối diện với NTD, T trả lời: “có thể là do học ở FUNiX thi nhiều và cũng thường được mentor ‘hỏi xoáy’ nhiều cho nên mình thấy không lạ gì khi đi phỏng vấn”.

Ngay sau đây là tường thuật chi tiết của Q.T với mục đích giúp các bạn chưa từng trải qua interview thực tế có được những hình dung rõ nét về cách thức phỏng vấn của NTD:

NTD: Anh nghe em từng học ở một trường Đại học khác, theo một chuyên ngành khác… Vậy vì sao em lại quyết định chuyển nghề sang Lập trình?

xTer Q.T: Vì thời điểm lúc em ra trường cơ hội việc làm tốt bên ngành em khá ít, trong khi đó từ năm cuối đại học em được tiếp xúc với Mathlab và cảm thấy mình thích lập trình hơn là ngành hiện tại. Em ra trường năm 2015 và loay hoay mãi (và kể chi tiết quá trình Q.T khó khăn lắm mới tìm ra FUNIX). Đến tận 2019 em mới đủ kiến thức để đi interview Java. Đứng trước FUNiX, một cơ hội lớn để hiện thực hóa đam mê lập trình của mình thì em không thể bỏ qua cơ hội này, em đã chờ 4 năm rồi anh ạ. 

NTD:  Em dự tính chương trình học của em trong vòng bao lâu nữa thì xong? (NTD có ý quan ngại về việc Q.T không thể làm full-time như mấy sinh viên còn nợ môn của đại học chính quy).

xTer Q.T: Dạ tầm 2 năm nữa anh, nhưng ở thời điểm hiện tại em xác định có thể làm full-time cho công ty anh, chỉ học thêm vào buổi tối chứ không có chuyện làm vài bữa rồi xin nghỉ một bữa để đi điểm danh hoặc đi thi đâu ạ (cười).

NTD: Dự định của em trong vòng vài năm tới như thế nào?

xTer Q.T: Dạ em muốn lấy bằng trong vòng 2 năm tới, bên cạnh đó trau dồi kiến thức cần thiết để làm việc cho công ty. Tuy nhiên trong vòng 3-4 tháng đầu em sẽ tạm dừng việc học để tập trung toàn bộ cho kiến thức bổ trợ cho công việc tại công ty, vì em biết kiến thức được học chỉ là nền tảng chứ không đủ để đảm bảo cho công việc, cần phải tự vạch ra lộ trình những cái cần học thêm.

NTD: Dự định của em là 4 tháng sau em học lại, nhưng lỡ ở thời điểm đó công việc ở công ty nhiều, cháy dự án, phải OT nhiều thì em tính thế nào?

xTer Q.T: Làm nhiều hay không nhiều thì đến lúc đó em vẫn phải học theo đúng lộ trình thôi anh, kế hoạch mà đâu thay đổi được, chỉ có điều em phải cố gắng gấp đôi.

 NTD: Anh cho thang rating từ 0 đến 5 với 5 là expert thì em đánh giá khả năng Java của em ở mức nào?

 xTer Q.T: Dạ tầm 2.5 thôi anh ạ. Tuy là em thấy mình có thể làm được nhiều thứ nhưng em cũng biết chắc là còn nhiều cái em phải học hỏi thêm.

 NTD: Em có ngại việc phải học thêm công nghệ mới không?

 xTer Q.T: Hồi trước em từng làm bên công ty sản xuất, nó hầu như không đúng chuyên môn của em. Nhưng đối với em, khi mình tiếp xúc với một lĩnh vực nào đó mình chưa biết, muốn có hiệu quả tốt thì bắt buộc phải học mới thôi anh. Em đã từng học cả chứng chỉ Kiểm soát (QA) quá trình sản xuất, rồi đọc và cố triển khai kiến thức của tài liệu chuyên ngành cán thép chỉ vì mục đích phục vụ và cải tiến quá trình sản xuất. Cho nên, đối với em, việc học một cái gì đó mới nó cũng giống như học một môn học mới trong trường đại học thôi anh, em không ngại, chỉ có việc mình phải chấp nhận bỏ thời gian và công sức thôi.

 NTD: Em tự đánh giá bản thân mình như thế nào? Ưu điểm là gì? Khuyết điểm là gì?

xTer Q.T: Dạ ưu điểm mà em tự hào nhất là làm cái gì em cũng rất kiên trì, làm đến khi nào được thì thôi. Còn khuyết điểm thì có vẻ là nét mặt em hơi nghiêm anh ạ. Em là kiểu nghiêm túc thái quá, nhiều người hay nhận xét thế, vẻ mặt nghiêm túc vô tình gây khó trong bước giao tiếp đầu tiên.

NTD:  Mặt anh cũng nghiêm vậy (cười).  Em học Java core mất bao nhiêu thời gian?

 xTer Q.T: Tầm 3 tháng ạ, em vừa làm vừa học.

 NTD:  Lâu thế? Anh expect (kỳ vọng) 1 tháng thôi.

 xTer Q.T: Đi từ base số 0 lên thì em nghĩ thời gian đó với em là ok anh. Giờ em nghĩ nếu anh bảo em học core .NET hoặc core PHP thì chắc chắn nó phải nhanh hơn con số 3 tháng đó, vì nó đều là hướng đối tượng, mình nắm được một cái thì cứ áp dụng quy tắc tương tự cho những cái còn lại.

 NTD: À ok, cái này anh công nhận. Thôi bắt đầu hỏi về kỹ thuật nhé. Kiểm tra 1 câu đơn giản trước thôi. Em biết gì về hướng đối tượng?

 xTer Q.T: Khái niệm hướng đối tượng là đang nói đến việc mô hình hóa các thực thể mình quan sát được ngoài thực tế rồi đưa vào việc tổ chức code cho dễ quản lý. Nó có 4 tính chất: đóng gói, đa hình, kế thừa và trừu tượng. Một class là một mô hình chi tiết để tạo ra object, object là thể hiện của class và cũng là đại diện cho các thực thể mà bên ngoài thực tế mình nhìn thấy. Tất cả các thuộc tính, phương thức đặc trưng cho một đối tượng thì gom chung về class của đối tượng đó, các class có điểm chung thì gom về chung một package. Ở tính đóng gói phải nhắc đến phạm vi truy cập- access modifier. Nói về tính đa hình thì thể hiện rõ nhất là ở 2 khái niệm overloading và overriding, một hành động có thể thực hiện dưới nhiều hình thức. Overrloading em ví dụ, em xây dựng 2 hàm cộng, một hàm truyền 3 tham số, trả về tổng 3 số, một hàm truyền 2 tham số, trả về tổng 2 số. Khi em gọi hàm thì tùy vào số lượng tham số truyền vào thì hàm tương ứng sẽ được gọi. Overridding thì giả dụ có một class A là cha của class B và hai class này đều có một phương thức bị trùng tên. Khi mình gọi phương thức đó mà không sử dụng từ khóa super thì sẽ ưu tiên phương thức ở class con.

 NTD:  Cái em vừa nói chưa nhấn mạnh về đa hình lắm. Cụ thể hơn xem nào.

 xTer Q.T: Dạ. Nếu class B và class C cùng extends từ class A thì new B() cũng là A được mà new C() cũng là A được.

 NTD: Tạm chấp nhận được. Thôi chuyển chủ đề. Trong mấy cái project em từng làm, em có từng gặp khó khăn gì không?

 xTer Q.T (câu này khiến Q.T ngập ngừng cả chục giây vì chỉ nhớ là làm được thôi chứ quên mất để ý gặp khó cái gì): Có cái project bên chat app em thử làm chức năng gửi nhận File nhưng ban đầu không dùng FileInputStream, FileOutputStream  mà lại dùng InputStream và OutputStream, kết quả là bị Deadlock (các bạn xem cụ thể trong link này: https://stackoverflow.com/questions/5346006/socket-programming-input-stream-seems-to-block-output-stream)

 NTD: Thế cuối cùng em có biết tại sao khi em đổi lại nó không bị lỗi nữa không?

 xTer Q.T: Dạ cái này thật tình fix lỗi xong em chưa có thời gian tìm hiểu lại ạ.

 NTD: [Phân tích cặn kẽ cho Q.T hiểu vấn đề kỹ thuật về Deadlock]. Em nên nhớ mỗi lần gặp khó khăn gì đó giải quyết xong rồi phải hiểu bản chất của vấn đề để có khi gặp lỗi tương tự còn xử lý được. Em biết gì về Collection chưa?

 xTer Q.T: Em biết ạ, có một số cái thường gặp như ArrayList, LinkedList, Stack, Queue…

 NTD: Thế em có nhận biết được khi nào cần dùng cái nào không?

 xTer Q.T: Cái đó tùy theo nhu cầu thực tế ạ. Em ví dụ nếu làm một vấn đề gì đó mà ít đụng đến thao tác thêm, xóa dữ liệu mà chỉ cần truy xuất dữ liệu thôi thì em ưu tiên ArrayList hơn LinkedList và ngược lại nếu như thêm, xóa dữ liệu thường xuyên thì lại ưu tiên LinkdedList tại vì đối với LinkedList việc xóa hoặc chèn sẽ nhanh hơn.

 NTD: Em giải thích tại sao LinkedList lại thêm và xóa nhanh hơn ArrayList?

 xTer Q.T: Do ArrayList có đánh index nên việc thêm, xóa lúc nào cũng phải cập nhật index lại nên nó mất thời gian hơn. Em ví dụ 0, 1, 2, 3, 4, 5 thì nếu ta xóa vị trí số 3 thì chắc chắn không thể khuyết số 3 được mà phải sắp lại cho đủ  0, 1, 2, 3, 4. Còn bản chất của LinkedList là dãy các node mã mỗi node liên kết tới node trước và node sau, không có đánh index, cho nên khi xóa ta chỉ việc tách node cần xóa ra và tạo lại liên kết ở vị trí xóa nên sẽ nhanh hơn.

 NTD: Em có biết Stack không?

 xTer Q.T: Dạ có nhưng em ít dùng. Nhưng nếu quan sát thấy trường hợp nào cần chắc chắn em sẽ dùng.

NTD: Em có dùng Unit Test không?

 xTer Q.T: Em có được học và làm bài tập về JUNIT ạ. Để bao quát hết tất cả các thì mình đi từ input đến output, xác định tất cả đường đi có thể có, mỗi đường đi đặt 1 test case. Ví dụ test đối với if else bình thường không có lồng câu lệnh nào phức tạp ở trong thì đặt 2 test case.

 NTD trao đổi với Q.T về văn hóa ở công ty. Sau đó, tiếp tục phỏng vấn:

 NTD: Em có ngại việc OT không? Anh thông báo để em biết, có thể là không thường xuyên như đến lúc dự án cần vẫn có thể OT.

 xTer Q.T: Dạ OT thì ok thôi anh, nhưng hôm nào việc ít lại thì anh sắp xếp cho em giảm giờ bớt. Em luôn chủ động giải quyết công việc khi có thay đổi đột ngột nhưng em cũng thích phương án nghỉ bù để đảm bảo sức khỏe sau thời gian OT nếu công việc không còn gấp.

 NTD: Ok em vấn đề đó thì đương nhiên, thoải mái thôi. Em còn hỏi thêm gì về công ty không?

[…]

Sau phần phỏng vấn, NTD đã có thêm những trao đổi với xTer Q.T về những thắc mắc của ứng viên về môi trường công ty, đồng thời test trình độ Anh văn của ứng viên. 

Chia sẻ tường tận cho các bạn sinh viên Trường mây cùng tham khảo và tự rút ra kinh nghiệm interview, xTer Q.T cho biết: 

“Còn nhiều câu hỏi lắm, nhưng mình không trình bày hết được, chỉ nhớ là mình ngồi đối đáp tầm một tiếng với Anh Sếp và thấy anh ấy khá thoải mái và dễ tính. Sau buổi phỏng vấn này mình tự tin về phản xạ giao tiếp hẳn ra, chỉ tiếc là bài test anh văn mình nghĩ là bị dưới sức. Nhưng không sao. Cứ đợi có kết quả. Nếu có fail thì lại tiếp tục chiến đấu. Chẳng có gì phải sợ nếu như bạn tiếp tục con đường mà mỗi ngày kiến thức của bạn càng nhiều hơn cả. Đừng dậm chân tại chỗ vì những thói quen xấu là được. Lộ trình trước mắt của mình là vừa đi làm vừa tiếp tục với Spring MVC, Spring Boot, Angular JS”.

Một quan điểm quá tuyệt đúng không nào! Các xTer hãy luôn trang bị tinh thần mạnh mẽ và cầu tiến như thế, để theo đuổi đến cùng mục tiêu của mình như Q.T nhé!  

ĐĂNG KÝ TƯ VẤN HỌC LẬP TRÌNH TẠI FUNiX

Bình luận (
0
)

Bài liên quan

  • Tầng 0, tòa nhà FPT, 17 Duy Tân, Q. Cầu Giấy, Hà Nội
  • info@funix.edu.vn
  • 0782313602 (Zalo, Viber)        
Chat Button
FUNiX V2 GenAI Chatbot ×

yêu cầu gọi lại