Appendix M: Company-wise Preparation
Preparation strategies and commonly asked topics for top tech companies.
General Tips for All Companies
- Research the company — understand their products, culture, and recent news
- Know the interview format — number of rounds, duration, focus areas
- Practice on the company’s tagged problems — LeetCode has company-specific problem lists
- Prepare behavioral stories — most companies ask behavioral questions
- Practice system design — for senior roles, system design is crucial
- Mock interviews — practice with the company’s style in mind
Interview Style
- Rounds: 2 phone screens + 4-5 onsite (or virtual)
- Focus: Problem-solving ability, coding skills, Googleyness
- Difficulty: Medium to Hard
- Unique: Strong emphasis on clean code and edge cases
Common Topics
- Arrays & Strings (very frequent)
- Trees & Graphs (very frequent)
- Dynamic Programming (frequent)
- System Design (for L5+)
- Recursion & Backtracking
Frequently Asked Problems
- Longest Increasing Subsequence
- Number of Islands
- Course Schedule
- Merge Intervals
- Word Ladder
- Serialize/Deserialize Binary Tree
- Trapping Rain Water
- Alien Dictionary
Tips
- Google loves clean, readable code — don’t write hacky solutions
- Test your code thoroughly — Google interviewers expect you to find bugs
- Discuss multiple approaches — show your thought process
- Ask clarifying questions — Google interviewers appreciate this
- Be prepared for follow-ups — they often add constraints
Amazon
Interview Style
- Rounds: 1 phone screen + 4-5 onsite (or virtual)
- Focus: Leadership Principles (LP), coding, system design
- Difficulty: Medium
- Unique: Heavy emphasis on Leadership Principles
Leadership Principles (Must Know)
- Customer Obsession
- Ownership
- Invent and Simplify
- Are Right, A Lot
- Learn and Be Curious
- Hire and Develop the Best
- Insist on the Highest Standards
- Think Big
- Bias for Action
- Frugality
- Earn Trust
- Dive Deep
- Have Backbone; Disagree and Commit
- Deliver Results
- Strive to be Earth’s Best Employer
- Success and Scale Bring Broad Responsibility
Common Topics
- Arrays & Strings (very frequent)
- Trees & Graphs (frequent)
- Dynamic Programming (moderate)
- System Design (for SDE2+)
- OOP Design
Frequently Asked Problems
- Two Sum
- LRU Cache
- Number of Islands
- Merge Intervals
- Top K Frequent Elements
- Critical Connections in a Network
- Reorder Data in Log Files
- Optimal Utilization
Tips
- Prepare 2-3 STAR stories for each LP — this is critical
- Use the STAR method — Situation, Task, Action, Result
- Be specific — use numbers and details
- Connect your answers to LPs — explicitly mention which LP you’re demonstrating
- Practice system design — Amazon asks it for most levels
Microsoft
Interview Style
- Rounds: 1-2 phone screens + 4-5 onsite (or virtual)
- Focus: Problem-solving, coding, design
- Difficulty: Medium
- Unique: Collaborative culture, “growth mindset”
Common Topics
- Arrays & Strings (very frequent)
- Trees & Graphs (frequent)
- Linked Lists (moderate)
- Dynamic Programming (moderate)
- System Design (for senior roles)
Frequently Asked Problems
- Reverse Linked List
- LRU Cache
- Number of Islands
- Merge Intervals
- Design Tic-Tac-Toe
- Longest Substring Without Repeating Characters
- Serialize/Deserialize Binary Tree
- Meeting Rooms II
Tips
- Show collaboration — Microsoft values teamwork
- Discuss trade-offs — show you think about alternatives
- Be open to hints — Microsoft interviewers often give hints
- Practice design questions — even for junior roles
- Show growth mindset — talk about learning from failures
Meta (Facebook)
Interview Style
- Rounds: 1-2 phone screens + 4-5 onsite (or virtual)
- Focus: Coding, system design, behavioral
- Difficulty: Medium to Hard
- Unique: Strong emphasis on “Move Fast” culture
Common Topics
- Arrays & Strings (very frequent)
- Trees & Graphs (very frequent)
- Dynamic Programming (frequent)
- System Design (for E5+)
- Recursion & Backtracking
Frequently Asked Problems
- Valid Palindrome
- Product of Array Except Self
- Minimum Remove to Make Valid Parentheses
- Binary Tree Vertical Order Traversal
- Buildings With an Ocean View
- Dot Product of Two Sparse Vectors
- Random Pick with Weight
- Merge Intervals
Tips
- Move fast — Meta values speed and efficiency
- Write clean code quickly — don’t overthink
- Test your code — but don’t spend too long on testing
- Discuss scalability — Meta cares about scale
- Show impact — talk about the impact of your work
Apple
Interview Style
- Rounds: 1-2 phone screens + 4-5 onsite (or virtual)
- Focus: Problem-solving, coding, design, culture fit
- Difficulty: Medium to Hard
- Unique: Secrecy, attention to detail
Common Topics
- Arrays & Strings (very frequent)
- Trees & Graphs (frequent)
- Dynamic Programming (moderate)
- System Design (for senior roles)
- Low-level design
Frequently Asked Problems
- Two Sum
- Merge Intervals
- Lowest Common Ancestor
- Design a Parking Lot
- Serialize/Deserialize Binary Tree
- Longest Palindromic Substring
- Word Search
- Implement Trie
Tips
- Attention to detail — Apple values precision
- Show passion for products — know Apple’s products
- Discuss user experience — Apple cares about UX
- Be prepared for design questions — even for coding roles
- Show craftsmanship — take pride in your code quality
Adobe
Interview Style
- Rounds: 1-2 phone screens + 3-4 onsite (or virtual)
- Focus: Problem-solving, coding, design
- Difficulty: Medium
- Unique: Creative and document-focused
Common Topics
- Arrays & Strings (very frequent)
- Trees & Graphs (frequent)
- Dynamic Programming (moderate)
- OOP Design
- System Design (for senior roles)
Frequently Asked Problems
- Two Sum
- Longest Substring Without Repeating Characters
- Merge Intervals
- Number of Islands
- Design a File System
- LRU Cache
- Word Break
- Serialize/Deserialize Binary Tree
Tips
- Know Adobe’s products — PDF, Photoshop, etc.
- Practice OOP design — Adobe asks design questions
- Discuss scalability — Adobe handles large documents
- Show creativity — Adobe values creative thinking
Atlassian
Interview Style
- Rounds: 1 phone screen + 4-5 onsite (or virtual)
- Focus: Problem-solving, coding, values
- Difficulty: Medium to Hard
- Unique: Values-driven company
Common Topics
- Arrays & Strings (frequent)
- Trees & Graphs (frequent)
- Dynamic Programming (moderate)
- System Design (for senior roles)
- Values-based questions
Frequently Asked Problems
- Number of Islands
- Merge Intervals
- LRU Cache
- Word Ladder
- Course Schedule
- Design a Notification System
- Implement Trie
- Top K Frequent Elements
Tips
- Know Atlassian’s values — Open Company, No Bullshit
- Practice system design — Atlassian asks for most levels
- Show collaboration — Atlassian values teamwork
- Be transparent — Atlassian values openness
Oracle
Interview Style
- Rounds: 1-2 phone screens + 3-4 onsite (or virtual)
- Focus: Problem-solving, coding, SQL, design
- Difficulty: Medium
- Unique: Database-focused
Common Topics
- Arrays & Strings (frequent)
- Trees & Graphs (moderate)
- SQL (very important)
- OOP Design
- System Design (for senior roles)
Frequently Asked Problems
- Two Sum
- Merge Intervals
- Longest Substring Without Repeating Characters
- Number of Islands
- Design a Database
- SQL queries
- LRU Cache
- Word Break
Tips
- Know SQL well — Oracle is a database company
- Practice SQL queries — joins, subqueries, aggregations
- Discuss data modeling — Oracle cares about data
- Show technical depth — Oracle values deep expertise
NVIDIA
Interview Style
- Rounds: 1-2 phone screens + 4-5 onsite (or virtual)
- Focus: Problem-solving, coding, low-level systems
- Difficulty: Medium to Hard
- Unique: GPU, parallel computing, hardware-aware
Common Topics
- Arrays & Strings (frequent)
- Bit Manipulation (important)
- Parallel algorithms
- Memory management
- System Design (for senior roles)
Frequently Asked Problems
- Two Sum
- Matrix Rotation
- Bit Manipulation problems
- Parallel Prefix Sum
- CUDA-related questions
- LRU Cache
- Design a GPU Scheduler
- Memory allocation problems
Tips
- Know GPU architecture — CUDA, parallel computing
- Practice bit manipulation — NVIDIA loves these
- Discuss memory efficiency — NVIDIA cares about performance
- Show hardware awareness — understand cache, memory hierarchy
Qualcomm
Interview Style
- Rounds: 1-2 phone screens + 3-4 onsite (or virtual)
- Focus: Problem-solving, coding, embedded systems
- Difficulty: Medium
- Unique: Hardware/software integration
Common Topics
- Arrays & Strings (frequent)
- Bit Manipulation (important)
- Embedded systems concepts
- Memory management
- System Design (for senior roles)
Frequently Asked Problems
- Two Sum
- Bit Manipulation problems
- String compression
- Memory allocation
- Design a Buffer
- LRU Cache
- Reverse Linked List
- Implement strstr
Tips
- Know embedded systems — real-time, resource constraints
- Practice bit manipulation — Qualcomm loves these
- Discuss memory efficiency — embedded systems have limited memory
- Show hardware awareness — understand processors, memory
Salesforce
Interview Style
- Rounds: 1-2 phone screens + 3-4 onsite (or virtual)
- Focus: Problem-solving, coding, design
- Difficulty: Medium
- Unique: CRM-focused, cloud computing
Common Topics
- Arrays & Strings (frequent)
- Trees & Graphs (moderate)
- Dynamic Programming (moderate)
- System Design (for senior roles)
- OOP Design
Frequently Asked Problems
- Two Sum
- Merge Intervals
- Number of Islands
- LRU Cache
- Design a CRM System
- Word Break
- Serialize/Deserialize Binary Tree
- Top K Frequent Elements
Tips
- Know Salesforce’s products — CRM, cloud platform
- Practice system design — Salesforce asks for most levels
- Discuss multi-tenancy — Salesforce is multi-tenant
- Show customer focus — Salesforce values customer success
Walmart (Walmart Global Tech)
Interview Style
- Rounds: 1-2 phone screens + 3-4 onsite (or virtual)
- Focus: Problem-solving, coding, design
- Difficulty: Medium
- Unique: Retail/e-commerce focus
Common Topics
- Arrays & Strings (frequent)
- Trees & Graphs (moderate)
- Dynamic Programming (moderate)
- System Design (for senior roles)
- Scalability
Frequently Asked Problems
- Two Sum
- Merge Intervals
- Number of Islands
- LRU Cache
- Design an E-commerce System
- Word Break
- Top K Frequent Elements
- Meeting Rooms II
Tips
- Know Walmart’s scale — massive data, high availability
- Practice system design — Walmart asks for most levels
- Discuss scalability — Walmart handles huge traffic
- Show practical thinking — Walmart values practical solutions
Goldman Sachs
Interview Style
- Rounds: 1-2 phone screens + 3-4 onsite (or virtual)
- Focus: Problem-solving, coding, finance knowledge
- Difficulty: Medium to Hard
- Unique: Finance-focused, math-heavy
Common Topics
- Arrays & Strings (frequent)
- Dynamic Programming (frequent)
- Probability & Statistics
- System Design (for senior roles)
- Finance-related problems
Frequently Asked Problems
- Two Sum
- Merge Intervals
- Longest Increasing Subsequence
- Coin Change
- Design a Trading System
- Probability problems
- LRU Cache
- Word Break
Tips
- Know finance basics — trading, risk management
- Practice probability — Goldman Sachs loves probability questions
- Discuss low latency — trading systems need speed
- Show analytical thinking — Goldman values analytical skills
JPMorgan Chase
Interview Style
- Rounds: 1-2 phone screens + 3-4 onsite (or virtual)
- Focus: Problem-solving, coding, finance knowledge
- Difficulty: Medium
- Unique: Banking/finance focus
Common Topics
- Arrays & Strings (frequent)
- Trees & Graphs (moderate)
- Dynamic Programming (moderate)
- System Design (for senior roles)
- OOP Design
Frequently Asked Problems
- Two Sum
- Merge Intervals
- Number of Islands
- LRU Cache
- Design a Banking System
- Word Break
- Serialize/Deserialize Binary Tree
- Meeting Rooms II
Tips
- Know banking basics — accounts, transactions, regulations
- Practice system design — JPMorgan asks for most levels
- Discuss security — banking systems need security
- Show attention to detail — banking requires precision
Visa
Interview Style
- Rounds: 1-2 phone screens + 3-4 onsite (or virtual)
- Focus: Problem-solving, coding, payment systems
- Difficulty: Medium
- Unique: Payment processing focus
Common Topics
- Arrays & Strings (frequent)
- Trees & Graphs (moderate)
- Dynamic Programming (moderate)
- System Design (for senior roles)
- Scalability
Frequently Asked Problems
- Two Sum
- Merge Intervals
- Number of Islands
- LRU Cache
- Design a Payment System
- Word Break
- Top K Frequent Elements
- Meeting Rooms II
Tips
- Know payment systems — transactions, fraud detection
- Practice system design — Visa asks for most levels
- Discuss scalability — Visa handles massive transaction volume
- Show security awareness — payment systems need security
Cisco
Interview Style
- Rounds: 1-2 phone screens + 3-4 onsite (or virtual)
- Focus: Problem-solving, coding, networking
- Difficulty: Medium
- Unique: Networking-focused
Common Topics
- Arrays & Strings (frequent)
- Trees & Graphs (frequent)
- Networking concepts
- System Design (for senior roles)
- OOP Design
Frequently Asked Problems
- Two Sum
- Merge Intervals
- Number of Islands
- LRU Cache
- Design a Network Router
- Word Break
- Serialize/Deserialize Binary Tree
- Graph problems
Tips
- Know networking basics — TCP/IP, routing, protocols
- Practice graph problems — networking is graph-heavy
- Discuss distributed systems — Cisco deals with distributed networks
- Show systems thinking — Cisco values systems-level understanding
Intuit
Interview Style
- Rounds: 1-2 phone screens + 3-4 onsite (or virtual)
- Focus: Problem-solving, coding, design
- Difficulty: Medium
- Unique: Financial software (TurboTax, QuickBooks)
Common Topics
- Arrays & Strings (frequent)
- Trees & Graphs (moderate)
- Dynamic Programming (moderate)
- System Design (for senior roles)
- OOP Design
Frequently Asked Problems
- Two Sum
- Merge Intervals
- Number of Islands
- LRU Cache
- Design a Tax System
- Word Break
- Serialize/Deserialize Binary Tree
- Meeting Rooms II
Tips
- Know Intuit’s products — TurboTax, QuickBooks, Mint
- Practice system design — Intuit asks for most levels
- Discuss user experience — Intuit values UX
- Show customer empathy — Intuit is customer-focused
Company Comparison Table
| Company | Difficulty | Focus Areas | Key Differentiator |
|---|---|---|---|
| Hard | Clean code, edge cases | Problem-solving depth | |
| Amazon | Medium | Leadership Principles | STAR stories |
| Microsoft | Medium | Collaboration | Growth mindset |
| Meta | Medium-Hard | Speed, scalability | Move fast |
| Apple | Medium-Hard | Detail, design | Craftsmanship |
| Adobe | Medium | OOP, creativity | Product knowledge |
| Atlassian | Medium-Hard | Values, design | Openness |
| Oracle | Medium | SQL, databases | Database expertise |
| NVIDIA | Medium-Hard | Bit manipulation, GPU | Hardware awareness |
| Qualcomm | Medium | Embedded, bits | Systems knowledge |
| Salesforce | Medium | Cloud, CRM | Multi-tenancy |
| Walmart | Medium | Scale, e-commerce | Practical solutions |
| Goldman Sachs | Medium-Hard | Finance, probability | Analytical skills |
| JPMorgan | Medium | Banking, security | Attention to detail |
| Visa | Medium | Payments, scale | Transaction systems |
| Cisco | Medium | Networking, graphs | Systems thinking |
| Intuit | Medium | Financial software | Customer empathy |
Preparation Timeline by Company Type
FAANG (Google, Amazon, Meta, Apple, Microsoft)
- Minimum: 2-3 months of preparation
- Problems: 200-300
- Focus: Hard problems, system design, behavioral
Tier 2 Tech (Adobe, Atlassian, Salesforce, NVIDIA, Qualcomm)
- Minimum: 1-2 months of preparation
- Problems: 150-200
- Focus: Medium problems, system design, company-specific
Finance Tech (Goldman Sachs, JPMorgan, Visa)
- Minimum: 1-2 months of preparation
- Problems: 150-200
- Focus: Medium problems, finance knowledge, system design
Other Tech (Walmart, Cisco, Intuit)
- Minimum: 1 month of preparation
- Problems: 100-150
- Focus: Medium problems, company-specific knowledge
Final Advice
- Research the specific company — this guide is general; company-specific research is essential
- Practice on LeetCode — use company-tagged problems
- Mock interviews — practice with the company’s style in mind
- Prepare behavioral stories — most companies ask behavioral questions
- Know the products — show you care about the company
- Be yourself — authenticity matters
Good luck with your interviews! Remember, every interview is a learning experience, regardless of the outcome.