By Fatskills Exam Guides Team — the exam nerds behind 28,500+ quizzes and 2.1M practice questions across 500+ global exams.
The tech stack is the combination of programming languages, frameworks, databases, and tools used to build a product. Frontend (client-side) is what users interact with (e.g., a mobile app screen, a website button), while backend (server-side) handles logic, data storage, and infrastructure (e.g., processing payments, storing user profiles). Understanding this distinction helps PMs: - Scope features accurately (e.g., "Does this UI change require backend work?").- Prioritize work (e.g., "Is this a frontend-only tweak or a full-stack overhaul?").- Communicate with engineers (e.g., "This API endpoint needs to return X data for the frontend to render Y").
Real-world example: When Instagram launched "Stories," the frontend team built the UI (swipeable cards, filters), while the backend team handled: - Storing millions of ephemeral videos.- Optimizing delivery speed (CDNs, compression).- Syncing stories across devices in real time.
Key concern: Performance (e.g., "Does the page load in <2s?"), accessibility, and UX.
Backend (Server-Side): The "invisible" infrastructure that powers the product. Includes:
Key concern: Scalability (e.g., "Can the system handle 10K concurrent users?"), security, and data integrity.
Full-Stack: A feature or engineer that works on both frontend and backend. Example: Building a "Save for Later" button requires:
Backend: Database to store the list and API to fetch it.
Tech Stack Layers (Top to Bottom):
Infrastructure Layer: Servers, networking, security (e.g., AWS, Kubernetes).
API (Application Programming Interface): A contract between frontend and backend. Example: A frontend requests /api/user/123 and expects a JSON response like: json { "name": "Alice", "email": "[email protected]" }
/api/user/123
json { "name": "Alice", "email": "[email protected]" }
GraphQL: Lets frontend request only the data it needs (e.g., "Give me the user’s name and last 3 orders").
Latency vs. Throughput:
Throughput: Number of requests handled per second (e.g., "Can the backend process 1K logins/sec?").
Monolith vs. Microservices:
Microservices: Features split into independent services (e.g., Uber’s "Payments" service vs. "Ride Matching" service). More scalable but complex.
Caching: Storing frequently accessed data (e.g., user profiles) in memory (Redis) to reduce backend load. Example: Twitter caches tweets to avoid hitting the database for every request.
CDN (Content Delivery Network): Distributed servers that cache frontend assets (images, JS) closer to users. Example: Netflix uses CDNs to stream videos without buffering.
Tech Debt: Shortcuts taken in development that create future work. Example: Hardcoding a list of countries in the frontend instead of fetching them from the backend. PMs must balance speed vs. debt.
Feature Flag: A toggle to enable/disable features without deploying code. Example: A/B testing a new checkout flow for 10% of users.
How to scope a feature with frontend/backend considerations:
Identify where frontend/backend interact (e.g., "Checkout button triggers a POST to /api/checkout").
/api/checkout
Define Data Requirements
Decide where data lives:
Design the API Contract
GET /api/products/{id}
price
in_stock
Use tools like Swagger or Postman to document this.
Estimate Effort
Example estimates:
Prioritize with Engineering
Example: "This frontend tweak (ICE=10) is faster than the backend overhaul (ICE=5)."
Plan for Dependencies
Mistake: Assuming a "simple" UI change is frontend-only. Correction: Always ask, "Does this require new data or logic?" Example: A "Share" button might need backend work to generate a unique link.
Mistake: Ignoring latency in user flows. Correction: Measure Time to First Byte (TTFB) and Total Load Time. Example: A slow API call can make a "fast" frontend feel sluggish.
Mistake: Treating the tech stack as "engineering’s problem." Correction: PMs must understand trade-offs (e.g., "Microservices add complexity but let us scale payments independently").
Mistake: Not accounting for mobile vs. web differences. Correction: Mobile apps often need offline support (e.g., caching data locally) and battery efficiency (e.g., reducing API calls).
Mistake: Overlooking security in API design. Correction: Ensure endpoints use authentication (e.g., JWT tokens) and rate limiting (e.g., "No more than 10 requests/minute per user").
Follow-up: "What’s the trade-off?" → Microservices add complexity (e.g., network latency, debugging across services).
Stakeholder Trap: "Why can’t we just ‘make it faster’?"
Answer: Speed depends on frontend optimizations (e.g., lazy-loading images) and backend optimizations (e.g., database indexing). Ask:
Interview Probe: "How would you handle a situation where the frontend team is blocked waiting for the backend API?"
Answer: Use mock data (e.g., hardcoded JSON responses) or feature flags to unblock frontend work. Example: Airbnb’s frontend team built UI prototypes with fake data while the backend caught up.
Distinction: "What’s the difference between a user story and a technical task?"
POST /api/payments
Answer: The backend engineer might be assuming the toggle requires persisting user preferences (e.g., storing "dark_mode: true" in the database). Correction: Clarify if the setting can be stored locally (frontend-only) or needs to sync across devices (backend work).
Scenario: Users complain that your e-commerce site’s search is slow. The frontend loads in 1s, but the search results take 5s. Where’s the bottleneck?
Answer: The backend API (e.g., database query or unoptimized search algorithm). Correction: Work with engineers to add caching (e.g., Redis) or indexing to the database.
Scenario: You’re launching a new feature that requires real-time updates (e.g., a live chat). What tech stack considerations do you need?
Join 4M+ learners. Unlock unlimited quizzes, wrong-answer tracking, flashcards + reminders, study guides, and 1-on-1 challenges.