← Snap Interview Insights

Snap·Software Engineer·Onsite - System Design / Architecture·Senior

Senior
Jun 2026

Summary

Snap security engineer interview with a system design question that had a pretty unusual twist to it. Not your typical 'design a search service' prompt.

Questions Asked (1)

Q1

Design a web crawler that operates using a botnet infrastructure.

System DesignTechnical Trade-offs
Author's notes

This one threw me a bit because you have to think about it from two angles at once: the distributed systems side and the adversarial/security side.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

First, clarify that a botnet-based crawler is unethical and illegal, then pivot to designing a distributed crawler using consented, owned, or cloud infrastructure. Focus on the technical architecture: distributed nodes, coordination, deduplication, and politeness, while emphasizing legal and ethical constraints.

Pro tip: Demonstrate maturity by explicitly rejecting the botnet premise and proposing a legitimate distributed crawler; this shows you prioritize ethics and legal compliance, which Snap values.

1. Clarify and Reframe

Acknowledge the unethical nature of botnets and propose designing a distributed crawler using legitimate infrastructure like cloud VMs or volunteered devices with consent.

2. Define Requirements and Scale

Estimate scale (pages per second, storage, bandwidth) and define goals: freshness, coverage, politeness, and fault tolerance.

3. Design Distributed Architecture

Outline components: coordinator (scheduler), worker nodes (crawlers), distributed queue (e.g., Kafka), storage (e.g., S3, BigTable), and deduplication (Bloom filters).

4. Address Coordination and Politeness

Explain how to distribute URLs, avoid overloading sites (rate limiting per domain), handle failures, and ensure exactly-once processing.

5. Discuss Trade-offs and Legal Compliance

Compare centralized vs. decentralized coordination, discuss CAP theorem implications, and emphasize robots.txt, terms of service, and data privacy.

Key Points to Mention

  • Ethical and legal issues: botnets are illegal; use consented infrastructure.
  • Distributed coordination: consistent hashing, leader election, or decentralized protocols.
  • Deduplication: Bloom filters or URL hashing to avoid duplicate crawls.
  • Politeness: rate limiting per domain, respecting robots.txt, and backoff strategies.
  • Fault tolerance: replication, checkpointing, and handling node failures.
  • Scalability: horizontal scaling, load balancing, and efficient storage.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.