Skip to content

Latest commit

 

History

History
17 lines (9 loc) · 1.95 KB

target.md

File metadata and controls

17 lines (9 loc) · 1.95 KB

Topics For MCQ Test & Interview:

  1. Programming Language - At least one (Preferably Java/C++ (any one), Python (if possible). Java/C++ is needed to understand complex tracing or OOP questions. Python is suitable for when coding on your own because of concise syntax. If you learn one language well enough to code by yourself and can improvise if code snippets written in other languages are given, you are good to go. * Do not forget Bitwise Operators *

  2. Object Oriented Programming and Design. 4 Pillars of OOP. Only theoretical knowledge is not enough try to think about real-life applications and trade-offs.

  3. Data Structures and Algorithms. Array, Linked List, Stack, Queue, Tree, Binary Tree for the basics. If possible, go for Heap, HashMap, Trie, B-Tree and other advanced topics. 🏃🏻

  4. Algorithms. Linear and Binary Search, 5 Sorting Algorithms (Without HeapSort), BFS, DFS, Tree Traversal, Bit Manipulation. For later rounds, Sieve, Greedy and Dynamic Programming.

  5. Networking. OSI Model, Subnetting, Different protocols (HTTP is the most important, try to learn ins and outs of it including methods, status codes, caching, cookies, authentication and so on), REST Architecture, RESTful APIs

  6. Software Engineering. Architectural Patterns (Basic Knowledge is enough), Design Principles (SOLID, DRY, KISS), Design Patterns (All Creational pattern plus a few other important ones if possible). For later stages, Composition, Dependency Injection, Inversion of Control and some other advanced ones (Google it).

  7. Databases. (SQL vs NOSQL, ACID vs BASE, N+1 Query Problem, DB Normalization, Index, Replication (different types) vs Sharding, ORM vs Raw SQL queries.

For MCQ, Try to solve some basic Leetcode problems (Preferably easy ones from Neetcode.io). For later stages, at least 100 problem from Neetcode 150 on Neetcode.io. Focus on Array, HashMap, Two Pointers, Sliding Window, Binary Search, Linked Lists, BFS/DFS, Strings, Bit Manipulation, Greedy, 1D DP.