Over the last couple of years, I have been creating some Interview Study Guides that have helped both improve my coding/technical skills and prepare for interviews in top tech companies. Since I believe these guides might be useful for others I have decided to publish them.
All the guides are free and released under CC-Attribution-ShareAlike License.
All the guides are a work in progress and open for improvements. You can download all the guides from here.
NEW: if you prefer video over text, then don't miss my Youtube Playlist "Before the technical interview" where I cover all the topics presented on these guides (and many others).
Below is a brief summary of each of the guides.
Computer Science Fundamentals
As the name implies, this guide provides a summary of Computer Science Fundamentals, including:
- Data Structures
- Algorithms
- Complexity Analysis
- Mathematics and Probability
- Regular Expressions
- Threads and Locks
I find it useful to quickly review different algorithms and as cheatsheet for different CS courses, and most of the interviews at Google, Facebook, LinkedIn, Amazon, and other big tech companies, will make a big emphasis on these topics.
You can download this guide clicking here.
This guide will help you have the concept to solve typical problems like Finding the largest BST in a tree.
Software Development and Architecture
This guide compiles higher level topics like:- Object Oriented Design
- Service Oriented Architectures (SOAP and REST)
- Scalability and Networking
- Front End Development
- How do browsers work
- How to speed up websites
- ...and more!
- Frameworks (specifically Spring)
- Databases
- Cracking the Coding Interview.
- Head's First Object Oriented Analysis and Design.
- Java Web Services Up and Running.
- Java SOA Cookbook.
You can download this guide clicking here.
Code Snippets
This guide is the shortest. It includes short descriptions and code snippets from programming languages I have had some experience with (even if only during a course in college). The code snippets are commented with syntax explanation. The languages in the guide include:- Ruby
- Javascript
- PHP
- Prolog
- Haskell
- C/C++
Additional Resources
There are a lot of free resources on the Internet you can learn from:- Here's a summary of most Software Development topics that you learn in college, and works great as quick refresher:https://github.com/jwasham/coding-interview-university
- A list of sites where you can practice coding: http://programmingzen.com/15-sites-for-programming-exercises/
Disclaimer
I (Christian Vielma) have personally created these guides for personal use, to be used as a reference for technical interviews, work, and study. Since I believe these documents might provide value to others, I have decided to make them public.Most of the contents on these documents have been added from different sources, from freely available resources on the Internet, to books, with additional added content from me. I made my best effort to provide full credit to the original sources, and in no way I'm trying to take advantage of improper quotations. If you believe I have made an invalid reference to a resource, please let me know and I'll fix it.
I provide these guides as-is, with no additional guarantees. I'm also releasing it under CC-Atribution-ShareAlike License, so you are free to extend it and update it with proper attribution.
Enjoy!
(*) Disclaimer 2:
As an Amazon Associate I earn from qualifying purchases. Links referring to Amazon are still books that I personally recommend (not sponsored) but I might receive money based on clicks or purchases. There might also be some ads on the sides or between posts are those are placed by Google based on their recommendations (not endorsed by me).
Big-Oh
Computer Science
English
Interviews
Java
Programming
Study

