Ký sự phỏng vấn đầu đời và có suy nghĩ mông lung tương lai


(Erin A James) #1

Hôm này e vừa đi phỏng vấn về và có những trải nghiệm đáng nhớ (cuộc phỏng vấn trong 3 tiếng đồng hồ)!

Xin giới thiệu sơ qua thì e đang là sinh viên năm 4 đang học ngành CNTT ở trường tầm trung ở HCM. Cũng đi làm được 1 năm ở 1 công ty start-up nho nhỏ,công việc vừa sức, mức lương cũng đủ sinh viên sống. Vừa rồi được quen 1 người a đi làm ở công ty XXX rồi giới thiệu mình qua bên đó làm, thì cũng gửi CV rồi chính a phỏng vấn xem rồi gọi phỏng vấn luôn, k qua nhân sự nên khỏe chổ này :D.

Vì gọi đi phỏng vấn ngay nên cũng chẳng chuẩn bị gì, mang theo 1 sự run sợ và cái đầu trống rỗng (lần đầu tiên e đi phỏng vấn). Theo mọi người hướng dẫn thì cũng đến nơi sớm ngồi uống cà phê và đợi thôi . À e apply vào .NET Fresher nhé!


Đúng giờ vào công ty gặp Giám Đốc Kỹ Thuật (người gọi e đi phỏng vấn). Não và tim lúc này đã không còn trong người nửa rồi.

  • Câu đầu tiên thì giới thiệu bản thân: Cũng giới thiệu e là sinh viên,… rồi cũng từng đi làm ở 1 công ty start-up do đi học 1 khóa lập trình Web ở trung tâm rồi được kéo về làm, chủ yếu làm vài chức năng nho nhỏ (chủ yếu là CRUD) , nói chung làm theo yêu cầu cấp trên bảo xuống. Rồi cũng muốn tìm môi trường mới để học hỏi và phát triển cũng như gắn bó lâu dài. À e cũng giới thiệu là e k đi học ở trường, chủ yếu ở nhà tự học - xong được a đó phân tích là nên học những môn đại cương ở trường để bổ trợ lập trình

  • Tiếp theo hỏi về Design Pattern: E dùng những những DP gì? Thì cũng đọc source trên mạng rồi cũng dùng qua Singleton vs Repository nhưng k nắm rõ. Tiếp theo a đó hỏi dùng khi nào, công dụng. E trả lời lang mang - do k đọc lý thuyết, thấy hợp lý là dùng thôi => fail câu này :frowning_face:

  • Tiếp theo là được hỏi về các dự án tâm đắc nhất từng làm. Sinh viên mà có gì đâu, chỉ có mỗi bài tập lớn ở trường thế là giới thiệu về bài tập lớn làm ở môn CTDl&GT với môn CSDL (cái này e có up source lên Github nên a ấy lên xem).

    • Hỏi về công dụng Stack-Queue và đưa ra ví dụ: câu này thì trả lời ổn

    • Nếu được quay lại và nâng cấp cho đồ án CTDL&GT thì sẽ làm gì: thì e kêu viết code clean hơn, phân chia file rõ ràng hơn, còn cấu trúc đề tài thì đã được 10 điểm của thầy nên k biết sửa gì thêm (viết bằng C++)

    • Tiếp theo là cho Stack yêu cầu implement Queue: câu hỏi này e k clear nên bảo dùng 2 Queue đổ ra rồi đổ lại - a đó yêu cầu O(1), ngồi suy ngĩ 1 tí k ra nên bỏ qua câu mới. Về nhà mới hình dung theo cấu trúc thang máy :expressionless:

    • Kế tiếp là câu hỏi về Fibonacci nếu kết quả mà chia hết cho 3 thì in ra gì gì đó, tương tự cho 5 và 15. Câu này thì e code được. Câu này thì a đó kêu tạm ổn, giải quyết được vấn đề. Nhưng e k hài lòng câu trả lời cho lắm.

    • Tiếp theo về Database chuẩn 3: Lý thuyết thì e k nhớ nên a đó đưa ra cái 1 table rồi phân tích ra nhưng bất cập và phân tích theo chuẩn. Câu này e làm đúng => trả lời ngược lại lý thuyết. À sau đó a đó mở trang WIkipedia về thiết kế chuẩn 3 rồi ngồi dịch phân tích trả lời :smiley:

  • Kế tiếp là hỏi về mô hình MVC với mô hình 3 lớp => trả lời lang mang nhưng cũng tạm ổn - được a ấy giải thích về mỗi mô hình nó có điểm yếu điểm mạnh và khi nào nên dùng.

  • OOP: Hướng đối tượng của C++ vs C# nó khác nhau như thế nào : E trả lời được mỗi ý là bên C# k hỗ trợ đa kế thừa chỉ hỗ trợ đa kế thừa với interface => Ủa chứ đa kế thừa nó bất lời gì? Câu này e kêu xung đột - do k biết trả lời sao

  • Hỏi tiếp về SOLID: câu này hơi khoai - e trả lời được lý thuyết vs cách áp dụng. A đó bảo ổn.

  • Vấn đề tiếp theo là đưa ra bài test, có table sản phẩm đó, với giao diện như tạo mới như thế này thì có những lỗi gì và đề xuất cải tiến giao diện: E trả lời được vài ý, k biết a đó đánh giá ra sao.


Anh ấy nhận xét thì e cũng bình bình, có khả năng tìm hiểu, tự học, hỏng lý thuyết nhưng nói chung cũng ổn, quá đi sâu vào chi tiết mà k có cái nhìn tổng quát => e thấy mình quá hỏng kiến thức và thất vọng bản thân Cuối buổi thì a ấy bảo có đề xuất về lương gì k, biết e chuẩn bị thực tập ở trường nên a đó kêu làm thực tập 2 tháng đi vì thử việc cũng 2 tháng rồi sẽ hỗ trợ bên thực tập về trường và tham gia vào dự án nhỏ của công ty. Hỏi e có đề xuất về lương gì k. Thấy e phỏng vấn fail quá nên k biết nói sao nên đành ngậm ngùi kêu e chưa đánh giá được khả năng và chủ yếu học hỏi, Thế là về đợi mail của tuyển dụng

Kết: Về nhà suy nghĩ về những lời a đó nói, e cảm thấy e quá kém cõi, kiến thức hỏng và có chút gì đó k phù hợp với nghề lập trình này, thật sự tư duy e rất kém.
Sau buổi này, lúc đang suy nghĩ và viết bài viết này e cũng rút được bài học xương máu


(Quân) #2

có gì đâu mà phải tự ti quá bạn, bây giờ mặt bằng chung rất nhiều SV cũng hổng như bạn nên quan trọng vẫn là tư duy của ban thôi, kĩ năng thì va chạm nhiều sẽ tự lên thôi. Quan trọng là bạn nên hướng về những điều sắp tới, đừng nên nghĩ nhiều quá làm gì, trong thời gian này cứ trau dồi thêm kiến thức để chuẩn bị cho kì thử việc thôi (nếu được nhận)


(doanguyen) #3

Tưởng gì chứ mấy câu hỏi đó mình cũng không biết trả lời.


(Erin A James) #4

dễ mà, do kiến thức mình k tốt thôi


(Hai Lúa) #5

Mới ra trường vậy là giỏi rồi. Đa số các phần bạn thiếu tự tin là do thiếu kinh nghiệm, chưa làm qua nhiều dự án nên chưa có được những đánh giá tổng thể. Cái này thì cần thời gian để hoàn thiện.

Tôi thích cách bạn trình bài trong bài viết, có phần mở đầu/kết thúc, trình bày/ giải thích/ đáng giá+tổng kết nội dung rất rõ ràng. Điều này không phải ai cũng làm được.

Với cách nghĩ, cách thể hiện như thế này, tôi tin tương lai bạn sẽ là 1 chuyên gia IT giỏi.
Tự tin lên !


(Songtotnhe) #6

Thiệt =))))))))) mấy câu lý thuyết mình cũng chả biết trả lời sao nữa =)))))))
Theo đánh giá cá nhân của mình, bạn chủ thớt vậy là OK rồi, chúc bạn may mắn nha!


(Hung) #7

Nếu để ý, các câu hỏi của ảnh đều là câu hỏi mở. :kissing_smiling_eyes:
Do đó không có 1 câu trả lời hoàn hảo, mỗi người có cách nhìn nên sẽ có cách trả lời khác nhau.
Bạn cứ tự tin khoe cá tính nhé. :heart:


(Erin A James) #8

Cái trình bày bài viết thì nó là yêu cầu chung của mỗi người nên k đánh giá vô lập trình được ạ


(Erin A James) #9

a ấy bảo chủ yếu để detect tư duy, hướng giải quyết, và đánh giá mình bình bình. Mình nghĩ chắc a ấy đánh giá mình là yếu


(Đào An) #10

Phỏng vấn cũng phải ôn lại mấy cái này để trả lời cho mạch lạc chứ đùng 1 cái bắt trả lời cũng khó, trả lời theo suy nghĩ của m thì có thể ko đc mạch lạc + ko đúng ý nhà tuyển dụng là phải.


(Nguyễn Hữu Trung) #11

Fresher mà bị hỏi nhiều thế hả bạn ! Chắc phải đi nhiều công ty mới cứng hơn được. Giờ đầu óc mình cũng lang mang quá


(Erin A James) #12

Bị đẩy xuống thực tập và đậu rồi ạ


(Angry Code) #13

Hoàn cảnh của tôi và bác khá giống nhau, cũng làm công ty startup X, sau 1 thời gian ra phỏng vấn với đời cho biết với người ta thì bị đánh bầm dập dạt về. Dù sao cũng biết được điểm yếu của mình là gì để về nhà cải thiện lại


#14

Bài phỏng vấn kia chả đánh giá được mind set, tư duy gì mấy đâu. Như anh thấy thì nội dung câu hỏi như kiểu dìm ứng viên xuống để ra giá thấp.
Chứ mấy câu lý thuyết, phân tích kỹ thì câu nào cũng có vấn đề. Như câu này: “OOP: Hướng đối tượng của C++ vs C# nó khác nhau như thế nào”, biết được câu trả lời rồi thì sao, nó áp dụng được gì cho công việc? Nó có ích gì cho tư duy, mind set, kỹ thuật, design? Chả có ích gì cả. C++ và C# vẫn được áp dụng đầy ra, tùy vào ứng dụng.
Kiểm tra tư duy thì phải gắn với bài toán cụ thể, tình huống thực tiễn, làm thực, kết quả thực. Chứ kiểm tra qua mấy câu hỏi giáo điều thì chỉ có mấy khả năng sau: Muốn dìm ý chí của ứng viên xuống, Cty không có những bài toán lớn để giải quyết mà chỉ làm ăn lặt vặt nhỏ lẻ hoặc outsourcing.
Thực tập có lương không? Không có thì tự tin sang công ty khác đi, vừa có thêm exp vừa có tiền đầu tư kiến thức.


(Florastamine) #15

Mình từ vấn đề mới đưa ra architecture, design, chứ giờ mà hỏi chay có những DP nào, khi nào queue, nào stack, rồi trường hợp nào dùng cái nào, hoặc cho viết code chay mà không có problem cụ thể cũng chả biết làm sao (cho vừa ý họ) luôn.


(kylamdtu) #16

Câu hỏi này là ý như thế nào nhỉ ?


(Hung) #17
public class Queue<T> {
    private Stack<T> inbox = new Stack<>();
    private Stack<T> outbox = new Stack<>();

    public void enqueue(T value) {
        inbox.push(value);
    }

    public T dequeue() {
        if (outbox.isEmpty()) {
            while (!inbox.isEmpty()) {
                outbox.push(inbox.pop());
            }
        }
        return outbox.pop();
    }
}

(Erin A James) #18

thực tập vẫn có lương ạ, nhưng phải ký hợp đồng đào tạo


(kylamdtu) #19

Ở trên mình có chút thắc mắc, bạn có thể giải thích được ko ? Mình ko hiểu ý của yêu cầu đấy :smiley:


(Killua) #21

Độ phức tạp là O(1) mà bạn


83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?