@ -22,6 +22,9 @@ Companies value behavioral skills and do evaluate candidates on them. At the tim
_Source: [Preparing for your Onsite Interview at Facebook](https://www.facebook.com/careers/swe-prep-onsite)_
_Source: [Preparing for your Onsite Interview at Facebook](https://www.facebook.com/careers/swe-prep-onsite)_
## Courses
## Quality courses
I really don't think one needs to attend a course on behavioral interviews, but your mileage may vary. I've seen candidates get rejected for failing the behavioral round even though they did super well on the coding and system design interviews. If you want to take a course on behavioral interviews, you can check out Educative's [Grokking the Behavioral Interview](https://www.educative.io/courses/grokking-the-behavioral-interview?aff=x23W) course.
I really don't think one needs to attend a course on behavioral interviews, but your mileage may vary. I've seen candidates get rejected for failing the behavioral round even though they did super well on the coding and system design interviews. If you want to take a course on behavioral interviews, I'd recommend the following courses:
- ["Behavioral Interviews" by Exponent](https://www.tryexponent.com/courses/behavioral?ref=yangshuntay) - While Exponent also has courses on technical content, what really makes them stand out from the other interview preparation platform is their availability of content for non-software engineering roles such as Product Management and Product Marketing. Their behavioral interview course is a mix of videos (by the Exponent CEO himself!) and text, going through the most common questions and imparting you with techniques to help you ace the interview. To top it off, they also have an interview question bank for behavioral questions with responses from the platform's helpful community. While the subscription might be a little pricey for just the behavioral interviews content, they also offer quality technical content for [System Design](https://www.tryexponent.com/courses/system-design-interview?ref=yangshuntay), [Data Structures](https://www.tryexponent.com/courses/swe-practice?ref=yangshuntay) and [Algorithms](https://www.tryexponent.com/courses/algorithms?ref=yangshuntay). The convenience of a one-stop platform which covers all aspects of technical interview preparation is very enticing.
- ["Grokking the Behavioral Interview" by Educative](https://www.educative.io/courses/grokking-the-behavioral-interview?aff=x23W) - As usual, this course by Educative is text-based and they believe that text-based courses are the more efficient than video courses. One thing that stands out about this course is that they teach you **patterns** for behavioral interviews, not just about memorizing questions and preparing answers.
- [Grokking the Dynamic Programming Patterns for Coding Interviews](https://www.educative.io/courses/grokking-dynamic-programming-patterns-for-coding-interviews?aff=x23W)
- [Grokking the Dynamic Programming Patterns for Coding Interviews](https://www.educative.io/courses/grokking-dynamic-programming-patterns-for-coding-interviews?aff=x23W)
## More practice
## Quality courses
If you want more structured algorithms practice, I recommend [Educative's Grokking the Coding Interview: Patterns for Coding Questions](https://www.educative.io/courses/grokking-the-coding-interview?aff=x23W) course. This course essentially expands upon the questions here but approaches the practicing from a questions pattern perspective rather than data structures, which is an approach I also agree with for learning and getting better at algorithmic problems.
If you want more structured algorithms practice, I recommend the following courses:
- ["Grokking the Coding Interview: Patterns for Coding Questions" by Educative](https://www.educative.io/courses/grokking-the-coding-interview?aff=x23W) - This course essentially expands upon the questions on this page but approaches the practicing from a questions pattern perspective rather than data structures, which is an approach I also agree with for learning and have personally used to get better at algorithmic problems. **Learn and understand patterns, not memorize answers!**
@ -28,7 +28,7 @@ System design content is still work-in-progress, but the following are some reso
## Quality courses
## Quality courses
- ["Grokking the System Design Interview" by Educative](https://www.educative.io/courses/grokking-the-system-design-interview?aff=x23W) - This is probably the most famous system design interview course on the internet and what makes it different from most other courses out there is that it is purely text-based, which is great for people who refer reading over watching videos (such as myself!). It contains a repository of the popular system design problems along with a glossary of system design basics. I've personally completed this course and have recommended many others to use this. Highly recommended!
- ["Grokking the System Design Interview" by Educative](https://www.educative.io/courses/grokking-the-system-design-interview?aff=x23W) - This is probably the most famous system design interview course on the internet and what makes it different from most other courses out there is that it is purely text-based, which is great for people who refer reading over watching videos (such as myself!). It contains a repository of the popular system design problems along with a glossary of system design basics. I've personally completed this course and have recommended many others to use this. Highly recommended!
- ["System Design Interview Course" by Exponent](https://www.tryexponent.com/courses/system-design-interview) - This course by Exponent covers system designs basics and has a huge database of popular system design questions with video explanations. Use this [referral link to get 10% off](https://www.tryexponent.com/refer/abdlb). In my opinion, Exponent is one of the most credible interview preparation resources out there as their resources are high quality and goes beyond Software Engineering roles.
- ["System Design Interview Course" by Exponent](https://www.tryexponent.com/courses/system-design-interview) - This course covers system designs basics and has a huge database of popular system design questions with videos of mock interviews. Some of the questions have text answers and a database schema and APIs for reference (which I find helpful). While the subscription might be a little pricey for just the system design interviews content, they also offer quality technical content for [Data Structures](https://www.tryexponent.com/courses/swe-practice?ref=yangshuntay), [Algorithms](https://www.tryexponent.com/courses/algorithms?ref=yangshuntay) and [Behavioral Interviews](https://www.tryexponent.com/courses/behavioral?ref=yangshuntay). The convenience of a one-stop platform which covers all aspects of technical interview preparation is very enticing.
- ["Grokking the Advanced System Design Interview" by Educative](https://www.educative.io/courses/grokking-adv-system-design-intvw?aff=x23W) - I haven't tried this but it's by the same people who created "Grokking the System Design Interview", so it should be good! In my opinion you probably wouldn't need this unless you're very senior or going for a specialist position.
- ["Grokking the Advanced System Design Interview" by Educative](https://www.educative.io/courses/grokking-adv-system-design-intvw?aff=x23W) - I haven't tried this but it's by the same people who created "Grokking the System Design Interview", so it should be good! In my opinion you probably wouldn't need this unless you're very senior or going for a specialist position.