🖥️
Sunil Notebook
Interview Preparation
  • 📒Notebook
    • What is this about ?
  • System Design
    • 💡Key Concepts
      • 🌐Scalability
      • 🌐Latency Vs Throughput
      • 🌐Databases
      • 🌐CAP Theorem
      • 🌐ACID Transactions
      • 🌐Rate limiting
      • 🌐API Design
      • 🌐Strong Vs eventual consistency
      • 🌐Distributed tracing
      • 🌐Synchronous Vs asynchronous Communication
      • 🌐Batch Processing Vs Stream Processing
      • 🌐Fault Tolerance
    • 💎Building Blocks
      • 🔹Message
      • 🔹Cache
      • 🔹Load Balancer Vs API Gateway
    • 🖥️Introduction to system design
    • ⏱️Step By Step Guide
    • ♨️Emerging Technologies in System Design
    • ☑️System design component checklist
      • 🔷Azure
      • 🔶AWS
      • ♦️Google Cloud
    • 🧊LinkedIn feed Design
    • 🏏Scalable Emoji Broadcasting System - Hotstar
    • 💲UPI Payment System Design
    • 📈Stock Broker System Design - Groww
    • 🧑‍🤝‍🧑Designing Instagram's Collaborative Content Creation - Close Friends Only
    • 🌳Vending Machines - Over the air Systems
    • Reference Links
  • DSA
    • Topics
      • Introduction
      • Algorithm analysis
        • Asymptotic Notation
        • Memory
      • Sorting
        • Selection Sort
        • Insertion Sort
        • Merge Sort
        • Quick Sort
        • Quick'3 Sort
        • Shell Sort
        • Shuffle sort
        • Heap Sort
        • Arrays.sort()
        • Key Points
        • Problems
          • Reorder Log files
      • Stacks and Queues
        • Stack Implementations
        • Queue Implementations
        • Priority Queues
        • Problems
          • Dijkstra's two-stack algorithm
      • Binary Search Tree
        • Left Leaning Red Black Tree
          • Java Implementations
        • 2-3 Tree
          • Search Operation - 2-3 Tree
          • Insert Operation - 2-3 Tree
        • Geometric Applications of BST
      • B-Tree
      • Graphs
        • Undirected Graphs
        • Directed Graphs
        • Topological Sort
      • Union Find
        • Dynamic Connectivity
        • Quick Find - Eager Approach
        • Quick Find - Lazy Approach
        • Defects
        • Weighted Quick Union
        • Quick Union + path comparison
        • Amortized Analysis
      • Convex Hull
      • Binary Heaps and Priority Queue
      • Hash Table vs Binary Search Trees
  • Concurrency and Multithreading
    • Introduction
    • Visibility Problem
    • Interview Questions
    • References
      • System design
  • Design Patterns
    • ℹ️Introduction
    • 💠Classification of patterns
    • 1️⃣Structural Design Patterns
      • Adapter Design Pattern
      • Bridge Design Pattern
      • Composite Design Pattern
      • Decorator Design Pattern
      • Facade Design Pattern
      • Flyweight Design Pattern
      • Private Class Data Design Pattern
      • Proxy Design Pattern
    • 2️⃣Behavioral Design Patterns
      • Chain Of Responsibility
      • Command Design Pattern
      • Interpreter Design Pattern
      • Iterator Design Pattern
      • Mediator Design Pattern
      • Memento Design Pattern
      • Null Object Design Pattern
      • Observer Design Pattern
      • State Design Pattern
      • Strategy Design Pattern
      • Template Design Pattern
    • 3️⃣Creational Design Patterns
      • Abstract Factory Design Pattern
      • Builder Design Pattern
      • Factory Method Design Pattern
      • Object Pool Design Pattern
      • Prototype Design Pattern
      • Singleton Design Pattern
    • Java Pass by Value or Pass by Reference
  • Designing Data-Intensive Applications - O'Reilly
    • Read Me
    • 1️⃣Reliable, Scalable, and Maintainable Applications
      • Reliability
      • Scalability
      • Maintainability
      • References
    • 2️⃣Data Models and Query Languages
      • Read me
      • References
    • Miscellaneous
  • Preparation Manual
    • Disclaimer
    • What is it all about?
    • About a bunch of links
    • Before you start preparing
    • Algorithms and Coding
    • Concurrency and Multithreading
    • Programming Language and Fundementals
    • Best Practices and Experience
  • Web Applications
    • Typescript Guidelines
  • Research Papers
    • Research Papers
      • Real-Time Data Infrastructure at Uber
      • Scaling Memcache at Facebook
  • Interview Questions
    • Important links for preparation
    • Google Interview Questions
      • L4
        • Phone Interview Questions
      • L3
        • Interview Questions
      • Phone Screen Questions
  • Miscellaneous
    • 90 Days Preparation Schedule
    • My Preparation for Tech Giants
    • Top Product Based Companies
  • Links
    • Github
    • LinkedIn
Powered by GitBook
On this page
  • Before you start preparing
  • Books
  • Links and Articles

Was this helpful?

Edit on GitHub
  1. Preparation Manual

Before you start preparing

PreviousAbout a bunch of linksNextAlgorithms and Coding

Last updated 3 years ago

Was this helpful?

Before you start preparing

Effective preparation involves several things. Some of them are pretty obvious and are generally known - first you need to get an idea of what you need to study in general, approximately get an understanding of the front of the work and maybe even write some rough plan preparation that fits into the allotted time.

Here I just want to say that it is necessary - necessary !!!! - set yourself pretty hard deadline. Ideally, apply to a company from your list (about companies and the list below), and agree that the interview will not take place immediately, but, say, in a month or two or three. In case of emergency plan hard when you start submitting your resume. Do not under any circumstances prepare for the principle "when I know everything and I am 100% sure, then I will submit" - so you will not send never, and you will hardly prepare thoroughly.

But there is one more important factor that must be mentioned. Namely, the process itself preparation, and how to prepare most effectively. Lucky for us, the topic of effective learning pretty well researched and we don't have to reinvent the wheel. So before you start prepare, be sure to learn how to prepare most effectively. This will save you a lot of time and you can prepare a lot better.

Your task here - to learn and dive into the task entry in a ... Get ready for something that will be difficult at first, but in about a month of persistent attempts you will master this skill and we are very grateful to ourselves for that.

The second task is to enter the desired emotional state. To be more precise, then you you need to believe in yourself, in your goal and in the fact that everything is achievable. You need to clearly understand why you are are going to spend a lot of time preparing and subject yourself to some stress.

Write these reasons down on paper and read them each time you start preparing. Put yourself a 30 days challenge - for example, every day solve at least 5 problems for algorithms (or how many in your situation is possible). Try to measure your progress. Take it as fateful the moment, the turn of your destiny, when everything should change 180 degrees for the better, and now you need to work for this.

Remember that preparing and getting an offer from a dream company is a marathon. It's not about how smart you are, what is your IQ, and how much experience you have in solving Olympiad problems. This is about how much this goal has settled inside you, about intrinsic motivation. And how good you are prepared.

If you have a "low start" - little experience, not very strong knowledge - then this only means that you have to work hard and learn a lot. It won't be easy, you will want it many times quit everything. You will learn not only about sorts, coding, and mutexes, but also to some extent look inside yourself, into your desires, fears, fatigue, irritation. Maybe you even you will cry, considering yourself a hopeless bastard. It will pass, and at the very end it will remain very valuable experience. And, perhaps, a great offer from a dream company.

But that's all - if you can stand it. And in order to withstand, you really need this want, want to change your life and challenge yourself. So take a look inside yourself and see - are you ready?

Books

Links and Articles

state of flux
"Peak: Secrets from the New Science of Expertise"
"Deep Work: Rules for Focused Success in a Distracted World"
"So Good They Can't Ignore You: Why Skills Trump Passion in the Quest for Work You Love"
"Accelerated Learning Techniques for Students: Learn More in Less Time"
"The Power of Habit: Why We Do What We Do in Life and Business"
10 effective strategies to increase productivity
What little habits made you a better software engineer