• Jobs
  • Phát triển nghề nghiệp
    • Remote work
    • Kỹ năng làm việc IT
    • Developer
    • Data Science – Machine Learning – AI
    • IT gurus
    • Business Analyst
    • Project Manager
    • Thiết kế UIUX
    • IT trong công ty non-tech
  • Kỹ năng tìm việc
    • Tìm việc IT cần biết
    • Phỏng vấn IT
    • Câu hỏi phỏng vấn
    • CV xin việc
    • Đàm phán lương
    • Mô tả công việc
  • Công nghệ
    • Công nghệ ứng dụng IT
    • Ngôn ngữ lập trình
    • Kiến thức công nghệ
  • Lương-Xu hướng
    • Lương bổng phúc lợi
No Result
View All Result
  • Jobs
  • Phát triển nghề nghiệp
    • Remote work
    • Kỹ năng làm việc IT
    • Developer
    • Data Science – Machine Learning – AI
    • IT gurus
    • Business Analyst
    • Project Manager
    • Thiết kế UIUX
    • IT trong công ty non-tech
  • Kỹ năng tìm việc
    • Tìm việc IT cần biết
    • Phỏng vấn IT
    • Câu hỏi phỏng vấn
    • CV xin việc
    • Đàm phán lương
    • Mô tả công việc
  • Công nghệ
    • Công nghệ ứng dụng IT
    • Ngôn ngữ lập trình
    • Kiến thức công nghệ
  • Lương-Xu hướng
    • Lương bổng phúc lợi
No Result
View All Result
No Result
View All Result
  • Jobs
  • Phát triển nghề nghiệp
  • Kỹ năng tìm việc
  • Công nghệ
  • Lương-Xu hướng

140+ nguồn tài liệu để chuẩn bị cho phỏng vấn về lập trình

Xuan Hiep by Xuan Hiep
June 26, 2020
in Developer, Kỹ năng tìm việc IT, Phỏng vấn IT, Tìm việc IT cần biết
0
0
Tài liệu tham khảo câu hỏi phỏng vấn lập trình
0
SHARES
287
VIEWS
Share on FacebookShare on Twitter

Cho dù bạn là một kỹ sư phần mềm mới vào nghề hay là một developer giàu kinh nghiệm, chuẩn bị kỹ cho một buổi phỏng vấn không bao giờ là thừa. Danh sách dưới đây cung cấp cho bạn hơn 140 nguồn tài liệu giúp bạn có được đầy đủ thông tin để có thể chuẩn bị tốt nhất cho buổi phỏng vấn về lập trình sắp tới. Các tài liệu và video bằng tiếng Anh nhưng có lẽ cũng không quá khó khăn cho việc tham khảo.

Những bài toán cổ điển trong lập trình

Đây là những bài toán mà nhà tuyển dụng thường hay hỏi khi bắt đầu. Tưởng là đùa nhưng mục đích là xem bạn.. có biết code không? Đây là những câu hỏi để có thể quyết định có tiếp tục phỏng vấn bạn nữa hay không. Ví dụ bài toán Fizz Buzz là bài toán kinh điển nhập môn lập trình và là một trong những câu hỏi phỏng vấn các nhà tuyển dụng thích dùng khi phỏng vấn về lập trình.

Hãy xem qua các bài toán này:

  1. Fizz Buzz
  2. Subarray Sum Equals K
  3. Arrays: Left Rotation
  4. Strings: Making Anagrams
  5. Nth Fibonacci

Những câu hỏi trên không tập trung vào các giải thuật và cấu trúc dữ liệu nhưng đòi hỏi bạn phải hiểu rõ về vòng lặp, dãy (array).

Giải thuật và Cấu trúc dữ liệu

Các câu hỏi chuẩn bị

Trước khi xem các video về cấu trúc dữ liệu và giải thuật, hãy xem các vấn đề dưới đây. Hãy xem liệu bạn có thể trả lời được hay không

  1. Sum of Even Numbers After Queries
  2. Robot Return to Origin
  3. N-Repeated Element in Size 2N Array
  4.  Balanced Binary Tree
  5. Longest Substring Without Repeating Characters
  6. Remove Nth Node From End of List
  7. Merge k Sorted Lists
  8. Next Permutation

Các video về cấu trúc dữ liệu và giải thuật

Cấu trúc dữ liệu

  1. Data Structures & Algorithms #1 — What Are Data Structures? — Video
  2. Multi-dim — Video
  3. Dynamic Arrays — Video
  4. Resizing arrays — Video
  5. Data Structures: Linked Lists — Video
  6. Core Linked Lists Vs Arrays — Video
  7. Pointers to Pointers — Video
  8. Data Structures: Trees — Video
  9. Data Structures: Heaps — Video
  10. Data Structures: Hash Tables — Video
  11. Phone Book Problem — Video
  12. Data Structures: Stacks and Queues — Video
  13. Using Stacks Last-In First-Out — Video
  14. Data Structures: Crash Course Computer Science #14 — Video
  15. Data Structures: Tries — Video

Giải thuật

  1. Algorithms: Graph Search, DFS and BFS — Video
  2. BFS(breadth-first search) and DFS(depth-first search) — Video
  3. Algorithms: Binary Search — Video
  4. Binary Search Tree Review — Video
  5. Python Algorithms for Interviews — Video
  6. Algorithms: Recursion — Video
  7. Algorithms: Bubble Sort — Video
  8. Algorithms: Merge Sort — Video
  9. Algorithms: Quicksort — Video

Độ phức tạp của thuật toán (Big O Notation)

  1. Introduction to Big O Notation and Time Complexity (Data Structures & Algorithms #7) — Video
  2. Harvard CS50 — Asymptotic Notation — Video
  3. A Gentle Introduction to Algorithm Complexity Analysis — Post
  4. Cheat sheet — Post

Quy hoạch động (Dynamic Programming)

  1. Dynamic Programming (Think Like a Programmer) — Video
  2. Algorithms: Memoization and Dynamic Programming — Video
  3. Dynamic Programming I: Fibonacci, Shortest Paths — Video
  4. Dynamic Programming II: Text Justification, Blackjack — Video
  5. Dynamic Programming — Post

Xử lý mảng (String Manipulation)

  1. Coding Interview Question and Answer: Longest Consecutive Characters — Video
  2. Sedgewick — Substring Search — Video

Các hướng dẫn phỏng vấn

  1. Google Coding Interview — Universal Value Tree Problem — Video
  2. Google Coding Interview Question and Answer #1: First Recurring Character — Video
  3. Find min and max element in a binary search tree — Video
  4. Find height of a binary tree — Video
  5. Check if a binary tree is binary search tree or not — Video
  6. What Is Tail Recursion? Why Is It So Bad? — Video

Những vấn đề khác

Đến đây bạn đã xem được kha khá các vấn đề cần cho chuẩn bị cho buổi phỏng vấn kỹ sư phần mềm. Nhưng như vậy đã đủ? Hãy thử sức thêm với các câu hỏi và vấn đề sau:

  1. Bigger Is Greater
  2. ZigZag Conversion
  3. Reverse Integer
  4. Combination Sum II
  5. Multiply Strings
  6. Larry’s Array
  7. Short Palindrome
  8. Valid Number
  9. Bigger is Greater
  10. The Full Counting Sort
  11. Lily’s Homework
  12. Common Child
  13. Repeated Substring Pattern
  14. Remove Element
  15. Delete Node in a BST
  16. Split Array into Consecutive Subsequences
  17. Number of Subarrays with Bounded Maximum
  18. Combination Sum IV
  19. Best Time to Buy and Sell Stock with Cooldown
  20. Longest Repeating Character Replacement
  21. Swap Nodes in Pairs
  22. Binary Tree Right Side View
  23. Flatten Nested List Iterator
  24. Binary Tree Level Order Traversal
  25. Binary Search Tree Iterator
  26. Maximum Length of Pair Chain
  27. Split Linked List in Parts

Các vấn đề về Operational Programming

Một số công ty khi phỏng vấn software engineer họ sẽ không hỏi bạn nhiều về các giải thuật. Thay vào đó họ sẽ hỏi nhiều các câu hỏi về implementation và operation. Đây là những câu hỏi khá đặc biệt và bao gồm các vấn đề thực tế

  1. Kangaroo Problem
  2. Breaking Records
  3. Find A Stringiter
  4. No Idea!
  5. Days of the programmer
  6. Leaderboard
  7. Word Order
  8. Sherlock And Squares
  9. Equalize The Array
  10. Apples And Oranges
  11. More Operational Style Questions

Các video về thiết kế hệ thống

Các câu hỏi về thiết kế hệ thông là những câu hỏi khá quan trọng để kiểm tra xem bạn có suy nghĩ rộng, toàn cảnh như một kỹ sư hay không. Các câu hỏi sẽ tập trung vào những dịch vụ, các vấn đề về server, làm sao bạn quản lý được traffic… Tất cả các câu trả lời của bạn sẽ cho nhà tuyển dụng thấy bạn có thể thiết kế phần mềm thay vì chỉ làm những gì người khác giao cho bạn.

  1. Parking Lot System — Video
  2. Whats App — Video
  3. Uber design — Video
  4. Instagram — Video
  5. Tinder Service — Video

Các câu hỏi phỏng vấn về hệ điều hành

Khi phỏng vấn các vị trí kỹ sư phần mềm hiếm khi nhà tuyển dụng hỏi bạn về hệ điều hành. Tuy nhiên, sẽ không thừa nếu bạn nắm các khái niệm như threads (luồng), scheduling, memory.. cho dù chỉ ở mức cơ bản. Sẽ rất xấu hổ nếu bạn không thể trả lời được về sự khác nhau giữa process và thread phải không nào?

  1. Commonly Asked Operating Systems Interview Questions
  2. What is Translation lookaside buffer?
  3. Why does Round Robin avoid the Priority Inversion Problem?
  4. Interrupt Vs System Call—What is ‘inode’ in file system?
  5. Operating System Interview Questions and Answers — Part I
  6. What is a kernel — Gary explains
  7. Round Robin Algorithm Tutorial (CPU Scheduling)
  8. The Magic of LRU Cache (100 Days of Google Dev) — Video
  9. The Memory Hierarchy — Video
  10. Interrupts — Video
  11. Scheduling — Video

Threads

  1. User Level thread Vs Kernel Level thread
  2. Intro to Processes & Threads — Video
  3. Difference Between Process and Thread — Georgia Tech — Advanced Operating Systems — Video
  4. Difference between forking and multithreading

Các câu hỏi phỏng vấn về lập trình hướng đối tượng

Tương tự như các câu hỏi về hệ điều hành, không nhiều các nhà tuyển dụng hỏi bạn về lập trình hướng đối tượng. Có lẽ họ cho rằng đây là những khái niệm cơ bản ai cũng biết. Tuy nhiên, sẽ không hay tí nào nếu bạn không thể trả lời được những câu hỏi của họ

  1. Java Programming Tutorial — 49 — Inheritance — Video
  2. Java Programming Tutorial — 55 — Introduction to Polymorphism — Video
  3. Java Programming Tutorial — 58 — Abstract and Concrete Classes — Video
  4. Java Programming Tutorial — 57 — Overriding Rules — Video
  5. Java Programming Tutorial — 59 — Class to Hold Objects
  6. Object-Oriented Programming — Video

Design Patterns

Sẽ rất có ích nếu bạn hiểu được các design patterns hoạt động thế nào và tại sao bạn lại dùng chúng. Một số nhà tuyển dụng sẽ hỏi bạn những câu hỏi khá đơn giản khi phỏng vấn developer như “tại sao bạn lại dùng một factory class?” Bạn có trả lời được câu hỏi này?

  1. Factory Design Pattern — Video
  2. Observer Design Pattern — Video
  3. Adapter Design Pattern — Video
  4. Facade Design Pattern — Video
  5. Chain of Responsibility Design Pattern — Video
  6. Interpreter Design Pattern — Video
  7. Singleton Design Pattern Tutorial — Video
  8. Chapter 6 (Part 1) — Patterns (video) — Video
  9. Head First Design Patterns — Video

SQL

Đây là phần cuối cùng trong bài này. Có thể bạn không bị hỏi nhiều về SQL trong buổi phỏng vấn nhưng đâu có mất gì nếu bạn chuẩn bị kỹ phần này đúng không nào?

SQL — Các vấn đề

  1. Trips and Users
  2. Human Traffic of Stadium
  3. Department Top Three Salaries
  4. Exchange Seats
  5. Hackerrank The Report
  6. Nth Highest Salary
  7. Symmetric Pairs
  8. OccupationsPlacements
  9. Ollivander’s Inventory

SQL — Videos

  1.  6 SQL Query Interview Questions — Video
  2. Learning about ROW_NUMBER and Analytic Functions — Video
  3. Advanced Implementation Of Analytic Functions — Video
  4. Advanced Implementation Of Analytic Functions Part 2 — Video
  5. Wise Owl SQL Videos — Video

Post SQL Problems

  1. Binary Tree Nodes
  2. Weather Observation Station 18
  3. ChallengesPrint Prime Numbers
  4. Big Countries
  5. Exchange Seats
  6. SQL Interview Questions: 3 Tech Screening Exercises (For Data Analysts)

Kết luận

Tham dự một buổi phỏng vấn về lập trình dù ở vị trí nào đều thường không dễ dàng và đôi lúc bạn cảm thấy mình sẽ không đi đến đâu. Với các câu hỏi, tài liệu, video bên trên sẽ giúp bạn có cái nhìn toàn cảnh hơn, chuẩn bị tốt hơn so với những đối thủ cạnh tranh cho vị trí mà bạn đang mong muốn

Chúc bạn may mắn!

Bài viết được tham khảo từ 142 Resources for Mastering Coding Interviews và có cập nhật thêm một số thông tin

 

Bạn có biết?


tham gia cộng đồng ITguru trên Linkedin, Facebook và các kênh mạng xã hội khác có thể giúp bạn nhanh chóng tìm được những chủ đề phát triển nghề nghiệp và cập nhật thông tin về việc làm IT mới nhất

Linkedin Page:
Facebook Group:
cơ hội việc làm IT : ITguru.vn

Bạn đánh giá bài viết thế nào?

Average rating 5 / 5. Vote count: 2

No votes so far! Be the first to rate this post.

Tags: bí quyết phỏng vấn thành côngcâu hỏi phỏng vấninterviewkinh nghiệm phỏng vấnphỏng vấn developerphỏng vấn ngành CNTT
Previous Post

Top 10 JavaScript Frameworks thông dụng năm 2020

Next Post

Lập trình viên có thể làm gì nếu đã chán viết code? Đây là 23 công việc khác bạn có thể làm

Xuan Hiep

Xuan Hiep

Related Posts

Phỏng vấn lập trình phần mềm

9 lý do các công ty phần mềm có thể từ chối các lập trình viên giỏi

April 15, 2022
serverless developer

Serverless là gì và học gì để làm việc với serverless?

June 2, 2022
mục tiêu nghề nghiệp kỹ sư phần mềm

Làm thế nào để kỹ sư phần mềm xây dựng mục tiêu nghề nghiệp hiệu quả

January 11, 2022
Stack Overflow

Mọi người sao chép và dán từ Stack Overflow thường xuyên như thế nào?

January 9, 2022
Code refactoring - Tái cấu trúc mã nguồn

Code refactoring là gì và những kỹ thuật để tái cấu trúc mã nguồn

April 18, 2022
Các kiểu lập trình viên

29 kiểu lập trình viên trên thế giới

December 12, 2021
Next Post
Bỏ nghề lập trình

Lập trình viên có thể làm gì nếu đã chán viết code? Đây là 23 công việc khác bạn có thể làm

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

About ITGuru.vn

  • Trang Chủ ITguru.vn
  • Về chúng tôi
  • Thỏa thuận sử dụng
  • Quy định bảo mật
  • Quy chế hoạt động
  • Liên hệ ITguru

Nhà tuyển dụng

  • Đăng tuyển

Người tìm việc

  • Việc làm IT
  • About ITguru Blog
  • Viết bài cùng ITguru

© 2022 ITguru.vn - Web site tuyển dụng và phát triển nghề nghiệp IT

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In
No Result
View All Result
  • About ITguru Blog
  • Viết bài cùng ITguru

© 2022 ITguru.vn - Web site tuyển dụng và phát triển nghề nghiệp IT