IBM | System Design / Software Engineer
IBM System Design Interview Questions
IBM system design interviews focus on distributed systems, microservices patterns, API design, database scalability, and cloud-native design on IBM Cloud or AWS. Expect 3-4 technical rounds including a Principal Architect-level design review.
Foundation Questions - Guaranteed to Appear
1
Design a URL shortener like bit.ly — IBM system design question.
Core components: API layer (POST /shorten returns short code, GET /{code} returns 301 redirect), ID Generation (Base62 encode 64-bit Snowflake ID), Storage (Cassandra — high write throughput, geo-replication), Cache (Redis with TTL for hot URLs — 80% traffic hits 20% URLs), CDN (edge-redirect popular URLs). Scale: 100M URLs/day = 1200 writes/sec, 10B redirects/day = 115K reads/sec. Multi-region Cassandra and Redis Sentinel for high availability. IBM interview tip: always discuss CAP theorem tradeoffs for your storage choice.
2
REST vs GraphQL — when would you choose GraphQL at IBM?
REST: fixed endpoints returning fixed shapes — simple, cache-friendly, widely understood. GraphQL: single endpoint where client specifies exactly which fields to fetch — eliminates over-fetching and under-fetching. Choose GraphQL when: multiple clients (mobile, web, IoT) need different subsets of the same data, aggregating from multiple microservices behind a BFF, or data model is graph-like. REST is better for simple CRUD APIs, caching-heavy scenarios, and teams unfamiliar with schema-first design. IBM Cloud API Connect supports both patterns.
3
How do you design a highly available system? Explain the 9s of availability.
99.9% (three 9s) = 8.7 hours downtime/year. 99.99% (four 9s) = 52 minutes/year. 99.999% (five 9s) = 5 minutes/year. Achieving five 9s requires: no single point of failure (every component has redundancy), active-active multi-region deployment, health checks with auto-healing (Kubernetes restarts crashed pods), circuit breakers (Hystrix), chaos engineering. Graceful degradation: if recommendation engine fails, serve default items rather than returning an error page.
4
Explain database sharding — problems solved and introduced.
Sharding horizontally partitions data across multiple servers (shards), each holding a subset of rows. Solves: single-server storage limits, write throughput bottleneck, read scalability. Common shard key: user_id ensures all user data lands on same shard for query locality. Introduced problems: cross-shard joins require scatter-gather or denormalization, re-sharding causes massive data migration, hotspot shards with uneven key distribution (celebrity problem). Solutions: Vitess (MySQL sharding), Citus (Postgres sharding), or native sharding in MongoDB and Cassandra.
5
What is eventual consistency and when should IBM systems accept it?
Eventual consistency means all replicas converge to the same state eventually, but reads immediately after a write may return stale data. Accept it when: stale data impact is low (follower count off by 1 briefly is acceptable), high availability is more critical than perfect consistency, write throughput is high. Do not accept for: financial transactions (bank balances must be accurate), inventory reservations (two users buying last item), authentication state (logout must propagate immediately). IBM recommends SAGA pattern for distributed transactions needing business-level consistency.
6
Synchronous vs asynchronous microservice communication patterns.
Synchronous: REST over HTTP (request-response, caller waits), gRPC (binary Protocol Buffers over HTTP/2, 5-10x faster for internal service calls), GraphQL. Circuit breakers (Hystrix/Resilience4j) and timeouts are required to prevent cascading failures. Asynchronous: IBM MQ for enterprise messaging, Apache Kafka for high-throughput event streaming. Async decouples services — producers do not wait for consumers. Use async for event-driven workflows (order placed triggers warehouse, billing, notification independently) and long-running background tasks. IBM model: synchronous for user-facing queries, asynchronous for state changes and notifications.
Practice With Live AI Interview Simulator
GhostMode AI simulates real IBM interviewers - ask follow-ups, get scored, and receive feedback on your answers in real-time.
Start AI Mock Interview
Start Free Prep