不是每个人都有时间做几百个 LeetCode 问题。这个开源项目就是为忙碌的工程师准备的免费技术面试准备材料,超过 500,000 人从这本手册中受益!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Go to file
Yangshun 697201fa0e
contents: change resume to use details/summary
3 years ago
.github website: add trailing slash config 3 years ago
algorithms website: homepage improvements 3 years ago
contents contents: change resume to use details/summary 3 years ago
design misc: create backwards-compatibility README for system design (#164) 5 years ago
experimental contents: add list of system design videos explained in simple language (#249) 3 years ago
preparing website: update domain 4 years ago
website contents: change resume to use details/summary 3 years ago
.editorconfig misc: restructure contents 6 years ago
.gitpod.yml gitpod setup: make the description precise + remove the build task to make the server startup fast. (#161) 5 years ago
.prettierrc misc: restructure contents 6 years ago
.travis.yml Allow 429 in awesome bot 7 years ago
CODE_OF_CONDUCT.md Update CODE_OF_CONDUCT and CONTRIBUTING 7 years ago
CONTRIBUTING.md Update CODE_OF_CONDUCT and CONTRIBUTING 7 years ago
LICENSE Update License year (#97) 7 years ago
README.md Added Simplify! (#252) 3 years ago

README.md

Tech Interview Handbook


Applying to jobs or internships?
Autofill all your applications in a single click.

Stop manually re-entering your information. Simplifys extension helps you autofill job applications on millions of sites.


What is this?

No one has time to do a few hundred LeetCode questions. Here are free and curated technical interview preparation materials for busy engineers, brought to you by the author of the Blind 75 List.

Besides the usual algorithm questions, other awesome stuff includes:

Help from you in contributing content would be very much appreciated!

Why do I want this?

This repository has practical content that covers all phases of a technical interview, from applying for a job to passing the interviews to offer negotiation. Technically competent candidates might still find the non-technical content helpful as well.

Who is this for?

Anybody who wants to land a job at a tech company but is new to technical interviews, seasoned engineers who have not been on the other side of the interviewing table in a while and want to get back into the game, or anyone who wants to be better at technical interviewing.


💡 Looking for high-quality interview courses? Educative offers a ton of great courses to improve your interview game 💡


How is this repository different?

There are many awesome books like Cracking the Coding Interview and interview-related repositories out there on GitHub, what makes this repository different? The difference is that many existing interview repositories contain mainly links to external resources whereas this repository contains top-quality curated content directly for your consumption.

Also, existing resources focus mainly on algorithm questions and lack coverage for more domain-specific and non-technical questions. This handbook aims to cover content beyond the typical algorithmic coding questions. 😎

Looking for Front End content?

Front-end-related content has been moved to a separate website - Front End Interview Handbook.

Looking for System Design content?

We're still working on System Design content. In the meanwhile, check out Educative's Grokking the System Design Interview course, which in our opinion is one of the most useful resources for getting started on system design interviews preparation.

Contents

A Docusaurus website has been created to provide a better reading experience. Check out the website here!

If you are interested in how data structures are implemented, check out Lago, a Data Structures and Algorithms library for JavaScript. It is pretty much still WIP but I intend to make it into a library that can be used in production and also a reference resource for revising Data Structures and Algorithms.

Contributing

There are no formal contributing guidelines at the moment as things are still in flux and we might find a better approach to structure content as we go along. You are welcome to contribute whatever you think will be helpful to fellow engineers. If you would like to contribute content for different domains, feel free to create an issue or submit a pull request and we can discuss further.

Online one-click setup for contributing

You can use Gitpod (A free online VS Code-like IDE) for contributing online. With a single click it will launch a workspace and automatically:

  • clone the tech-interview-handbook repo.
  • install the dependencies.
  • run yarn start.

So that you can start straight away.

Open in Gitpod

Contributors

This project exists thanks to all the people who contributed. [Contribute].

Backers

Thank you to all our backers! 🙏 [Become a backer]

Buy Me A Coffee

Sponsors

Support this project by becoming a sponsor. Your logo/profile picture will show up here with a link to your website. [Become a sponsor]

Maintainers

Disclaimer

I am providing code in the repository to you under an open source license. Because this is my personal repository, the license you receive to my code is from me and not my employer (Facebook).