Skip to content

Everything you need to know for a Software Engineering interview

License

Notifications You must be signed in to change notification settings

prshntsuyl/preparation

 
 

Repository files navigation

TOC

Software Engineering Interview Preparation | Current

See this post and this for more background and tips on preparing for an interview.

Blueprint to cover
      “Recall is the key”
  • DSA/Algos
    • Discrete mathematics
    • Algorithms
    • Basics
  • Design
    • Primer
    • Grokking
  • Practics Questions
    • Complete 200 questions
    • Do experienced questions

Sub-TOC

  • Algorithms Coursera
  • Discrete Mathematics Coursera
  • Educative courses | Courses
    • Scalability
      • Web application
      • Microservice/Mircroservices Architecture
      • Grokking system design
  • Book List
    • Design book
      • Kafka
    • Guides
      • Elements
  • Programming and DSA

————————————————————————————————————

Check this flow :

flow

Start from SUMMARY (or see below). It's also available in GitBook format for easier reading and navigation.

A.1 Topics

Crash Course!

A.2 Topics

Jet Brains!

Hyperskills jetbrains

  • java: 20/22
    • design patterns
    • functional programming
  • algorithms
    • graphs
  • essentials
  • devtools
  • databases
  • maths

B.1 More to follow

B.2 Practice questions

Key pointers specific to leetcode: 1. Pick a topic and solve problems with that. Do not move to a different topic before finishing it. 2. Solve Easy, Medium & Hard problems in 3:6:1 ratio (3:5:2 is also recommended). 3. Solve Easy problems by sorting them on two factors

C.1 Last Stage

C.2 Practice more questions

  • Experienced Practice questions

C.3 Nice to have

  • Data Science skills
  • ML skills
  • Educative courses
    • Track-1 : Must
    • Track-2 : Nice to have

D.1 Complete Knowledge

D.2 Books to read

Clean Architecture by Robert Martin
  • Introduction
    • Chapter 1
    • Chapter 2
    • Chapter 3
    • Chapter 4
    • Chapter 12
    • Chapter 13
    • Chapter 14
    • Chapter 15
    • Chapter 15
  • Details
    • Chapter 30
    • Chapter 31
    • Chapter 32
    • Chapter 33
    • Chapter 34
  • Programming Paradigms
  • Design Principles
  • Component Principles
  • Architecture
  • Details
Building Microservices by Sam Newman
  • Chapter 1: Microservices
  • Chapter 2: Evolution Architecture
  • Chapter 3: How to model services
  • Chapter 4: Integration
  • Chapter 12
  • Chapter 13
CTCI
Concurrent Programming
  • Fundamentals of Software Architecture: Mark Richards & Neal Ford
  • Distributed systems
  • Kafka an Internal Guide
  • IT Architect
  • Designing data intensive applications
  • Big data
  • Design and Analysis

D.2 Guides to read

Elements of Programming in Java
  • Chapter 1
  • Chapter 2
  • Chapter 3
  • Chapter 4
  • Part III: Domain Specific
    • Chapter 24: Common Tools
Programming Interview Exposed
Grokking Algorithms
  • Guide to competitive programming
  • CTCI
  • Grokking Algorithms

E Courses

Courses to cover

Algorithms Coursera | Part I

  • Week 1
  • Week 2
  • Week 3
  • Week 4
  • Week 5
  • Week 6

Algorithms Coursera | Part II

  • Week 1
  • Week 2
  • Week 3
  • Week 4
  • Week 5
  • Week 6

Discrete Mathematics | Link

  • Mathematical Thinking in Conputer Science
  • Combinatrorics and Probability
  • Introduction to Graph Theory
  • Number theory and Cryptography
  • Delivery Problem

Software Design And Architecture | Link

  • OOPs
  • Design Patterns
  • Software Architectures
  • SOAs

REMEBER: Completing this is enough and after this you dont need any further contenet-

About

Everything you need to know for a Software Engineering interview

Resources

License

Stars

Watchers

Forks

Languages

  • Jupyter Notebook 99.3%
  • Other 0.7%