Awesome JavaScript Interviews
A collection of super-popular Interview questions, along with answers that I was putting together for myself while preparing for my first Full-Stack JavaScript job interviews. Many of these questions are what I have actually faced in real interview. It is by no means comprehensive, and the answers are relatively short ( and for each of the concepts, there are probably better and/or more in depth coverage in the web), but I see this repo as reference tool, so I can continue a technical talk with the interviewer for two to three hours.
There are many fantastic resources for JavaScript interview questions, videos, and blog posts on the web and that I have drawn from. I will cite as many as I can throughout so that additional information on each list item can be easily found
For Understanding the Theory and the fundamentals of some super-popular Algorithm questions
🔗 Big O Cheatsheet🔗 Quick Big O understanding for coding interviews🔗 developers/sorting-algorithms🔗 tackling-javascript-algorithms🔗 sorting-algorithms-in-javascript🔗 Learn-Data_Structure-Algorithm-by-Javascript📖 Grokking Algorithms🔗 Algorithms Visualization🔗 coding-interviews-for-dummies🔗 educative.io/collection/page/🔗 Karp_algorithm🔗 www.geeksforgeeks.org/top-algorithms-and-data-structures-for-competitive-programming/🔗 best javascript-algorithms github repo🔗 14-patterns-to-ace-any-coding-interview-question🔗 Grokking the Coding Interview: Patterns for Coding Questions🔗 https://github.com/amejiarosario/dsa.js-data-structures-algorithms-javascript🔗 coding-interview-university🔗 reactjs-interview-questions🔗 Front-end-Developer-Interview-Questions🔗 front-end-interview-handbook - Almost complete answers to "Front-end Job Interview Questions" which you can use to interview potential candidates, test yourself or completely ignore
Github Repositories with large collections of problems-and-solutions of them most popular Interview challenges
🔗 Algorithms-Leetcode-Javascript🔗 Algorithm-in-JavaScript🔗 Javascript-Challenges🔗 JS-Challenges🔗 code-problems-solutions🔗 some common problems🔗 Cracking the Coding Interview - Javascript🔗 interview-questions-in-javascript🔗 javascript-interview-questions🔗 javascript-Exercises🔗 30-seconds-of-interview🔗 js--interview-questions
Overall multi-factor approach for winning this huge challenge and a great journey of getting the first Developer Job
🔗 medium.com/javascript-scene/every-developer-needs-a-code-portfolio🔗 Collection of Resources for Interview preparations and practices🔗 How I got 7 Job Offers in 8 Weeks🔗 /master-the-javascript-interview-soft-skills🔗 google-lost-a-chance-to-hire-me-finally-amazon-hired-me🔗 the-best-way-to-learn-to-code-is-to-code-learn-app-architecture-by-building-apps🔗 7-key-steps-to-getting-your-first-software-engineering-job🔗 5-key-learnings-from-the-post-bootcamp-job-search🔗 how-to-get-your-first-developer-job-in-4-months🔗 how-to-land-your-first-dev-job-even-if-you-don-t-have-a-cs-degree🔗 how-to-land-a-top-notch-tech-job-as-a-student🔗 unlocking-the-javascript-code-interview-an-interviewer-perspective🔗 get-that-job-at-google.html🔗 i-failed-my-effing-coding-interview-ab720c339c8a🔗 how-i-landed-a-full-stack-developer-job-without-a-tech-degree-or-work-experience🔗 here-are-4-best-ways-to-apply-for-software-engineer-jobs-and-exactly-how-to-use-them🔗 how-to-get-a-tech-job-with-no-previous-work-experience🔗 the-hard-thing-about-learning-hard-things🔗 70-job-find-websites-for-developers-other-tech-professionals🔗 YouTube - 70+ Websites To Find Developer Jobs🔗 YouTube - I'm 47 And Now I Want to be a Programmer🔗 YouTube - How To Be A Well-Paid Programmer In 1 Year?🔗 the-secret-to-being-a-top-developer-is-building-things-heres-a-list-of-fun-apps-to-build
Some other very very important resources
🔗 javascript cheatsheet🔗 Super useful es6-cheatsheet🔗 freeCodeCamp Guide🔗 functional-programming-in-js-map-filter-reduce🔗 you-must-understand-these-14-javasript-functions🔗 developer.mozilla.org/JavaScript/A_re-introduction_to_JavaScript🔗 developer.mozilla.org/docs/JavaScript/Guide📖 You-Dont-Know-JS🔗 GeeksForGeeks🔗 Dev.To🔗 Stack Overflow🔗 Dzone🔗 https://scotch.io/🔗 https://30secondsofcode.org/🔗 Front-end JavaScript Interviews in 2018–19
Coding Challenge Practice Platforms
🔗 interviewing.io🔗 Leetcode🔗 HackerRank🔗 CodeForces🔗 CodeChef🔗 Coderbyte🔗 CodinGame🔗 Cs Academy🔗 Daily Coding Problem🔗 Spoj🔗 HackerEarth🔗 TopCoder🔗 Codewars🔗 Exercism🔗 CodeFights🔗 Project Euler🔗 Interviewcake🔗 InterviewBit🔗 uCoder🔗 LintCode🔗 CodeCombat
-------------------------------------------------------------------------------
More curated list of general resources for JavaScript Interviews
-
🔗 https://www.thatjsdude.com/interview/js1.html - JS: Interview Algorithm Part-1 -
🔗 https://www.thatjsdude.com/interview/js2.html - JS: Basics and Tricky Questions Part-2: intermediate -
🔗 https://www.thatjsdude.com/interview/dom.html - JS: Interview Questions Part-3 -
🔗 https://medium.freecodecamp.org/3-questions-to-watch-out-for-in-a-javascript-interview-725012834ccb - 3 JavaScript questions to watch out for during coding interviews -
🔗 https://github.com/ggomaeng/awesome-js - A curated list of javascript fundamentals and algorithms -
🔗 https://github.com/Chalarangelo/30-seconds-of-code - Curated collection of useful Javascript snippets that you can understand in 30 seconds or less. -
🔗 https://medium.com/dev-bits/a-perfect-guide-for-cracking-a-javascript-interview-a-developers-perspective-23a5c0fa4d0d - A perfect guide for cracking a JavaScript interview - A developer’s perspective -
🔗 master-the-javascript-interview-what-s-the-difference-between-class-prototypal-inheritance-e4cd0a7562e9 - Master the JavaScript Interview: What’s the Difference Between Class & Prototypal Inheritance? -
🔗 https://medium.com/javascript-scene/master-the-javascript-interview-what-is-a-closure-b2f0d2152b36 - Master the JavaScript Interview: What is a Closure? -
🔗 https://medium.com/javascript-scene/master-the-javascript-interview-what-is-function-composition-20dfb109a1a0 - Master the JavaScript Interview: What is Function Composition? -
🔗 https://medium.com/javascript-scene/common-misconceptions-about-inheritance-in-javascript-d5d9bab29b0a - Common Misconceptions About Inheritance in JavaScript -
🔗 https://dev.to/arnavaggarwal/10-javascript-concepts-you-need-to-know-for-interviews?utm_source=hashnode.com - 10 JavaScript concepts you need to know for interviews -
🔗 https://hackernoon.com/a-quick-introduction-to-functional-javascript-7e6fe520e7fa - A Quick Introduction to Functional Javascript -
🔗 https://github.com/ganqqwerty/123-Essential-JavaScript-Interview-Question - 123-Essential-JavaScript-Interview-Question -
🔗 https://www.toptal.com/javascript/interview-questions - 37 Essential JavaScript Interview Questions -
🔗 https://medium.com/coderbyte/a-tricky-javascript-interview-question-asked-by-google-and-amazon-48d212890703 - A Tricky JavaScript Interview Question Asked by Google and Amazon
Key Fundamental concepts list, before you go for that Front End Engineering Interview
Frontend/UI Engineer Interviews:
- call, apply and bind method
- Polyfill for bind method
- Currying
- Debouncing
- async vs defer
- Event Bubbling & Capturing
- Prototype & Prototypal Inheritance
- Throttling
- Thinking Recursively
- Local Storage and Session Storage
- CORS
- sum(a)(b)(c)...(n)
- Web Storage APIs
- Event Loop
- Web Sockets
- Closures
- Callbacks & Promises
- Revise everything again
- Difference between deep clone and shallow clone and how to write your own deep clone fucntion/polyfill for deepclone
- ES6 data structures such as Map and Set. In certain cases, Map is much better suited than an Object. Probably even Server Sent Events would be a good thing to know.
- Observable and subscribers, subject, behaviour subject and repeatable subject
List of sites where you can hunt for a developer job
🔗 AngelList - https://angel.co🔗 GitHub: http://jobs.github.com🔗 Mashable: http://jobs.mashable.com/jobs🔗 Indeed: http://indeed.com🔗 StackOverflow: http://stackoverflow.com/jobs🔗 LinkedIn: http://linkedIn.com🔗 Glassdoor: http://glassdoor.com🔗 Dice: http://dice.com🔗 Monster: http://monster.com🔗 Simply Hired: http://simplyhired.com🔗 Toptal: https://toptal.com🔗 Hired - https://hired.com🔗 Muse: http://themuse.com/jobs🔗 Tuts+: http://jobs.tutsplus.com🔗 Krop: http://krop.com🔗 PowerToFly: http://powertofly.com/jobs🔗 Developers for Hire: http://developersforhire.com🔗 Codepen job board: https://codepen.io/jobs🔗 http://Joblist.app: http://joblist.app🔗 Fullstack Job: http://fullstackjob.com🔗 Authentic jobs: http://authenticjobs.com🔗 Jobspresso: http://jobspresso.co🔗 Jobs in Europe: http://landing.jobs🔗 TripleByte: https://triplebyte.com
Want a startup job?
🔗 AngelList: http://angel.co/jobs🔗 Product Hunt: http://producthunt.com/jobs🔗 Startup Hire: http://startuphire.com🔗 Startupers: http://startupers.com🔗 YCombinator: http://news.ycombinator.com/jobs
Best places to job hunt for remote jobs:
🔗 FlexJobs: http://flexjobs.com🔗 WeWorkRemotely: http://weworkremotely.com🔗 RemoteOk: http://remoteok.io/remote-dev-jobs🔗 Stackoverflow: http://stackoverflow.com/jobs/remote-developer-jobs🔗 Working Nomads: http://workingnomads.co/remote-development-jobs🔗 Remote . co - https://remote.co/remote-jobs/developer/🔗 Remoters: http://remoters.net/jobs/software-development🔗 JS Remotely: http://jsremotely.com🔗 Front-end remote: http://frontendremotejobs.com🔗 IWantRemote: http://iwantremote.com🔗 DailyRemote - https://dailyremote.com🔗 Remotive: https://remotive.io/remote-jobs/software-dev🔗 Outsourcely: http://outsourcely.com/remote-web-development-jobs🔗 Pangian: https://pangian.com/job-travel-remote/🔗 RemoteLeads: http://remoteleads.io🔗 Remote Talent: http://remotetalent.co/jobs🔗 JustRemote: https://justremote.co/remote-developer-jobs🔗 RemoteLeaf - https://remoteleaf.com🔗 Sitepoint - https://sitepoint.com/jobs/
Here are a few places to hunt for ios, react, vue and more
🔗 iOS: http://iosdevjobs.com🔗 React: http://reactjobboard.com🔗 Vue jobs: http://vuejobs.com🔗 Ember: http://jobs.emberjs.com🔗 Python Jobs - http://python.org/jobs
Want a list of just JavaScript jobs?
🔗 JavaScript job XYZ: http://javascriptjob.xyz🔗 Javascript remotely: http://jsremotely.com
Are you looking for a junior dev job?
🔗 JrDevJobs: http://jrdevjobs.com🔗 Stackoverflow Junior jobs: https://stackoverflow.com/jobs/junior-developer-jobs
Women focused job boards!
🔗 Women Who Code: http://womenwhocode.com/jobs🔗 Tech Ladies - https://hiretechladies.com
Want a job as a freelance dev? Here's a list
🔗 Freelancer: http://freelancer.com/jobs🔗 Upwork: http://upwork.com🔗 FlexJobs: http://flexjobs.com/jobs🔗 FreelancerMap: http://freelancermap.com🔗 http://Gun.io: http://gun.io🔗 Guru: http://guru.com/d/jobs
Some useful websites for programmers
When you get stuck
- Codementor : A mentorship community to learn from fellow developers via live 1:1 help and more.
- devRant : Community where you can rant and release your stress
- Learn Anything : Community curated knowledge graph of best paths for learning anything
- Quora : A place to share knowledge and better understand the world
- Stack Overflow : subscribe to their weekly newsletter and any other topic which you find interesting
For small project ideas
- freeCodeCamp | React project ideas : 27 fun app ideas you can build while learning React.
- martyr2s-mega-project-ideas-list : contains about 125 project ideas from beginner to intermediate level.
- karan/Projects : a large collection of small projects for beginners with
- Wrong "big projects" for beginners : How to choose where to start
- vicky002/1000-Projects : Mega List of practical projects that one can solve in any programming language!
- reddit.com/r/AppIdeas : A place to discuss ideas for applications, for bored developers.
- reddit.com/r/SomebodyMakeThis : A home for ideas by people who lack time, money, or skills.
General Coding advice
- 10-ways-to-be-a-better-developer : Ways to become a better dev!
- Code Review Best Practices : Kevin London's blog
- Design Patterns : Design Patterns explained in detail with examples.
- Develop for Performance : High-performance computing techniques for software architects and developers
- How to become a programmer or the art of Googling well : How to become a programmer or the art of Googling well
- How to escape tutorial purgatory as a new developer — or at any time in your career : How to escape tutorial purgatory
- JS Project Guidelines : A set of best practices for JavaScript projects.
- Learn to Code With Me : A comprehensive site resource by Laurence Bradford for developers who aims to build a career in the tech world
- Lessons From A Lifetime Of Being A Programmer : The Codist Header Lessons From A Lifetime Of Being A Programmer
- Programming Principles : Categorized overview of Programming Principles & Patterns
- Software design pattern : The entire collection of Design Patterns.
- Things I Wish Someone Had Told Me When I Was Learning How to Code — Free Code Camp : What I’ve learned from teaching others
- What every computer science major should know : The Principles of Good Programming
- Working as a Software Developer : Henrik Warne's blog
- The Open Web Application Security Project (OWASP) : OWASP is an open community dedicated to enabling organizations to conceive, develop, acquire, operate, and maintain applications that can be trusted.
Coding Style
- Airbnb JS Style Guide : A mostly reasonable approach to JavaScript
- Airbnb Ruby Style Guide : A ruby style guide by Airbnb
- Ruby coding style guide : A community-driven Ruby coding style guide
- Angular 1 Style Guide : Officially endorsed style guide by John Pappa
- CS 106B Coding Style Guide : must see for those who create spaghetti
- Debugging Faqs : Check out how to debug your program
- Directory of CS Courses (many with online lectures) : Another online CS courses
- Directory of Online CS Courses : Free online CS courses
- Good C programming habits. • /r/C_Programming : C programming habits to adopt
- Google C++ Style Guide
- How to Report Bugs Effectively : Want to report a bug but you don't how? Check out this post
- What are some bad coding habits you would recommend a beginner avoid getting into? : Bad habits to avoid when you get start
- PEP8 - Style Guide for Python Code : Style Guide for Python Code
- Standard JS Style Guide : JavaScript style guide, with linter & automatic code fixer
- Google Python Style Guide : Google Python Style Guide
- Aurelia Style Guide : An Aurelia style guide by Behzad Abbasi(Behzad888)
- Source Making : Design Patterns & Refactoring
- Refactoring Guru: Refactoring And Design Patterns
General Good Articles
- 14 Things I Wish I’d Known When Starting with MongoDB
- 40 Keys Computer Science Concepts Explained In Layman’s Terms
- A Gentle Introduction To Graph Theory
- A programmer-friendly language that compiles to Lua.
- A Software Developer’s Reading List : Some good books and links in there.
- Code a TCP/IP stack : Let's code a TCP/IP stack, 5: TCP Retransmission
- Codewords.recurse : The language of choice
- Data structure and Algorithms : List of some algorithms and data structures with their solutions.
- Dive into the byte code
- Expectations of a Junior Developer
- Getting Started with MongoDB – An Introduction
- Linux Inside
- List of algorithms
- Step by Step Guide to Database Normalization: A guide to database normalization.
- The Key To Accelerating Your Coding Skills
- Unicode
- We are reinventing the retail industry through innovative technology
- What every programmer absolutely, positively needs to know about encodings and character sets to work with text
- What every programmer should know about memory - PDF
- Why fast pages are important : Why App Speed Matters, Revenue
- qotoqot - improving-focus : How I got to 200 productive hours a month
- Pixel Beat - Unix : Parallel processing with Unix tools
- Learning Vim : What I Wish I Knew
- Write a Kernel : Kernel 101 – Let’s write a Kernel
- Learning JavaScript Design Patterns : the online version of the Learning JavaScript Design Patterns published by O'Reilly, released by the author Addy Osmani under CC BY-NC-ND 3.0
- Working with Webhooks : a comprehensive guide on webhooks
