A list of resources that I’m using to prepare for coding interviews as well as some of my ongoing projects.
Technical Coding Interview
LeetCode Lists
DS & A
Necessary Books
- Cracking the Coding Interview (CTCI)
- Elements of Programming Interviews (EPI C++)
- Algorithm Desing Manual (Skiena)
- Introduction to Algorithms (CLRS)
Google Specific
- Dan D Kim Google Interview
- Get that job at Google
Resources
Intro
Best Practices
- The Pragmatic Programmer
- Clean Code, by Robert C Martin (Uncle Bob)
- Code Complete, by Steve McConnell
Vim
Git
- Atlassian Git workflow
- Choose your own adventure
- Making sense of Git and GitHub
- Undo anything with Git
- Pro code
- try, learning resources
- Git Magic
Verilog/FPGA/Embedded
- Embedded Linux
- Building a Gameboy from scratch
- nand2tetris
- Interview Questions
- Entry Level Embedded Software Guide
- Great Scott Youtube
- Jay Carlson How I Teach Embedded Systems
- Bare metal C
- Code by Charles Petzold
- Malvino, Digital Computer Electronics
- Patterson and Hennesy, Structured Computer Organization
- Ashenden, VHDL
- EE Fundamentals
Linux
- Linux kernel coding style
- https://dotfiles.github.io/
- terminal.sexy
C/C++
- K&R, The C Programming Language
- Reek, Pointers on C
- Gustedt, Modern C
- C/C++ Style Guides
- To Becom a Good C Programmer
Computer Networking
Web Dev
Emacs
Game Dev
- Monogame tutorials
- Interviewing for Game Design (Video)
- Naughty Dog Interview
- Handmade Quake
- Beginning Game Programming SDL
Machine Learning
- Dive into Deep Learning
- NYU Foundations of ML
- Machine Learning in Embedded World
- ML Math
- Cornell CS4780
- Andrew Ng ML Coursera grader
Startup
Misc
- Comprehensive internship guide
- BrainToBytes Advice for new developers
- BrainToBytes Recommended Books
- Source code classics
- General advice for bay area hires
- General resume tips
- csq Master list of free resources
- Snaptoken tutorials for text editor
- Coding Train Youtube Channel
- Tensor Programming Youtube