Vèo một cái mà năm 2024 đã đi đến những ngày gần cuối rồi. Sau khi tất bật với những thứ bộn bề của tháng 11, từ một chuyến đi chơi gấp đầu tháng, đến việc chạy giấy tờ, rồi đến campaign 11.11, mọi thứ cứ trôi qua một cách vèo vèo. Còn kiếp nạn đi chạy sắp tới nữa, chưa sẵn sàng lắm nhưng chắc là không sao đâu…
Tháng 11 cũng có một ngày lễ lớn của năm, đó là 20.11. Công ty mình chạy một cái minigame nhỏ trên Facebook, kiểu như là tặng quà cho các bạn chia sẻ về những kỷ niệm của thời học trò nhân ngày Nhà giáo Việt Nam. Cũng rất nhiều người viết những đoạn rất là dài, và có những câu chuyện cũng hay ho; mình cũng lướt qua nhưng không đọc hết, nhưng cũng thấy thú vị. Nhiều người cũng nhớ giỏi thật chứ, vẫn có thể kể được các câu chuyện xa xưa.
Lục lọi lại ký ức, thì mình thấy tháng 11 với mình cũng có nhiều duyên, nhưng lại là duyên về công việc. Tháng 11, cụ thể là 15.11, thì là ngày đầu tiên mình đi làm một công việc chính thức; một trong những thứ mà mình có thể tự coi như là bước ngoặt của bản thân. Sau đó 5 năm, cũng vào một ngày cuối tháng 11, mình cũng đồng ý offer về Việt Nam làm việc, và quyết định nói lời chia tay với công việc đầu tiên của mình, cùng với đất nước sư tử đã đi cùng mình 1 nửa cuộc đời.
Câu chuyện chia tay thì chắc là chuyện của một ngày khác; chỉ tự nhiên mình lại muốn nhắc lại câu chuyện lần đầu đi làm của mình.
Học sinh kém đi tìm việc
Năm học ở đại học thì bắt đầu vào tháng 8 và cũng kết thúc vào tháng 5. Các học sinh trong trường, hầu hết là khi đến năm thứ 4 là đã chuẩn bị định hướng đi phỏng vấn vào các tập đoàn; họ sẽ nhận phỏng vấn từ sớm, và chốt được hợp đồng lao động từ trước lúc ra khỏi trường. Thường mọi người sẽ bắt đầu đi làm từ tháng 6 hoặc tháng 7, sau khi đã thi cuối kỳ và có một chút nghỉ xả hơi.
Thế tại sao mình lại bắt đầu đi làm vào tháng 11? Tại vì mình là học sinh kém chứ sao :)
Với 3 năm đầu học hành bết bát, thì năm cuối mình vừa bị thiếu kỷ luật và thiếu credits. Để đảm bảo tốt nghiệp một cách bình thường, thì năm cuối mình vừa phải cày lại để lấy lại thói quen học hành, cũng như học để đủ điểm tốt nghiệp. (Vì sao phải tốt nghiệp bình thường? vì nếu không thì mình sẽ phải đền lại học bổng chứ sao). Hậu quả là năm cuối mình è cổ ra học 6 môn và cả final year project (là mức tối đa nhà trường cho phép). Học overload mà lại còn đang đuối, nên là mình dồn hết tâm tư đi cày cho nó đủ điểm đủ đỗ. Cuối cùng thì mình cũng tốt nghiệp một cách trót lọt nhưng mà trong thời gian đó thì mình không có tí thời gian vào đầu óc nào để xây CV hay là đi phỏng vấn cả. Mình tốt nghiệp ra và chưa có cái gì để bắt đầu sự nghiệp hết.
Với một hồ sơ không đẹp đẽ gì, một đầu óc kiến thức hổng lung tung, và một sự mơ hồ về sự nghiệp, học sinh kém bắt đầu đi tìm việc.
Trượt rồi trượt rồi trượt
Chả biết bắt đầu từ đâu, mình cũng hơi mông lung khi cảm thấy bản thân cũng chẳng biết rõ cái gì. Mình mới bắt đầu tìm hiểu nghiên cứu là tìm job thì có ở đâu. Kiểu làm gì cũng thấy sợ sai, đọc các JD thì mình chả hiểu cái gì hết; cảm thấy là với các JD này thì làm sao mà mình dám apply.
Loay hoay mất 1 tuần thì mình cũng vẽ tạm lên một bản CV cụt lủn chỉ chưa đầy một trang A4. Mò mẫm xung quanh thì mình bắt đầu tìm ra là có thể thấy job ở trên LinkedIn, hoặc là job portal của trường, vì trường cũng có những liên kết với các công ty khác để có cơ hội việc làm cho học sinh. Ban đầu mình cũng rón rén, nhưng về sau thì mình cũng cứ cắm mặt gửi hết, biết được đến đâu thì đến. Mình còn chả biết công ty nào là tốt là xấu (công ty xịn hẳn thì biết chứ các công ty tầm trung thì mình còn chưa biết gì).
Sau khoảng 1 tháng, thì cũng nhận được phản hồi đầu tiên (mình còn quên cả tên công ty này rồi, nhưng hình như là nó làm về bảo hiểm). Như chết đuối với được phao, mình hớn hở nhận lời đến phỏng vấn. Anh phỏng vấn mình là một anh hiền hiền gì đó người Philippines. Mấy câu trả lời chào hỏi thì mình cũng còn hơi ấp úng, nhưng khi bắt đầu hỏi technical thì mình chết cứng. Câu hỏi có vẻ là về database modeling, mình nhớ là mình ấp a ấp úng không trả lời được rõ ràng. Sau khoảng 30p thì mình cũng kết thúc buổi phỏng vấn, và coi như là toang. Đi về thì mình cũng thấy rất chán, nhưng mà thôi, mình thử cố nhớ lại xem phỏng vấn có cái gì mình không trả lời được thì về nhà đọc thêm.
Bạn mình, một trong những coder xịn nhất mà mình biết, thấy mình loay hoay quá thì cũng offer là refer mình vào cùng công ty(một công ty khá nổi tiếng trong khu vực). Mình cũng được hẹn lên công ty phỏng vấn, và được trao đổi là bài phỏng vấn sẽ có 2 phần: 1 phần là test MCQ(multiple-choice questions) và 1 phần vấn đáp với interviewer. Mình làm bài test trước, có khoảng 30 câu; chọn đáp án đúng trong những lựa chọn ABCD. Mình trả lời mà cứ thấy không không đúng, vì thấy các câu hỏi thỉnh thoảng lại có câu mà nhiều đáp án cũng oke? Nhưng thôi cũng kệ, mình cứ chọn câu trả lời tốt nhất, và loay hoay làm đến gần hết giờ thì cũng finish. Quay lại còn mấy phút để check kết quả, mình đọc lại đề bài từ đầu và thấy thêm một dòng, đại loại là: “you can select multiple options if they are both correct”. Toang rồi… Mình đọc lại thì chỉ kịp sửa lại mấy câu đầu, chứ đã hết giờ. Bạn HR vào lấy bài của mình đem đi chấm điểm, và một anh người Chinese với accent hơi nặng vào nói chuyện với mình. Sau 1,2 câu giới thiệu, thì câu hỏi bắt đầu vào. “How do you implement a stream?”, mình nghe xong câu hỏi thì thực sự là hoang mang, stream là sao là thế nào. Mình cố gắng hỏi lại là stream của cái gì, các phần tử là cái gì, và thấy ánh mắt của interviewer nhìn cũng có vẻ hơi frustrated; như kiểu là đây là một cái gì rất đơn giản mà mình cũng lại không biết. Sau 20p bối rối, thì mình mới vỡ lẽ ra là interviewer đang không phải hỏi về Stream mà là hỏi về String, và mình nghe không rõ nên là hiểu sai hết. Toang tập 2… Sorry Q, vì tôi mà chắc ông cũng mất referral bonus hôm đó...
Mình cũng về nhà học lại được bao nhiêu thì học, và lại cắm đầu cắm cổ vừa ôn bài vừa apply tiếp. Mãi thêm 1 tháng sau, mình mới có thêm một công ty gọi đến mời phỏng vấn. Một công ty startup (làm về cái gì thì mình quên rồi, chỉ còn nhớ tên) mời lên văn phòng, team chỉ có 3 người và cũng còn rất trẻ. Sau 2 lần vấp ngã trước thì lần này mình cũng trả lời trơn tru hơn 1 xíu, không đến nỗi là mù tịt. Lần đầu tiên thấy đi về xong lại có chút hy vọng về cuộc sống. Chưa hết một tuần thì mình nhận được email, cho mình một cái offer với mức lương chắc là minimum rate của sinh viên mới ra trường thời đó. Vẫn là hút chết vớ được phao, mình vẫn accept và gửi lại thông tin cho bên đó. Im lặng mất nửa tuần, và HR lại viết lại email cho mình, là bên đó không thể sponsor employment pass cho mình, vì lý do gì đó. Họ rescind offer, và mình lại quay về nơi bắt đầu. (Về sau thì mình có nghe lại về bạn mình cũng làm ở công ty đó, thì là một công ty không thể gia đình hơn được, rất bóc lột và CEO cũng rất lươn lẹo… thôi coi như là mình may mắn thoát kiếp nạn).
Hy vọng của mình lúc đấy nó cũng không biết còn le lói đến đâu.
Grab the opportunity
Cũng đến tầm tháng 9, và số cơ hội có vẻ cũng ít hơn, vì các công ty đã qua hết phần tuyển dụng cho fresh grad. Mình cũng vẫn cố nhắm được cái nào thì cũng gửi thì cũng không thấy hồi âm. Stress thì đi lên đến đỉnh mà chả thấy có đầu ra.
Mình cũng không nhớ là đứa bạn nào nữa, chỉ là trong một lần mình than phiền với các bạn bè, thì có ai đó chỉ mình đến cái công ty G nọ mà mình chưa nghe đến bao giờ. Bạn mình bảo là công ty này cũng đang tuyển khá nhiều junior, và vẫn còn đang có opening cho software engineer. Đương nhiên là mình cũng chả còn quan tâm là công ty nào nữa, miễn có việc là được rồi; gửi ngay CV trong 1 nốt nhạc.
Có vẻ là công ty có phần tuyển dụng khá là chỉn chu. Chưa đầy 2-3 ngày thì mình nhận lại 1 email, về một Code screening Test (lần đầu tiên luôn, mấy công ty khác mình còn chưa thấy cái này). Ngồi ôm sách vở cày vục mặt 1 ngày, mình tập tành practice cũng kỹ càng, rồi sau đó mới mở bài test ra. 3 câu test về giải thuật đơn giản, cũng may mà mình làm cũng ổn, thậm chí còn hơi sớm với thời gian; mình còn đọc đi đọc lại cho chắc rồi mới dám submit, sợ đọc sai đề bài). May mắn thay, không quá lâu sau khi gửi bài thì mình cũng nhận được lời mời phỏng vấn; sẽ có 2 vòng phỏng vấn technical nữa cho vị trí software engineer.
Lần phỏng vấn đầu tiên của mình là một chị (về sau thì mình biết là senior mobile engineer). Chị hỏi qua mình về bài test mình đã làm, rồi sau đó hỏi 1 chút về thuật toán. Mình còn nhớ là đề bài là về hiện danh sách bảng ở trên frontend, thì làm thế nào để hiện số trang cho pagination (ví dụ kiểu navigation của bảng kết quả thì có số trang, 1 … 6 [7] 8 … 1000, thì xử lý thế nào). Giải thuật lên whiteboard, rồi xử lý các edge cases. Có vẻ mình giải cũng khá smooth, mặc dù chị interviewer có vẻ khó tính nên cũng không thể hiện cảm xúc gì. Tuy nhiên cuối cùng là trót lọt và mình cũng được gọi lại đi lần thứ 2.
Lần này, interviewer của mình là một a gốc Pakistan tên S (về sau thì biết là lead của một team backend chuyên về phía messaging). Bài toán lần này thì là cho một array N số và 1 số K, và mình phải tìm tất cả các bộ 3 số sao cho nó có tổng là K. Cũng may là mình đã có học mấy bài học interview trên mạng, nên là mình đã có nghe qua bài tương tự nhưng mà là bộ 2 số. Mình ngẫm nghĩ một hồi rồi bảo interviewer, đại loại là “I have heard about the problems with pairs of numbers, but I don’t know how it works for sets. I will try to deduce my way to it, and ask you questions along the way”. Nói chung là mình cũng mò ra được cách, sau mấy phút loay hoay. S cũng gật gù, rồi hỏi mình thêm mấy thứ khác kiến thức loanh quanh. Trước khi kết thúc thì S bảo mình “Hey, my friend is hiring for a database engineer position, and I saw you know your way around databases. Would you like to give it a try?” Thực ra lúc này mình cũng khá là hoang mang; ủa thế có phải mình fail interview rồi không mà lại giới thiệu mình sang role khác, với cả cái role này thì làm cái gì? Nhưng là một người đã không có điểm nào để lùi, thì đương nhiên là mình sẽ không say “no” rồi.
HR lại gọi mình đến lần phỏng vấn thứ 3. Lần này phỏng vấn có 2 người, E và D; D thì nhìn rất nghiêm trọng và từ đầu đến cuối có vẻ hơi mất tập trung (sau này mình đoán chắc là đang xử lý incident gì đó), và E là người phỏng vấn chính. E đưa cho mình 1 cái macbook, trong đó đang login vào một cái màn hình AWS. Mình chưa bao giờ biết đến AWS hay Cloud trước đó luôn, nhưng câu hỏi thì là hãy setup 1 hệ thống MySQL với 1 replica. Mình chưa đụng vào cloud bao giờ, và mình cũng có biết MySQL thôi, nhưng chưa làm replication bao giờ. E đưa mình cái laptop rồi bảo là thích Google hay là gì thì cứ thoải mái, rồi sau đó thì E ngồi bên cạnh cũng cắm đầu vào làm việc. Cũng may là mình có biết về SSH và Linux server, nên cũng biết một số keywords để bắt đầu search. Mò mẫm 1 lúc thì mình setup được 2 cái EC2, cài được MySQL rồi sau đó nối lại 2 cái server 1 cách thủ công. E hỏi mình mấy thứ, là làm sao có thể test được các behavior nọ kia của hệ thống thế nào, rồi hỏi thêm 1 số câu về SQL optimization, kiểu join và table cardinality, mình cũng có đọc qua nên cũng trả lời được sơ sơ.
Đầu tuần sau, HR gọi đến cho mình và make offer. Offer đến với mình gần như là surreal, hôm đó mình nghe xong mình còn cảm thấy không tin vào tai mình. Phải ngồi lại bình tâm mất 10p, mình mới gọi bà chị mình để kể chuyện, rồi sau đó với mẹ mình. Mình cũng vẫn còn hơi shock, cho đến lúc ngày hôm sau lên office để làm việc và ký hợp đồng thực tế.
Học sinh kém cuối cùng cũng có việc rồi cả nhà ạ.
Kết
Bây giờ khi nghĩ lại thì cũng đã gần một thập kỷ trôi qua. Ngồi viết lại những dòng này thì mình cũng nhớ lại ngày xưa mình đã từng thế nào, đã có những lúc loay hoay và nản chí đến thế. Và cũng tự ngạc nhiên là sao mình lại nhớ kỹ đến thế.
Khi đã quá lâu rồi, thì kỷ niệm nào cũng có một nét đẹp nào đó. Con người loay hoay ngày đó, thì bây giờ cũng đã có những sự vững chắc nhất định.
Có lẽ mọi thứ rồi cũng sẽ ổn thôi.
em cũng vừa nhận được offer fulltime đầu tiên tại Hà Lan và start đúng ngày 15/11. Chặng đường của em cũng có đôi phần giống như anh, cũng chật vật vượt qua 4 năm đại học, apply thất bại vô số lần để rồi cuối cùng nhận được 1 offer mà mình ko thể tin được. Inspiring quá ạ :>