The word "interview" is frequently associated with anxiety and discomfort. However, you may prepare vital tools to brighten up and organise fruitful interviews with this article's assistance.
I'll provide you with a list of GitHub repositories that will assist you in preparing for your next technical/coding interview.
1. Coding University Interview
This excellent repository has everything you'll need for a coding interview. It began as the repository owner's study plan and evolved into a study plan for many others. The author is now employed as a software engineer at Amazon.
You'll need a multi-month study strategy to ace any big tech company's interview.
The technique progresses from programming fundamentals through an advanced data structure, system design, and essential computer science ideas.
jwasham / coding-interview-university
A complete computer science study plan to become a software engineer.
Coding Interview University
I originally created this as a short to-do list of study topics for becoming a software engineer but it grew to the large list you see today. After going through this study plan, I got hired as a Software Development Engineer at Amazon You probably won't have to study as much as I did. Anyway, everything you need is here.
I studied about 8-12 hours a day, for several months. This is my story: Why I studied full-time for 8 months for a Google interview
Please Note: You won't need to study as much as I did. I wasted a lot of time on things I didn't need to know. More info about that is below. I'll help you get there without wasting your precious time.
The items listed here will prepare you well for a technical interview at just about any software company including theā¦
2. Build Your Own X
Here are some instances of how to impress the employer by developing your own Git, Docker, or framework, among other things.
codecrafters-io / build-your-own-x
Master programming by recreating your favorite technologies from scratch.
Build your own <insert-technology-here>
This repository is a compilation of well-written, step-by-step guides for re-creating our favorite technologies from scratch.
What I cannot create, I do not understand ā Richard Feynman.
It's a great way to learn.
- 3D Renderer
- Augmented Reality
- BitTorrent Client
- Blockchain / Cryptocurrency
- Bot
- Command-Line Tool
- Database
- Docker
- Emulator / Virtual Machine
- Front-end Framework / Library
- Game
- Git
- Network Stack
- Neural Network
- Operating System
- Physics Engine
- Programming Language
- Regex Engine
- Search Engine
- Shell
- Template Engine
- Text Editor
- Visual Recognition System
- Voxel Engine
- Web Browser
- Web Server
- Uncategorized
Tutorials
Build your own 3D Renderer
- C++: Introduction to Ray Tracing: a Simple Method for Creating 3D Images
- C++: How OpenGL works: software rendering in 500 lines of code
- C++: Raycasting engine of Wolfenstein 3D
- C++: Physically Based Rendering:From Theory To Implementation
- C++: Ray Tracing in One Weekend
- C++: Rasterization: a Practical Implementation
- C#ā¦
3. Tech Interview Handbook
This is your technical interview manual. This one was the most well-organized and straightforward to navigate. It also includes advice on how to deal with behavioral questions, which can be tricky at times.
yangshun / tech-interview-handbook
šÆ Curated coding interview preparation materials for busy software engineers
Tech Interview Handbook
What is this?
Not everyone has the time to do a few hundred LeetCode questions. Here are free and curated technical interview preparation materials for busy engineers, brought to you by me, the author of Blind 75. Over 1,000,000 people have benefitted from this handbook!
Besides the usual algorithm questions, other awesome stuff includes:
- Best practice questions for coding interviews
- Grind 75 - the next evolution of Blind 75, bigger and better
- How to prepare for coding interviews
- Coding interview best practices - Straight-to-the-point Do's and Don'ts
- Algorithm cheatsheets and tips categorized by topic
- Step-by-step Software Engineer resume guide to prepare a FAANG-ready resume
- Behavioral questions asked by the top tech companies
- Front end interview preparation
Help from you in contributing content would be very much appreciated!
Why would you read
ā¦4. How to Secure Anything
The repository is well-organized and has a wealth of other resources to support your learning.
veeral-patel / how-to-secure-anything
How to systematically secure anything: a repository about security engineering
How to Secure Anything
Security engineering is the discipline of building secure systems.
Its lessons are not just applicable to computer security. In fact, in this repo, I aim to document a process for securing anything, whether it's a medieval castle, an art museum, or a computer network.
Please contribute! Create a pull request or just create a issue for content you'd like to add: I'll add it for you!
Table of contents
5. JavaScript Algorithms
The JavaScript Algorithms repository focuses on JavaScript positions. However, if you understand the principles and know how to implement them in JavaScript, you'll certainly be able to do so in other languages.
Each Data Structure and Algorithm has its README file, which offers links to other resources. As a result, if you don't comprehend a subject, you can always look up more information in the additional content.
trekhleb / javascript-algorithms
š Algorithms and data structures implemented in JavaScript with explanations and links to further readings
JavaScript Algorithms and Data Structures
šŗš¦ UKRAINE IS BEING ATTACKED BY RUSSIAN ARMY. CIVILIANS ARE GETTING KILLED. RESIDENTIAL AREAS ARE GETTING BOMBED.
- Help Ukraine via
- More info on war.ukraine.ua and MFA of Ukraine
This repository contains JavaScript based examples of many popular algorithms and data structures.
Each algorithm and data structure has its own separate README with related explanations and links for further reading (including ones to YouTube videos).
Read this in other languages: ē®ä½äøę ē¹é«äøę, ķźµģ“, ę„ę¬čŖ, Polski, FranƧais, EspaƱol, PortuguĆŖs, Š ŃŃŃŠŗŠøŠ¹, TĆ¼rkƧe, Italiana, Bahasa Indonesia, Š£ŠŗŃŠ°ŃŠ½ŃŃŠŗŠ°, Arabic, Tiįŗæng Viį»t, Deutsch, Uzbek
ā Note that this project is meant to be used for learning and researching purposes only, and it is not meant to be used for production.
Data Structures
ā¦6. How The Web Works
You can learn about the DNS, HTTP protocol, server, DOM Tree, Render Tree, page painting, and other topics.
It's an excellent resource for learning the internet's fundamentals. Furthermore, the storage has additional links that allow you to delve deeper into various topics.
vasanthk / how-web-works
What happens behind the scenes when we type www.google.com in a browser?
How Web Works
What happens behind the scenes when we type google.com in a browser?
Table of Contents
- Google's 'g' key is pressed
- When you hit 'Enter'
- Parse the URL
- Check HSTS list (deprecated)
- DNS lookup
- Opening of a socket + TLS handshake
- HTTP protocol
- HTTP Server Request Handle
- Server Response
- Behind the scenes of the Browser
- The browser's high level structure
- Rendering Engine
- The Main flow
- Parsing Basics
- DOM Tree
- Render Tree
- Render tree's relation to the DOM tree
- CSS Parsing
- Layout
- Painting
- Trivia
Google's 'g' key is pressed
When you just press "g", the browser receives the event and the entire auto-complete machinery kicks into high gear. Depending on your browser's algorithm and if you are in private/incognito mode or not various suggestions will be presented to you in the dropbox below the URL bar. Most of theseā¦
7. The Algorithms
Clean, legible code with suitable comments in your preferred language can be found here. The community is fantastic and is quick to reply to any issues.
TheAlgorithms / JavaScript
Algorithms and Data Structures implemented in JavaScript for beginners, following best practices.
The Algorithms - JavaScript
JavaScript Repository of TheAlgorithms, which implements various algorithms and data structures in JavaScript.
These implementations are for demonstrative purposes only. Dedicated implementations of these algorithms and data structures are much better for performance and security reasons. We also do not provide any guarantee for api stability.
Before contributing to this repository, make sure to read our Contribution Guidelines. You can look at other TheAlgorithms Repositories or the issues with a "help wanted" label for inspiration regarding what to implement. Our maintainers will guide you through how to make your contribution properly if you make any mistakes. The names of the maintainers of this repository are listed in the CODEOWNERS file.
You can find a list of the algorithms currently in the repository in the directory. Explanations of many of the algorithms can be found in the wiki.
Thanks to all the contributors
ā¦8. The System Primer
This is a collection of internet-based materials and resourcesāthe repository's owner compiled resources and materials from many sources. Furthermore, the repository is updated regularly, so keep an eye on it!
donnemartin / system-design-primer
Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.
English ā ę„ę¬čŖ ā ē®ä½äøę ā ē¹é«äøę | Ų§ŁŲ¹ŁŲ±ŁŲØŁŁŁŁŲ©ā ā ą¦¬ą¦¾ą¦ą¦²ą¦¾ ā PortuguĆŖs do Brasil ā Deutsch ā ĪµĪ»Ī»Ī·Ī½Ī¹ĪŗĪ¬ ā ×¢××Ø××Ŗ ā Italiano ā ķźµģ“ ā ŁŲ§Ų±Ų³Ū ā Polski ā ŃŃŃŃŠŗŠøŠ¹ ŃŠ·ŃŠŗ ā EspaƱol ā ąø ąø²ąø©ąø²ą¹ąøąø¢ ā TĆ¼rkƧe ā tiįŗæng Viį»t ā FranƧais | Add Translation
Help translate this guide!
The System Design Primer
Motivation
Learn how to design large-scale systems.
Prep for the system design interview.
Learn how to design large-scale systems
Learning how to design scalable systems will help you become a better engineer.
System design is a broad topic. There is a vast amount of resources scattered throughout the web on system design principles.
This repo is an organized collection of resources to help you learn how to build systems at scale.
Learn from the open source community
This is a continually updated, open source project.
Contributions are welcome!
Prep for the system design interview
In additionā¦
9. Awesome Interview Questions
Excellent Interview Questions is a selected list of "amazing" interview questions that are frequently asked.
In many cases, the interviewer will ask you questions on the programming language in addition to the problem-solving questions. These ideas are crucial, and they show the interviewer how well you understand the programming language.
DopplerHQ / awesome-interview-questions
:octocat: A curated awesome list of lists of interview questions. Feel free to contribute! š
All your environment variables, in one place
This project is no longer actively supported.
A curated list of lists of technical interview questions.
What makes for an awesome list?
Please read the contribution guidelines or creating a list guide if you want to contribute.
Table of Contents
-
Programming Languages/Frameworks/Platforms
- Android
- AngularJS
- Angular
- BackboneJS
- C++
- C
- CāÆ
- .NET
- Clojure
- CSS
- Cucumber
- Django
- Docker
- Elastic
- EmberJS
- Erlang
- Golang
- GraphQl
- HTML
- Ionic
- iOS
- Java
- JavaScript
- jQuery
- Front-end build tools
- KnockoutJS
- Less
- Lisp
- NodeJS
- Objective-C
- PHP
- Python
- ReactJS
- Rails
- Ruby
- Rust
- Sass
- Scala
- Shell
- Spark
- Swift
- Vue.js
- Wordpress
- TypeScript
ā¦
10. Interview Resources
This repository offers a curated assortment of helpful articles, videos, manuals, websites, books, online courses, and more for anything relevant to technical or coding interviews.
Content
Found a dead link? Try archive.is or the Wayback Machine.
Algorithms
Books
- Jeff Erickson - Algorithms
- Steven Skiena ā The Algorithm Design Manual
- Udi Manber ā Introduction to Algorithms: A Creative Approach
- Cormen, Leiserson, Rivest, Stein ā Introduction to Algorithms
- Sedgewick, Wayne ā Algorithms
- Antti Laaksonen ā Competitive Programmer's Handbook
- Steven & Felix Halim ā Competitive Programming
- Jon Bentley ā Programming Pearls
- E-Maxx Algorithms
- vhf/free-programming-books
- it-ebooks.info
- S. Dasgupta, C. H. Papadimitriou, and U. V. Vazirani -Algorithms
Coding practice
-
LeetCode
- LeetCode w/ Explanations labuladong/fucking-algorithm
- InterviewBit
- Codility
- Intervue.io
- HackerRank
- Project Euler
- Spoj
- Google Code Jam practice problems
- HackerEarth
- Top Coder
- CodeChef
- Codewars
- CodeSignal
- CodeKata
- Firecode
- CoderPad
- Exercism
11. Learn Go
This repository is geared toward Go beginners. Before your Go developer interview, you can use this repository to review basic concepts and take some quizzes.
inancgumus / learngo
ā¤ļø 1000+ Hand-Crafted Go Examples, Exercises, and Quizzes. š Learn Go by fixing 1000+ tiny programs.
Get my book!
Go by Example: Programmer's guide to idiomatic and testable code.
š https://github.com/inancgumus/gobyexample
This book is what you need once you wrap up the exercises in this repository.
A Huge Number of Go Examples, Exercises and Quizzes
Best way of learning is doing. Inside this repository, you will find thousands of Go examples, exercises and quizzes. I initially created this repository for my Go: Bootcamp Course. Later on, I added a lot of exercises, and I wanted every programmer who is not yet enrolled in the course to learn for free as well. So here it is. Enjoy.
Available in the following languages:
ā¤ļø Help other fellow developers
Sharing is free but caring is priceless. So, now please click here and share this repository on Twitter.
Stay in touch
-
I usually tweet Go tipsā¦
12. clean-code-javascript
This repository serves as a reference for writing readable, reusable, and refactorable JavaScript code. It's based on Robert C. Martin's Clean Code, but it's been tweaked to work with JavaScript.
ryanmcdermott / clean-code-javascript
š Clean Code concepts adapted for JavaScript
clean-code-javascript
Table of Contents
- Introduction
- Variables
- Functions
- Objects and Data Structures
- Classes
- SOLID
- Testing
- Concurrency
- Error Handling
- Formatting
- Comments
- Translation
Introduction
Software engineering principles, from Robert C. Martin's book Clean Code, adapted for JavaScript. This is not a style guide. It's a guide to producing readable, reusable, and refactorable software in JavaScript.
Not every principle herein has to be strictly followed, and even fewer will be universally agreed upon. These are guidelines and nothing more, but they are ones codified over many years of collective experience by the authors of Clean Code.
Our craft of software engineering is just a bit over 50 years old, and we are still learning a lot. When software architecture is as old as architecture itself, maybe then we will have harder rules to follow. For now, let these guidelines serve as a touchstone by which to assess the quality of the JavaScriptā¦
13. JavaScript Questions
This is a beginner's level of difficulty. This repository provides many multiple-choice JavaScript questions that can be used to brush up on your knowledge of the language.
lydiahallie / javascript-questions
A long list of (advanced) JavaScript questions, and their explanations āØ
Note
This repo was created in 2019 and the questions provided here are therefore based on the JavaScript syntax and behavior at that time. Since JavaScript is a constantly evolving language, there are newer language features that are not covered by the questions here.
From basic to advanced: test how well you know JavaScript, refresh your knowledge a bit or prepare for your coding interview! šŖ š I update this repo regularly with new questions. I added the answers in the **collapsed sections** below the questions, simply click on them to expand it. It's just for fun, good luck! ā¤ļø
Feel free to reach out to me! š
Instagram || Twitter || LinkedIn || Blog
Feel free to use them in a project! š I would really appreciate a reference to this repo, I create the questions and explanations (yes I'm sad lol) and the community helps me
I hope you find these resources helpful š
I'd love to connect with you at Twitter | LinkedIn | GitHub | Portfolio
See you in my next blog article. Take care!!!
Top comments (22)
This post is GOLD. Than you so much!
You are welcome. I am glad you find it useful
Thanks so much for this.
It'd be very helpful.
You are welcome
This is very useful, Thanks
You are welcome
Thanks a lot !
This is super useful. Thanks a lot!
you are welcome
A lot of informations hereš„
Yeah, thanks for checking it out
Amazing one, bookmarked it.
Sick post bro
Thank you for your support and encouragement.
You are welcome
Awesome
Thank you, I'm glad you find it useful