tech-interview-handbook
Curated coding interview preparation materials for busy software engineers
File Explorer
Download Latest Version (.zip)- lint.yml
- tsc.yml
- FUNDING.yml
- pre-commit
- extensions.json
- settings.json
- README.md
- cities.json
- countries.json
- states.json
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration.sql
- migration_lock.toml
- companies.csv
- salaries.xlsx
- schema.prisma
- seed-analysis.ts
- seed-companies.ts
- seed-questions.ts
- seed-salaries.ts
- seed.ts
- bank-logo.png
- offers-logo.svg
- resumes-logo.svg
- ai-ling.jpg
- bryann.jpg
- hongpo.jpg
- jeffsieu.jpg
- keane.jpg
- peirong.jpg
- stuart.jpg
- su-yin.jpg
- terence.jpg
- weilin.jpg
- zhiying.jpg
- ziqing.jpg
- favicon.ico
- logo.svg
- AppShell.tsx
- GlobalNavigation.ts
- GoogleAnalytics.tsx
- HomeNavigation.ts
- MobileNavigation.tsx
- ProductNavigation.tsx
- OffersHeader.tsx
- OffersRow.tsx
- OffersTable.tsx
- OffersTablePagination.tsx
- types.ts
- DashboardOfferCard.tsx
- DashboardProfileCard.tsx
- offers-analysis.png
- offers-browse.png
- offers-profile.png
- LeftTextCard.tsx
- RightTextCard.tsx
- FormCitiesTypeahead.tsx
- FormCompaniesTypeahead.tsx
- FormJobTitlesTypeahead.tsx
- FormMonthYearPicker.tsx
- FormRadioList.tsx
- FormSection.tsx
- FormSelect.tsx
- FormTextArea.tsx
- FormTextInput.tsx
- OfferAnalysis.tsx
- OfferPercentileAnalysisText.tsx
- OfferProfileCard.tsx
- BackgroundForm.tsx
- OfferDetailsForm.tsx
- OffersProfileSave.tsx
- OffersSubmissionAnalysis.tsx
- OffersSubmissionForm.tsx
- CommentCard.tsx
- ExpandableCommentCard.tsx
- EducationCard.tsx
- OfferCard.tsx
- ProfileComments.tsx
- ProfileDetails.tsx
- ProfileHeader.tsx
- ProfilePhotoHolder.tsx
- OffersHeader.tsx
- OffersRow.tsx
- OffersTable.tsx
- OffersTablePagination.tsx
- types.ts
- Tooltip.tsx
- Breadcrumbs.tsx
- constants.ts
- EducationFields.ts
- EducationLevels.ts
- InternshipCycles.ts
- JobTypeTabs.tsx
- OffersNavigation.tsx
- types.ts
- Years.ts
- BaseQuestionCard.tsx
- FullQuestionCard.tsx
- QuestionListCard.tsx
- QuestionOverviewCard.tsx
- SimilarQuestionCard.tsx
- AnswerCard.tsx
- FullAnswerCard.tsx
- QuestionAnswerCard.tsx
- AnswerCommentListItem.tsx
- CommentListItem.tsx
- QuestionCommentListItem.tsx
- FilterSection.tsx
- ContributeQuestionForm.tsx
- CreateQuestionEncounterForm.tsx
- BackButtonLayout.tsx
- ProtectedContextProvider.tsx
- ProtectedDialog.tsx
- CompanyTypeahead.tsx
- ExpandedTypeahead.tsx
- LocationTypeahead.tsx
- RoleTypeahead.tsx
- AddToListDropdown.tsx
- ContributeQuestionCard.tsx
- ContributeQuestionDialog.tsx
- CreateListDialog.tsx
- DeleteListDialog.tsx
- DiscardDraftDialog.tsx
- FullScreenSpinner.tsx
- LandingComponent.tsx
- PaginationLoadMoreButton.tsx
- QuestionAggregateBadge.tsx
- QuestionContainer.tsx
- QuestionSearchBar.tsx
- QuestionsNavigation.tsx
- QuestionTypeBadge.tsx
- SortOptionsSelect.tsx
- VotingButtons.tsx
- ResumeBadgeCoolIcon.tsx
- ResumeBadgeRocketIcon.tsx
- ResumeBadgeTreasureIcon.tsx
- ResumeBadgeDetectiveIcon.tsx
- ResumeBadgeEagleIcon.tsx
- ResumeBadgeSuperheroIcon.tsx
- ResumeBadgeBookIcon.tsx
- ResumeBadgeOwlIcon.tsx
- ResumeBadgeSageIcon.tsx
- resume-badge.d.ts
- resumeBadgeConstants.ts
- ResumeUserBadge.tsx
- ResumeUserBadges.tsx
- ResumeFilterPill.tsx
- ResumeListItem.tsx
- ResumeListItems.tsx
- ResumeCommentDeleteForm.tsx
- ResumeCommentEditForm.tsx
- ResumeCommentReplyForm.tsx
- ResumeCommentVoteButtons.tsx
- resumeCommentConstants.ts
- ResumeCommentListItem.tsx
- ResumeCommentsForm.tsx
- ResumeCommentsList.tsx
- avatar-1.png
- avatar-2.png
- avatar-3.png
- avatar-4.png
- avatar-5.png
- resumes-browse.png
- resumes-review.png
- resumes-submit.png
- CallToAction.tsx
- Container.tsx
- Hero.tsx
- Logo.tsx
- PrimaryFeatures.tsx
- ResumeExpandableText.tsx
- ResumeExperienceTypeahead.tsx
- ResumeSignInButton.tsx
- ResumeSubmissionGuidelines.tsx
- ResumePdf.tsx
- ResumesNavigation.tsx
- GitHubIcon.tsx
- CitiesTypeahead.tsx
- CompaniesTypeahead.tsx
- CompanyProfileImage.tsx
- Container.tsx
- CountriesTypeahead.tsx
- JobTitles.ts
- JobTitlesTypeahead.tsx
- loginPageHref.ts
- MonthYearPicker.tsx
- file-storage-keys.ts
- client.mjs
- schema.mjs
- server.mjs
- offers-mappers.ts
- [...nextauth].ts
- [trpc].ts
- file-storage.ts
- restricted.ts
- [offerProfileId].tsx
- [offerProfileId].tsx
- [offerProfileId].tsx
- index.tsx
- about.tsx
- admin.tsx
- dashboard.tsx
- features.tsx
- index.tsx
- index.tsx
- index.tsx
- about.tsx
- browse.tsx
- history.tsx
- index.tsx
- lists.tsx
- my-questions.tsx
- [resumeId].tsx
- about.tsx
- features.tsx
- index.tsx
- submit.tsx
- index.tsx
- new.tsx
- 404.tsx
- _app.tsx
- _document.tsx
- index.tsx
- login.tsx
- profile.tsx
- settings.tsx
- test__.tsx
- get-server-auth-session.ts
- client.ts
- offers-admin-router.ts
- offers-analysis-router.ts
- offers-comments-router.ts
- offers-profile-router.ts
- offers-user-profile-router.ts
- offers.ts
- questions-answer-comment-router.ts
- questions-answer-comment-user-router.ts
- questions-answer-router.ts
- questions-answer-user-router.ts
- questions-list-router.ts
- questions-question-comment-router.ts
- questions-question-comment-user-router.ts
- questions-question-encounter-router.ts
- questions-question-encounter-user-router.ts
- questions-question-router.ts
- questions-question-user-router.ts
- resumes-comments-router.ts
- resumes-comments-user-router.ts
- resumes-comments-votes-router.ts
- resumes-comments-votes-user-router.ts
- resumes-resume-router.ts
- resumes-resume-user-router.ts
- resumes-star-user-router.ts
- companies-router.ts
- context.ts
- index.ts
- locations-router.ts
- protected-example-router.ts
- todos-user-router.ts
- todos.ts
- user-router.ts
- globals.css
- index.d.ts
- next-auth.d.ts
- offers.d.ts
- questions.d.ts
- resume-comments.d.ts
- resume.d.ts
- Alert.tsx
- Badge.tsx
- Banner.tsx
- Button.tsx
- CheckboxInput.tsx
- CheckboxList.tsx
- Collapsible.tsx
- Dialog.tsx
- DropdownMenu.tsx
- DropdownMenuItem.tsx
- HorizontalDivider.tsx
- Pagination.tsx
- RadioList.tsx
- RadioListContext.ts
- RadioListItem.tsx
- Select.tsx
- SlideOut.tsx
- Spinner.tsx
- Tabs.tsx
- TextArea.tsx
- TextInput.tsx
- Toast.tsx
- ToastsProvider.tsx
- Typeahead.tsx
- index.tsx
- styles.css
- analysisGeneration.ts
- analysisInclusion.ts
- CurrencyEnum.tsx
- currencyExchange.ts
- CurrencySelector.tsx
- index.tsx
- form.tsx
- link.tsx
- randomGenerator.ts
- randomNameGenerator.ts
- string.tsx
- time.tsx
- useSearchParam.ts
- zodRegex.ts
- aggregate-encounters.ts
- useAnswerCommentVote.ts
- useAnswerVote.ts
- useQuestionCommentVote.ts
- useQuestionVote.ts
- useVote.ts
- companySlug.ts
- constants.ts
- createSlug.ts
- locationSlug.ts
- mutations.ts
- relabelQuestionAggregates.ts
- RequireAllOrNone.ts
- useDefaultCompany.ts
- useDefaultLocation.ts
- useFormRegister.ts
- useLocationOptions.ts
- useProtectedCallback.ts
- useSearchParam.ts
- withHref.tsx
- resumeFilters.ts
- resumePrismaUtils.ts
- useDebounceValue.ts
- useSearchParams.ts
- useCompanyOptions.ts
- useCountryOptions.ts
- useJobTitleOptions.ts
- JobExperienceLevel.ts
- supabase.ts
- trpc.ts
- middleware.ts
- .env.example
- .gitignore
- next-env.d.ts
- next.config.mjs
- package.json
- postcss.config.cjs
- README.md
- tailwind.config.cjs
- tsconfig.json
- vercel.json
- 2019-11-03-are-front-end-development-enough-for-a-career.md
- 2020-05-28-summing-root-to-leaf-numbers.md
- 2021-04-12-importance-of-communicating-effectively-as-an-engineer.md
- 2021-08-19-facebook-career-questions-and-answers.md
- 2021-08-28-front-end-career-questions.md
- 2021-08-29-resume-improvement-case-study.md
- 2021-08-30-a-glimpse-into-front-end-interviews.md
- 2021-10-30-my-experience-working-as-a-meta-engineer.md
- 2021-12-23-front-end-vs-back-end-system-design-interviews.md
- 2022-04-20-take-control-over-your-coding-interview.md
- 2022-04-21-why-you-should-include-debugging-in-the-interview-process.md
- 2022-07-09-getting-a-tech-job-as-an-undergraduate.md
- 2023-05-17-how-to-have-successful-software-engineering-internship.md
- InDocAd.js
- QuestionGroups.json
- QuestionList.js
- AlgorithmCourses.md
- __template__.md
- array.md
- binary.md
- dynamic-programming.md
- geometry.md
- graph.md
- hash-table.md
- heap.md
- interval.md
- linked-list.md
- math.md
- matrix.md
- oop.md
- queue.md
- recursion.md
- sorting-searching.md
- stack.md
- string.md
- study-cheatsheet.md
- tree.md
- trie.md
- behavioral-interview-questions.md
- behavioral-interview-rubrics.md
- behavioral-interview-senior-candidates.md
- behavioral-interview.md
- best-coding-interview-courses.md
- best-practice-questions.md
- career-growth.md
- choosing-between-companies.md
- coding-interview-cheatsheet.md
- coding-interview-prep.md
- coding-interview-rubrics.md
- coding-interview-study-plan.md
- coding-interview-techniques.md
- engineering-levels.md
- final-questions.md
- interview-formats-top-companies.md
- interviewer-cheatsheet.md
- landscape.md
- mock-interviews.md
- negotiation-rules.md
- negotiation.md
- programming-languages-for-coding-interviews.md
- resume-old.md
- resume.md
- self-introduction.md
- software-engineering-interview-guide.md
- system-design.md
- understanding-compensation.md
- README.md
- binarySearch.js
- binToInt.js
- deepEqual.js
- graphTopoSort.js
- intervalsIntersect.js
- intervalsMerge.js
- intToBin.js
- isSubsequence.js
- matrixClone.js
- matrixTranspose.js
- matrixTraverse.js
- mergeSort.js
- treeEqual.js
- treeMirror.js
- binary_search.py
- char_prime_map.py
- graph_dfs.py
- graph_topo_sort.py
- heap.py
- is_subsequence.py
- linked_list.py
- quick_select.py
- rabin_karp_hash.py
- tree_equal.py
- tree_mirror.py
- tree_traversal.py
- trie.py
- union_find.py
- topics.md
- [[catchall]].js
- index.js
- styles.module.css
- Inter-italic-latin.var.woff2
- Inter-roman-latin.var.woff2
- custom.css
- successStories.js
- advertise.md
- index.js
- styles.module.css
- index.js
- index.js
- styles.module.css
- index.d.ts
- index.js
- index.js
- styles.module.css
- zhenghao.jpg
- freeCodeCamp.jpg
- Insharamin.jpg
- Justyna_Adam.jpg
- MSFTImagine.png
- palashv2.jpg
- ravinwashere.jpg
- rwenderlich.jpg
- sitepointdotcom.jpg
- umaar.jpg
- Vinaystwt.jpg
- bad-communication.jpg
- coding-interview-rubric-software-engineer.jpg
- discord-light.svg
- discord.svg
- favicon.png
- four-steps-to-create-a-software-engineer-resume.jpg
- internship-salaries.jpg
- interview-hire-spectrum.jpg
- logo.svg
- meta-facebook.jpg
- techniques-for-optimizing-space-complexity.jpg
- techniques-for-optimizing-time-complexity.jpg
- techniques-for-solving-coding-interview-questions.jpg
- teik-jun-resume-new.png
- teik-jun-resume-old.png
- what-to-do-after-a-coding-interview.jpg
- what-to-do-before-a-phone-screen-coding-interview.jpg
- what-to-do-before-a-virtual-onsite-coding-interview.jpg
- what-to-do-during-a-coding-interview.jpg
- algorithms-array.png
- algorithms-binary.png
- algorithms-dynamic-programming.png
- algorithms-geometry.png
- algorithms-graph.png
- algorithms-hash-table.png
- algorithms-heap.png
- algorithms-interval.png
- algorithms-linked-list.png
- algorithms-math.png
- algorithms-matrix.png
- algorithms-queue.png
- algorithms-recursion.png
- algorithms-sorting-searching.png
- algorithms-stack.png
- algorithms-string.png
- algorithms-study-cheatsheet.png
- algorithms-tree.png
- algorithms-trie.png
- behavioral-interview-questions.png
- behavioral-interview.png
- coding-interview-cheatsheet.png
- coding-interview-prep.png
- coding-interview-rubrics.png
- coding-interview-study-plan.png
- coding-interview-techniques.png
- final-questions.png
- mock-interviews.png
- negotiation.png
- programming-languages-for-coding-interviews.png
- resume.png
- self-introduction.png
- software-engineering-interview-guide.png
- system-design.png
- _redirects
- ads.txt
- CNAME
- .gitignore
- .npmrc
- docusaurus.config.js
- package.json
- README.md
- sidebars.js
- logo.svg
- start-reading-button.jpg
- package.json
- tailwind.config.js
- base.json
- nextjs.json
- package.json
- react-library.json
- .editorconfig
- .gitignore
- AGENTS.md
- CODE_OF_CONDUCT.md
- CONTRIBUTING.md
- LICENSE
- package.json
- pnpm-lock.yaml
- pnpm-workspace.yaml
- README.md
- vite.config.ts
# Installation Guide
1. Get the code
git clone https://github.com/yangshun/tech-interview-handbook
Downloads the entire project code from GitHub to your computer.
cd tech-interview-handbook
Moves into the project folder you just downloaded.
2. Node.js
Easy RecommendedPrerequisites
cd apps/portal
This project's files live in a subfolder, so move into it first.
npm install
Downloads and installs the libraries listed in package.json.
npm start
Starts the development/run server.
After running the command, open the address shown in the terminal (usually something like http://localhost:3000) in your browser.
// repository documentation
Was this content helpful?
(0 ratings)
