thảo luận [Review] Phỏng vấn Facebook và quá trình nhảy việc.

Các bạn quan tâm đến vấn đề nào ?

  • Career path

  • Work Life Balance

  • Corporate culture

  • Compensation


Results are only viewable after voting.
Mấy cty to như này có OT ko các sếp nhỉ ?:D:big_smile::big_smile::big_smile:
Ở các cty product thì thì ko có khái niệm OT vì OT là một phần của công việc nếu cần thiết
qZV215Z.png
 
Mình sn 92 đang làm front end, mình đang luyện tiếng anh để qua dịch tìm đường qua sing làm việc vài năm để tích luỹ chút vốn không biết có cơ hội không bác nhỉ :big_smile:

via theNEXTvoz for iPhone
 
Bác giỏi quá, ngưỡng mộ!
Mình muốn hỏi riêng cá nhân bác 2 câu :
1. Bác có cần bằng Anh văn (hay ngôn ngữ khác) khi apply cái job không ? Nếu passed thì trước khi qua làm bác có lấy bằng ngoại ngữ không ?
2. Bác có trick nào khi apply trên LinkedIn không ? Bên cạnh đó, bác còn apply trang nào khác không ?

Cám ơn bác!
 
Cảm ơn bác đã chia sẻ những thông tin bổ ích này ạ,
Bác cho em xin hỏi bác cảm thấy thế nào về chất lượng các courses trên Udemy (đặc biệt là bootcamp) và trên Coursera, edX, OCW MIT ạ :adore:
Em cám ơn rất nhiều ạ :D :D :D

Gửi từ HMD Global Nokia 5.4 bằng vozFApp
 
Thớt đỉnh cao quá. Mình nhảy từ dev sang hướng manager. Giờ có chút hối hận rồi. Không biết còn kịp quay đầu không:(
 
search trên linkedin thấy mấy anh làm shopee profile khủng mà nhỉ. làm mấy công ty nhàng nhàng ở việt nam chắc không qua vòng cv
 
Ngoài leetcode và system design, thì anh thấy có những nhân tố nào quan trọng trong chuyện lấy dc offer ko. Em có 1 cái offer làm remote cho team ngoài, nhưng cũng muốn thử sức top đầu quá. Em dc ~5 YOE mà hơi yếu algo + ds, nên chắc cũng cần thời gian. Không biết reject offer đang có để tập trung thì có hơi chơi liều ko
 
Prep for system design

Thật sự thì trước giờ đây là điểm yếu nhất của mình.
Một phần là do trước giờ không chú ý tới interview dạng này lẫn trong quá trình làm cũng không gặp phải vấn đề scaling gì nhiều vì toàn dev app cho internal là chính.

Trong quá trình phỏng vấn trước giờ, đôi lúc cũng có cty hỏi về system design. Lần nào cũng ngớ người ra mặc dù có đọc một vài bài về system design rồi. Nhiều lúc nghĩ system design interview có vẻ quá sức đối với mình.

Cho nên lần này quyết tâm phải có cách tiếp cận khác vì Facebook cũng như các cty top tier khác khá là serious về mảng này. Thậm chí ở một số level có hẳn 2 system design interviews.

Và đây là cách mình đã làm:

  • Search và đọc các post/comment trên blind (hoăc forum tương tự như leetcode) về system design. Đặc biệt là về system design interview cho facebook. Mình ưng nhất là post này https://www.teamblind.com/post/My-Approach-to-System-Design-V4SJARdx
  • tryexponent — Thấy rất hữu dụng, rất là sát với system design interview của facebook. Đặc biệt là cái series mock interview. Các bạn sẽ học được cách dẫn dắt một system design interview thế nào và các kiến thức về system design nói chung. Các bạn lưu ý là trong cái interview này, inteviewer expects các bạn phải dẫn dắt toàn bộ trong buổi phỏng vấn. Các bạn để interviewer chủ động hỏi càng nhiều thì khả năng tạch càng cao.
  • Xem các video về system design trên youtube, các bạn nên làm việc này sau khi đã làm 2 bước trên để lựa xem video nào phù hợp nhất cho interview, vì khá nhiều nội dung sida.

Sau tất cả, mình đã hiểu cách design tầm vài system phổ biến như facebook, instagram, messenger, parking lot, ...

Mình đúc kết các bước trong một system design interview như sau (mình để tiếng anh vì thật ra mình thấy ko nên dịch ra lắm vì khá technical):
  • Taking the problem into specific features - Định nghĩa rõ ràng các tính năng cụ thể
  • Estimate the non-functional requirements - Ước lượng các yêu cầu phi tính năng.
  • Design the APIs, from this point, go all the way to the backend as drawing the system components. - Thiết kế API, bắt đầu vẽ các system component từ đây cho xuống tới backend
  • Should mention about “interface” for API-Client Layer (GraphQL, Restful) - Đề cập về các chuẩn API như GraphQL, Restful, ... pros and cons và nêu ra lý do tại sao lựa chọn nó.
  • Design the Entities, Data Models => Database design - Thiết kế database
  • Discuss choices about the database (SQL, NoSQL) - Thảo luận về các loại database và chọn loại phù hợp, nêu lý do.
  • Early verify the design by test all the features from API to the database with the simple case. - Test sớm các tính năng từ api xuống datase với các use case đơn giản.
  • Then the fun part: scaling, go from top to bottom again to identify bottlenecks and add sufficient scaling ability to the design (LB, Cache, Message Queue, Replication,…) - Phần này quan trọng, tìm các bottlenecks và tìm cách scale chúng ra.
  • Handle special cases - Xử lý các trường hợp đặc biệt, edge cases
  • Walkthrough all the feature from top to bottom again with all cases and failures - Test các tính năng lần nữa, lần này với toàn bộ trường hợp cũng như sự cố.
Với cách này mình đạt điểm E5 trong system design interview. Trong toàn bộ quá trình, interviewer không hỏi mình gì nhiều ngoại trừ special case. Cũng không ngờ phần mình yếu nhất lại làm tốt nhất
kI4a9lH.jpg


Một số tài liệu về system design mình cũng dùng tới:
 
Prep for system design

Thật sự thì trước giờ đây là điểm yếu nhất của mình.
Một phần là do trước giờ không chú ý tới interview dạng này lẫn trong quá trình làm cũng không gặp phải vấn đề scaling gì nhiều vì toàn dev app cho internal là chính.

Trong quá trình phỏng vấn trước giờ, đôi lúc cũng có cty hỏi về system design. Lần nào cũng ngớ người ra mặc dù có đọc một vài bài về system design rồi. Nhiều lúc nghĩ system design interview có vẻ quá sức đối với mình.

Cho nên lần này quyết tâm phải có cách tiếp cận khác vì Facebook cũng như các cty top tier khác khá là serious về mảng này. Thậm chí ở một số level có hẳn 2 system design interviews.

Và đây là cách mình đã làm:

  • Search và đọc các post/comment trên blind (hoăc forum tương tự như leetcode) về system design. Đặc biệt là về system design interview cho facebook. Mình ưng nhất là post này https://www.teamblind.com/post/My-Approach-to-System-Design-V4SJARdx
  • tryexponent — Thấy rất hữu dụng, rất là sát với system design interview của facebook. Đặc biệt là cái series mock interview. Các bạn sẽ học được cách dẫn dắt một system design interview thế nào và các kiến thức về system design nói chung. Các bạn lưu ý là trong cái interview này, inteviewer expects các bạn phải dẫn dắt toàn bộ trong buổi phỏng vấn. Các bạn để interviewer chủ động hỏi càng nhiều thì khả năng tạch càng cao.
  • Xem các video về system design trên youtube, các bạn nên làm việc này sau khi đã làm 2 bước trên để lựa xem video nào phù hợp nhất cho interview, vì khá nhiều nội dung sida.

Sau tất cả, mình đã hiểu cách design tầm vài system phổ biến như facebook, instagram, messenger, parking lot, ...

Mình đúc kết các bước trong một system design interview như sau (mình để tiếng anh vì thật ra mình thấy ko nên dịch ra lắm vì khá technical):
  • Taking the problem into specific features - Định nghĩa rõ ràng các tính năng cụ thể
  • Estimate the non-functional requirements - Ước lượng các yêu cầu phi tính năng.
  • Design the APIs, from this point, go all the way to the backend as drawing the system components. - Thiết kế API, bắt đầu vẽ các system component từ đây cho xuống tới backend
  • Should mention about “interface” for API-Client Layer (GraphQL, Restful) - Đề cập về các chuẩn API như GraphQL, Restful, ... pros and cons và nêu ra lý do tại sao lựa chọn nó.
  • Design the Entities, Data Models => Database design - Thiết kế database
  • Discuss choices about the database (SQL, NoSQL) - Thảo luận về các loại database và chọn loại phù hợp, nêu lý do.
  • Early verify the design by test all the features from API to the database with the simple case. - Test sớm các tính năng từ api xuống datase với các use case đơn giản.
  • Then the fun part: scaling, go from top to bottom again to identify bottlenecks and add sufficient scaling ability to the design (LB, Cache, Message Queue, Replication,…) - Phần này quan trọng, tìm các bottlenecks và tìm cách scale chúng ra.
  • Handle special cases - Xử lý các trường hợp đặc biệt, edge cases
  • Walkthrough all the feature from top to bottom again with all cases and failures - Test các tính năng lần nữa, lần này với toàn bộ trường hợp cũng như sự cố.
Với cách này mình đạt điểm E5 trong system design interview. Trong toàn bộ quá trình, interviewer không hỏi mình gì nhiều ngoại trừ special case. Cũng không ngờ phần mình yếu nhất lại làm tốt nhất
kI4a9lH.jpg


Một số tài liệu về system design mình cũng dùng tới:
Bác cho em hỏi là với một đứa là trái ngành, không biết system design là cái hình dạng gì thì nên đọc sách nào vậy bác :). Em cũng muốn làm thời gian nữa, rồi apply vào FANG xem sao :D. Dù sao cũng là một đích đến mà hầu hết ae làm IT điều muốn :D.
 
Bác giỏi quá, ngưỡng mộ!
Mình muốn hỏi riêng cá nhân bác 2 câu :
1. Bác có cần bằng Anh văn (hay ngôn ngữ khác) khi apply cái job không ? Nếu passed thì trước khi qua làm bác có lấy bằng ngoại ngữ không ?
2. Bác có trick nào khi apply trên LinkedIn không ? Bên cạnh đó, bác còn apply trang nào khác không ?

Cám ơn bác!
1. Apply job hoàn toàn không cần bằng tiếng anh thím nhé. Khi qua làm cũng không cần bằng tiếng anh luôn.
2. Trick là apply nhiều vào, có thằng gọi, có thằng không. Glassdoor, indeed, trang tuyển dụng của cty.

Cảm ơn bác đã chia sẻ những thông tin bổ ích này ạ,
Bác cho em xin hỏi bác cảm thấy thế nào về chất lượng các courses trên Udemy (đặc biệt là bootcamp) và trên Coursera, edX, OCW MIT ạ :adore:
Em cám ơn rất nhiều ạ :D :D :D

Gửi từ HMD Global Nokia 5.4 bằng vozFApp
Mình thấy các course không bổ dọc cũng bổ ngang, cứ lựa course nào review tốt mà học. Và lựa đúng course với định hướng của mình, ví dụ luyện DSA mà đi học bootcamp javascript thì bảo sao phỏng vấn FAANG toàn rớt
wiukHEj.png


Thớt đỉnh cao quá. Mình nhảy từ dev sang hướng manager. Giờ có chút hối hận rồi. Không biết còn kịp quay đầu không:(
Thím cứ thử biết đâu hợp, không thì quay lại tech cũng không muộn. Ý kiến cá nhân mình thì thấy tech là một skill gọi là transferable, đi nước nào cũng dễ. Còn manage people thì liên quan tới văn hóa cty, quốc gia nên khó mà đi nước khác, trừ khi làm cho cty lớn.

search trên linkedin thấy mấy anh làm shopee profile khủng mà nhỉ. làm mấy công ty nhàng nhàng ở việt nam chắc không qua vòng cv
CV mình trước khi làm shopee cũng chả có gì gọi là khủng, cũng chỉ tầm thường. Thím cứ thử đi, không thành công cũng thành ... thụ
kI4a9lH.jpg


Ngoài leetcode và system design, thì anh thấy có những nhân tố nào quan trọng trong chuyện lấy dc offer ko. Em có 1 cái offer làm remote cho team ngoài, nhưng cũng muốn thử sức top đầu quá. Em dc ~5 YOE mà hơi yếu algo + ds, nên chắc cũng cần thời gian. Không biết reject offer đang có để tập trung thì có hơi chơi liều ko
tất nhiên còn thể loại interview thứ ba là behavioral interview nữa. Đừng nên reject offer trừ khi thím thật sự tập trung vào việc ôn tập. Trước mình đọc blog 1 ông tập trung ôn full time 3 tháng có được 6 offers từ top tier. Trừ khi thím gọi là tập trung cao độ như ông ấy thì reject.

Bác có thể recommend một số sách system design không bác, tks bác
design system thì đọc sách gì vậy thím
2 thím xem post mới nhất của mình về system design nhé.
kI4a9lH.jpg
 
Bác cho em hỏi là với một đứa là trái ngành, không biết system design là cái hình dạng gì thì nên đọc sách nào vậy bác :). Em cũng muốn làm thời gian nữa, rồi apply vào FANG xem sao :D. Dù sao cũng là một đích đến mà hầu hết ae làm IT điều muốn :D.
thím xem post mới nhất của mình nhé,thật ra có khá ít sách về chủ đề này, phải chịu khó tìm tòi online thím à. mà nên luyện dsa trước system design nhé
kI4a9lH.jpg
 
E vẫn đag sv đi thực tập nên muốn hỏi các tiền bối, nếu muốn xin vc về mảng mobile cụ thể ios bên nc ngoài thì nên học những gì ạ

Gửi từ Xiaomi M2012K11AC bằng vozFApp
 
Thím cứ thử biết đâu hợp, không thì quay lại tech cũng không muộn. Ý kiến cá nhân mình thì thấy tech là một skill gọi là transferable, đi nước nào cũng dễ. Còn manage people thì liên quan tới văn hóa cty, quốc gia nên khó mà đi nước khác, trừ khi làm cho cty lớn.
Em thử 3 năm rồi bác.
Thỉnh thoảng em vẫn lọ mọ ngồi code app mobile kiếm ít tiền quảng cáo chứ không tập trung chuyên sâu được nữa.
Mà em làm công ty outsource nên OT hơi nhiều, cũng hơi nản. Nên giờ em cũng có ý định tìm công ty product cho thoải mái.
Kinh nghiệm thì dev 1.5 năm, BrSE 3 năm. Không biết có ổn không :(
 
Back
Top