Button contact
Hotline

Hỏi: Tôi có biết một vài trường hợp của những lập trình viên mới chỉ 25 tuổi, họ được các công ty nổi tiếng như Google, Facebook hay Apple chào mời với những mức lương lên đến hơn 150.000 USD . Làm sao để tôi có được kĩ năng “khủng” như họ và nhận được những lời chào mời như vậy?

Tôi là một web developer không thông qua một trường lớp chính quy nào, có thể code được  Ruby và Javascript và tự đánh giá mình có kĩ năng trung bình khá. Tôi từng có được 4 project open source sử dụng javascript nhận được 4 điểm trên codeclimate, tuy chúng đều khá đơn giản về ý tưởng. Tôi cũng không được đào tạo bài bản và hiểu biết về thuật toán và cấu trúc dữ liệu khá hạn chế. Vậy xin hãy cho tôi lời khuyên về làm thế nào để tôi có thể từng bước trở thành một nhà phát triển hay một lập trình viên thực thụ. Tôi nên học những ngôn ngữ gì để có thể được tuyển vào những công ty top đầu như vậy?

1. Câu trả lời của Soham Mehta (đang làm tại: InterviewKickstart.com, trước đây: trưởng bộ phận kỹ thuật tại Box , các công ty MSFT, EBAY )

Thật tuyệt là cuối cùng đã có người không ngại ngần đề cập đến vấn đề này. Tôi rất vui vì bạn không đến đây để tìm những đường tắt đến thành công mà bạn muốn TỪNG BƯỚC để đạt được nó. HLV Paul Bryan cũng từng nói: “Ai cũng muốn thắng cả, nhưng chẳng ai sẵn sàng để thắng”(Everyone wants to win, but very few want to prepare to win) . Nếu bạn thực sự muốn đạt được điều gì đó, hãy đối mặt với nó và hãy lập một kế hoạch thật có hệ thống để giành được nó. Về trường hợp cụ thể của bạn (không có background về khoa học máy tính, kinh nghiệm hạn chế,..), chắc chắn sẽ cần một sự chuẩn bị dài hơi và nỗ lực hơn những người trong nghề khác. Trước tiên hãy thử bắt đầu trả lời lần lượt từng câu hỏi dưới đây của tôi, sau đó hẵng quyết định xây dựng một kế hoạch chi tiết cho riêng bạn :
  1. Mục tiêu của bạn là trở thành một kĩ sư giỏi hơn và với thu nhập cao hơn,  hay bạn chỉ đơn giản muốn kiếm ra thật nhiều tiền?
Hãy suy nghĩ thật kĩ về vấn đề này, tôi biết một số bạn trẻ quá tự tin vào bản thân và nghĩ có thể làm được mọi thứ, nhưng thực tế không phải vậy. Nếu bạn đơn giản muốn kiếm được 250.000 USD/năm thì có những con đường khác ngắn hơn nhiều.
  1. Những công ty nào thường offer mức lương như vậy? Mức lương/tăng lương trung bình ở các công ty khác?
Ở nền kinh tế thị trường hiện nay, tiền lương là kết quả của cung và cầu. Đối với thị trường Mỹ, lương của một kỹ sư tin học là tương đối cao do cầu cao hơn cung khá nhiều. Điều này cũng chưa chắc đã đúng ở nước của bạn. Đối với câu hỏi này, hãy cân nhắc dựa theo vị trí địa lý của bạn , vã nghĩ xem liệu bạn có sẵn sàng để thử thách mình ở một môi trường khác (đất nước khác) hay không
  1. Những yêu cầu cơ bản để được tuyển ở những công ty đó là gì? Liệu có trường hợp ngoại lệ không?
Có một điều tôi nhận thấy, đó là ngày càng có nhiều kỹ sư mới vào nghề làm việc ở vị trí semi-engineering, so sánh với số lượng những người đảm nhiểm vị trí core (nòng cốt). Vị trí này dễ được nhận hơn, mức lương cũng không quá khác biệt và có nhiều cơ hội thăng tiến để trở thành một core Core engineering đòi hỏi bạn phải nắm cực kì vững kĩ năng chuyên môn cũng như có nền tảng về khoa học máy tính. Tôi cũng đã từng thấy có ngoại lệ, một số kỹ sư không qua trường lớp đào tạo bài bản, nổi lên từ bootcamps và được nhận ngay vào vị trí này. Một vị trí khác mà những người như bạn cũng làm khá nhiều là vị trí Technical Operations (vận hành kỹ thuật). Với sự lên ngôi của điện toán đám mây, vị trí này trở nên đầy hứa hẹn đối với những người mới vào nghề. Một lần nữa tôi muốn nói rằng, hãy nghiên cứu chúng dựa trên yếu tố địa lý cũng như mong muốn của bạn.
  1. Làm sao để bạn được phỏng vấn ở những công ty như vậy ?
Đây là công việc đau đầu nhất nhưng tôi lại thấy rất nhiều bạn xem nhẹ. Đừng apply online, bạn đang năm giữ quá nhiều bất lời và hãy đến nộp trực tiếp để họ thấy được quyết tâm của bạn. Hãy mở rộng các mối quan hệ và khai thác triệt để chúng để tìm kiếm những cơ hội cho riêng mình.
  1. Quy trình diễn ra của một buổi phỏng vấn ?
Cách tốt nhất là hãy hỏi trực tiếp từ nhà tuyển dụng hay nhân viên của chính những công ty bạn đang hướng tới. Chắc chắn họ sẽ có những lời khuyên hữu ích cho bạn. Ngoài ra bạn cũng có thể lên các website như Glassdoor để tìm hiểu thêm.
  1. Đâu là chìa khóa để vượt qua những cuộc phỏng vấn?
Việc này sẽ tùy thuộc vào công ty hay vị trí mà bạn ứng tuyển, và chắc chắn sẽ tốn một vài tháng để chuẩn bị thì chu đáo. Chủ để thường gặp nhất trong các bài phỏng vấn đó là về Thuật toán và Cấu trúc dữ liệu. Bạn cũng cần chú ý vào ngôn ngữ lập trình riêng mà mỗi công ty yêu cầu . Tất nhiên mọi thứ đều đang được mặc định là bạn đã có một kĩ năng giao tiếp tốt, vì vậy mà ngoài các kỹ năng cứng ra, đừng quên dành cả thời gian để hoàn thiện cho mình cả kỹ năng mềm nữa. Cuối cùng tôi muốn nhắn nhủ với bạn rằng, điều quan trọng ở đây không phải là học một ngôn ngữ lập trình riêng biệt nào, mà là bạn cần phải nhìn nhận được cái gì là thực tế, công ty và vị trí nào bạn đang nhắm đến và hãy lên một kế hoạch cụ thể để thực hiện nó Mục tiêu cuối cùng là lập ra một danh sách gồm 50 công ty mà bạn muốn được làm việc, cố gắng nhận được phỏng vấn bởi 20 công ty trong số đó và cuối cùng sẽ nhận được ít nhất là vài ba lời chào mời “khủng”. Chọn cho mình một công ty làm bạn hài lòng nhất và hãy thực sự enjoy nó :-) Chúc may mắn !

2. Câu trả lời từ Mohsin Ali,  từng nhận được mời chào từ FB, Microsoft, VNware, Amazone, Cisco

get a job Tôi từng bị cả Microsoft và Google từ chối ngay cả chỉ là một vị trí thực tập sinh quèn. Chỉ 6 tháng sau đó, tôi đã có một cú lội ngược dòng thần kì. Bạn biết không, không chỉ 1 mà là 6 công ty lớn đã mời chào tôi với cái mức lương “điên rồ” mà bạn đang nói đến. Liệu có phải tôi đã “tự nhiên” sở hữu kĩ năng “khủng” trong vòng 6 tháng? Không, đó là do tôi bắt đầu quá trình chuẩn bị tiền phỏng vấn Việc bạn có thể sở hữu kĩ năng CNTT “khủng”  thực ra lại không nghĩa với việc bạn sẽ có được một công việc tốt. Thực ra thì bạn không cần phải đạt được trình độ thượng thừa về công nghệ thông tin, chỉ cần đủ là được, và làm sao cho nhà tuyển dụng thấy được cái sự “đủ” đó của bạn trong vỏn vẹn 4 x 45 phút phỏng vấn, đó mới là mấu chốt. Điều tôi muốn nói , là bạn  phải thực sự thành thục trong kĩ năng diễn đạt và truyền tải được ý tưởng của mình đến hội đồng tuyển dụng. Việc này không có cách nào hơn, đó chính là luyện tập, luyện tập và luyện tập thật nhiều. Giống như với kì thi GRE vậy, bạn chuẩn bị càng kĩ lưỡng thì kết quả sẽ càng ấn tượng Nếu vẫn còn mơ hồ, hãy thử đọc qua bài viết của tôi. Nó ghi lại đầy đủ quá trình và các bước tôi đã thực hiện để có được một công việc tốt như hiện tại.

3. Câu trả lời từ Borislav Agapiev (người tìm kiếm các dự án khởi nghiệp)

Haizz. Đầu tiên là bạn KHÔNG BAO GIỜ nên tự đánh giá thấp bản thân mình. Bạn từng nói bạn là một người có kỹ năng trung bình khá, vậy thì chính bạn đang tạo ra một bức tường rất lớn ngăn cách bản thân mình với những công kia rồi còn gì. Đừng quên là bạn từng rất thành công với những mã nguồn mở(open source code) của mình bằng JavaScript trên github, và biết đâu đó trong một ngày không xa, bạn sẽ trở thành một lập trình viên vĩ đại? Hãy tin vào chính mình, nếu bạn dám tin bạn làm được thì nhất định bạn sẽ làm được. Tôi cũng từng như bạn, và tôi biết rất nhiều người cũng từng như vậy. Chỉ có một cách duy nhất, đó là hãy quẳng hết mấy cái sự tự ti vớ vẩn đi  và chứng minh cho mọi người thấy là bạn có thể làm được những gì, bạn có thể và sẽ trở thành một LẬP TRÌNH VIÊN HÀNG ĐẦU. Hãy viết ngay một bản cam kết cho chính mình, bắt đầu lên kế hoạch và thật toàn tâm toàn ý để chuẩn bị cho buổi phỏng vấn. Có công mài sắt thì sẽ có ngày nên kim phải không.

4. Câu trả lời từ Sid Jain, Nhà phát triển của Rockstar

Để được tuyển vào những công ty như Google hay Facebook, điều kiện tiên quyết là bạn phải có một nền tảng cực tốt về khoa học máy tính (KHMT). Nếu không có một bằng cấp chính quy nào về KHMT thì rõ ràng là bạn đang ở thế bất lợi so với các đối thủ khác. Hãy thử tham gia các khóa về KHMT ở các trường đại học công nghệ và học thật chắc các kiến thức về thuật toán, CTDL cũng như các ngôn ngữ như C++/Java. Hãy chắc rằng những dạng bài cơ bản không thể làm khó bạn trong buổi phỏng vấn. Bí quyết để được tuyển vào các công ty như Google hay Facebook, chính là hoàn thành xuất sắc vòng phỏng vấn về viết mã (coding interviews). Bạn sẽ có một giờ để nhận bài tập từ người phỏng vấn qua điện thoại và hoàn thành chúng trên google doc. Tiêu chuẩn là rất cao, nếu bạn vượt quá thời gian quy định hay mắc một lỗi lầm cực nhỏ trong code thì mọi công sức sẽ coi như đổ bể. Sau khi vượt qua vòng một, bạn sẽ đến vòng tiếp theo là vòng phỏng vấn trực tiếp với nhà tuyển dụng. Đến với vòng này, bạn sẽ bị thử thách những vấn đề còn hóc búa hơn nhiều , và chỉ có những người giỏi nhất mới có thể trụ lại đến cuối cùng. Nếu như trong ba năm tới, bạn có thể luyện tập hăng say và không ngừng mệt mỏi và đến cuối bước ra với một tấm bằng đạt học từ những trường công nghệ hàng đầu như Stanford hay M.I.T thì tôi tin là bạn đã đặt một chân vào công việc bạn mơ ước rồi đấy! Nếu muốn có cơ hội được phỏng vấn tại những công ty như vậy, cách tốt nhất là hãy kết bạn với chính những người đang làm việc trong đó đó và nhờ họ giới thiệu với các nhà tuyển dụng. Bạn cũng có thể liên hệ trực tiếp với họ qua linkedin hay twitter, nhưng nhớ là chỉ làm việc này khi bạn cảm thấy đã thực sự sẵn sàng. Cũng đừng lo lắng khi bị từ chối trong lần phỏng vấn đầu tiên, chẳng có ai là hoàn hảo ngay khi mới sinh ra cả, hãy chờ đợi, tích lũy thêm và quay lại, hãy chứng tỏ cho họ thấy bạn tuyệt vời như thế nào! Chúc may mắn !  

Người dịch: Phạm Quang Huy.

Nguồn: quora.com