This is a collection of resources for interview preparation and job search for software engineers, SREs, and DevOps professionals.
This was created along with an article on job search tips and interview preparation which is available online at http://ranton.org/g/software_eng_job_searches.
Feel free to send a pull request or open an issue if you have feedback or want to contribute a new resource.
- https://jamesclear.com/goals-systems
- This is an article by James Clear, author of Atomic Habits, which I also recommend.
- https://www.linkedin.com/pulse/goal-setting-vs-system-setting-identity-setting-kerry-secrest/
- This is a related short article on the different effects of goals, systems, and self-identification.
- https://modelthinkers.com/mental-model/systems-vs-goals
- And yet another.
- https://steve-yegge.medium.com/get-that-job-at-grab-eea6de1d8421
- I found this while searching for Yegge’s Google interview advice I read before interviewing at Google (and getting hired) in 2013.
- It’s quite interesting and useful.
- It actually predicts the hiring “market correction” from 2018 which is a sad way to be accurate.
- The older version of his advise I read of this was https://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html
- Which led me to get a copy of The Algorithm Design Manual by Skiena which turned out to be one of my favorite books.
- https://algodaily.com/blog/managing-your-career-in-a-downturn
- https://techdevguide.withgoogle.com/
- This guide by Google has a lot of relevant material for career development, including interview prep, data structures & algorithms, and software engineering principles.
- https://www.reddit.com/r/cscareerquestions/comments/1jov24/heres_how_to_prepare_for_tech_interviews/
- https://www.interviewcake.com/coding-interview-tips
- Despite the URL and title, this is not all about the coding question.
- https://www.themuse.com/advice/beat-the-robots-how-to-get-your-resume-past-the-system-into-human-hands
- https://www.capitalonecareers.com/6-resume-tips-from-a-tech-recruiter-cdev-101
- https://www.indeed.com/career-advice/resumes-cover-letters/technical-resume-tips
- https://www.themuse.com/advice/how-to-make-sure-your-resume-is-as-current-as-your-skills
-
https://github.com/donnemartin/system-design-primer
- I recommend starting with this one.
-
https://algodaily.com/sections/systems-design
- This one has a good broad set of system design topics.
- This company has lessons, tutorials, and courses online, including some free resources.
-
Kleppmann, M. (2017). Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems. United States: O'Reilly Media.
- This book is one of my all time favorites.
-
https://github.com/madd86/awesome-system-design
- Curated, large list of resources.
-
https://www.distributed-systems.net/index.php/books/ds4/
- This is a book that you can get free online (or order).
- The author also has some slides and notes from a course.
-
https://www.amazon.com/System-Design-Interview-Insiders-Guide-ebook/dp/B08B3FWYBX
-
https://ocw.mit.edu/courses/6-033-computer-system-engineering-spring-2018/pages/week-8/
-
Videos
-
Seven (7) Essential Data Structures for a Coding Interview and associated common questions
- This Medium article from Towards Data Science (one of my favorite online places to find articles) is good for a quick summary or review.
-
I recommend the Algorithm Design Manual by Skiena (listed in references)
-
https://www.geeksforgeeks.org/top-10-algorithms-in-interview-questions/
- This is a more in depth article online if you don’t want to read/invest in a book.
Both of these articles have example coding questions by category.
- https://medium.com/javarevisited/50-data-structure-and-algorithms-interview-questions-for-programmers-b4b1ac61f5b0
- https://hackernoon.com/50-data-structure-and-algorithms-interview-questions-for-programmers-b4b1ac61f5b0
- https://en.wikipedia.org/wiki/Software_design_pattern (or see Design Patterns “Gang of Four” book by Gamma et. al. listed in references).
- https://martinfowler.com/books/refactoring.html
- SOLID Principles
- Clean Code Summary, Another Clean Code Summary (or see the full book listed in references)
- I recommend Cracking the Coding Interview book (listed in references) for practice coding problems, and a pretty good way to do DS/Algo review.
- https://rosettacode.org/wiki/Rosetta_Code
- https://exercism.org/
- https://projecteuler.net/
- https://www.hackerrank.com
- https://leetcode.com/
- Also a curated guide to specific LeetCode questions
- https://www.codewars.com/
- https://www.pramp.com/
- This is a free platform that pairs peers up to interview each other. https://www.pramp.com/faq#/users/so-what-is-pramp? This is actually similar to how I practiced during interview training provided by Amazon and Google. Take turns interviewing and being interviewed by your partner.
- https://interviewing.io/
- Free mock interviews. I do not have experience with this personally but of the ones I know of it looks relatively legit.
- They have recorded mock interviews by others you can watch.
- https://medium.com/better-code-and-life/5-super-helpful-programming-mock-interviews-platforms-6f01c829f3f4
- Describes platforms where you can do mock interviews (most for $ money)
- https://www.gremlin.com/site-reliability-engineering/the-role-and-responsibilities-of-sres-in-software-engineering/#what-does-an-sre-team-do
- https://aws.amazon.com/builders-library/
- Petoff, J., Beyer, B., Murphy, N. R., Jones, C. (2016). Site Reliability Engineering: How Google Runs Production Systems. United States: O'Reilly Media.
- This is available free online.
- https://dev.to/ankit01oss/3-fundamental-monitoring-methods-essential-for-every-devops-engineer-4a5i
- Covers basics of USE, RED, and 4-Golden Signals methodologies for monitoring.
- https://www.infoq.com/articles/anatomy-cascading-failure/
- https://postmortems.pagerduty.com/culture/blameless/
- https://aws.amazon.com/architecture/well-architected/
- https://www.usenix.org/conference/srecon16europe/program/presentation/rabenstein
- Discusses alerting on distributing systems on symptoms vs. causes.
- https://algodaily.com/lessons/how-to-prepare-for-a-technical-interview
- https://www.glassdoor.com/blog/guide/the-ultimate-job-interview-preparation-guide/
- https://www.techinterviewhandbook.org/
- https://www.coursera.org/learn/cs-tech-interview#syllabus
- Have not tried this, but has positive reviews and the syllabus makes sense.
- https://www.glassdoor.com/blog/common-interview-questions/
- https://sites.google.com/site/steveyegge2/five-essential-phone-screen-questions
- STAR Method (Situation, Task, Action, Results)
- https://nationalcareers.service.gov.uk/careers-advice/interview-advice
- Amazon
- Asana
- Meta
- Microsoft
- Netflix
- https://www.codinginterview.com/ has interview guides by company