Companies blueprint · Internet search and advertising
Google: Search & Ads, and how Google ships
A search query flows through Google's front end, query understanding, sharded index fan-out, ranking and a parallel ads auction to return a results page. Click logs then feed quality evaluation and experiments. The system must never return slow or irrelevant results, and it must never let ads masquerade as or corrupt organic ranking.
- Steps
- 9
- Subjective questions
- 33
- Objective questions
- 33
The problem and the outcome
Problem: Billions of people expect relevant answers in a fraction of a second from an index of the whole web. Advertisers must also be matched fairly, and thousands of engineers must keep changing all of this safely.
Outcome: Queries are answered by massively parallel, replicated serving with ads chosen in a separate auction. Every change goes through design review, code review, presubmit tests, controlled experiments and SLO-guarded rollout.
Architecture
How it works, step by step
- The browser sends the query over HTTPS to the nearest Google edge. The Google Front End terminates TLS, applies abuse protection and routes the request to a healthy serving cluster.
- Query understanding corrects spelling, expands synonyms and infers intent and locale. Google has publicly described using language models such as BERT for this, and it produces a rewritten query for both organic search and ads.
- A root server fans the query out to many index shards (leaf servers), each holding a slice of the inverted index. It uses replicas and publicly described tail-latency tricks such as hedged requests so slow shards do not stall the page.
- Ranking merges candidates from all shards and scores them with many signals (relevance, freshness, page quality, location) and learned models. It returns the top results with snippets.
- In parallel, the ads system matches eligible ads and runs an auction. Google publicly describes Ad Rank as combining bid, ad quality and context. Winning ads are clearly labeled and kept separate from organic ranking.
- The results page is assembled and returned. Impressions, clicks and query events are logged with privacy controls and aggregated for evaluation, spam fighting and model training.
- On the build side, significant work starts with a design doc reviewed by peers. Code lands in a single monorepo only after code review and automated presubmit tests, as Google has publicly described.
- Ranking and product changes run as controlled live experiments on small traffic slices. They are checked against human rater evaluations (per the public Search Quality Rater Guidelines) and then go through a launch review before full rollout.
- SRE teams set SLOs per service and track error budgets. If a budget is exhausted, risky launches pause in favor of reliability work, and rollouts are gradual with fast rollback and blameless postmortems.
Tech stack
- Borg cluster management
- Bigtable, Spanner and Colossus storage
- Stubby / gRPC RPC framework
- Piper monorepo with Blaze (Bazel) builds
- Presubmit and continuous testing (TAP)
- MapReduce / Flume pipelines for logs
- TensorFlow models on TPUs
- Monitoring and alerting tied to SLOs
Key design decisions
- Shard the index by document across many leaf servers and replicate each shard. This lets one query be answered in parallel and tolerate machine failures.
- Run the ads auction in parallel with organic retrieval and keep it logically separate. This protects latency and organic ranking integrity.
- Use one monorepo with trunk-based development and mandatory review plus presubmit. This keeps dependencies consistent and makes large-scale refactoring possible.
- Gate ranking launches on both live experiment metrics and offline human rater evaluation. Neither clicks nor raters alone are trusted.
- Use error budgets so that reliability versus feature velocity is decided by data, not by argument between product and SRE.
Common mistakes
- Fan-out amplifies tail latency: one slow shard out of many can dominate response time unless hedging, timeouts and partial results are used.
- Optimizing purely on click logs rewards clickbait and position bias. Rater guidelines and counter-metrics are needed.
- Logging queries and clicks without strong anonymization, retention limits and access controls creates privacy and regulatory risk.
- Letting ads signals leak into organic ranking destroys user trust.
- Big-bang global rollouts of config or code bypass the gradual canarying that SRE practice relies on.
What to measure
- End-to-end query latency at high percentiles (p99), not just the average
- Availability against each service's SLO and remaining error budget
- Search quality from rater evaluations and experiment metrics
- Ad relevance and click-through, alongside advertiser outcomes
- Presubmit pass rate, code review turnaround and rollback frequency
Most-asked interview questions
Subjective questions 33
1Design the serving path for a web search query that must return within a tight latency budget.Asked almost every time
I'd put a global front end at the edge for TLS, load balancing and abuse protection. It forwards to a regional cluster where a query-understanding service rewrites the query. A root server then fans out to an index partitioned by document across many leaf shards, each replicated. Every leaf returns its local top-k with scores, and the root merges them and calls a ranking stage for final scoring and snippets. Ads retrieval and the auction run in parallel and join at page assembly. To control tail latency I'd use per-shard deadlines, hedged or backup requests to replicas, and degrade to partial results rather than wait. Caching popular queries helps too. I'd log impressions and clicks asynchronously so logging never blocks serving.
2Walk me through the data model of an inverted index for web search.Asked almost every time
An inverted index maps each term to a postings list: the sorted IDs of documents containing that term, usually with term frequency and word positions for phrase and proximity matching. A separate document store holds per-document data such as URL, title, quality signals and the text used for snippets. Doc IDs are kept sorted so lists can be intersected quickly and compressed as gaps between neighbouring IDs using variable-length encodings. A lexicon maps terms to where their postings sit on disk or in memory. At query time a leaf reads the postings for each query term, intersects or unions them, and computes cheap scores. Each shard holds this whole structure for its own slice of documents.
3Should you shard the index by document or by term, and why?Asked almost every time
Most large web engines shard by document. Each shard indexes a subset of pages for all terms, so a query goes to every shard, each returns its local top-K, and the root merges them. Shards are independent, load is even, and losing one shard drops only a slice of results. Term sharding puts the full postings for a term on one machine. That cuts fan-out, but multi-term queries must ship large postings lists between machines, popular terms create hotspots, and losing a shard removes a term entirely. The cost of document sharding is that every query fans out widely, which is why replicas, hedged requests and good tail-latency control matter so much.
4How would you guarantee that ads never influence organic ranking?Asked almost every time
Enforce it in the architecture, not only in policy. Organic ranking and the ads auction run as separate services with separate models, features and owners, and the only thing they share is the query-understanding output. Ranking code takes no advertiser, bid or revenue signal as input, and dependency rules plus code review stop anyone adding one. Page assembly places ads only in labelled ad slots and never re-sorts organic results. Evaluation backs this up. Organic quality is judged with rater guidelines and quality metrics that carry no revenue term. Launch reviews check that a ranking change is not justified by ad revenue, and audits can compare organic results with ads switched off.
5Why is ranking usually multi-stage, and how would you design the stages?Asked almost every time
You cannot run the most expensive model on every matching document within the latency budget. So stage one, on the leaves, uses cheap scoring such as term-match statistics and static quality to cut millions of matches to a local top-K. Stage two, at the root or a mid tier, merges shard results and applies richer features and learned models to a few hundred or thousand candidates. A final stage may run the heaviest models, deduplicate, diversify and attach snippets to the top results only. The trade-off is recall: a good document dropped early can never come back. So monitor recall of the early stages against the final ranker offline.
6How do SLOs and error budgets change the way a team decides to launch?Very often asked
An SLO sets a target, say an availability or latency objective over a window. The error budget is the allowed shortfall: one minus the target. Google's SRE books publicly describe using it as a shared agreement between product and SRE. While budget remains, teams can ship and take risks. When it is spent, the policy is to slow or freeze risky launches and spend engineering time on reliability until it recovers. This turns a political argument into a data-driven one. It also encourages gradual rollouts, canaries and fast rollback, because a bad launch burns budget visibly. It also means you don't chase 100 percent reliability, which would block all change.
7How would you safely launch a change to the ranking algorithm?Very often asked
I'd start with a design doc that states the hypothesis, the signals and the risks, and get it reviewed. The code goes through review and presubmit tests behind a flag. Offline, I'd run side-by-side comparisons with human raters following published rater guidelines, so I catch quality regressions clicks would miss. Then I'd run a live experiment on a small randomized traffic slice, watching quality metrics and counter-metrics such as latency and query reformulation, and slicing by locale and device. If results hold, a launch review with quality, privacy and SRE stakeholders approves a gradual rollout with monitoring and an easy rollback path.
8How do hedged and tied requests work, and what do they cost?Very often asked
With a hedged request, the root sends to one replica and, if no reply arrives within something like the expected high-percentile latency, sends the same request to a second replica and uses whichever answers first. Because only a small share of requests get hedged, extra load stays modest while the tail shrinks a lot. Tied requests go a step further: the request is queued on two replicas at once, each knowing about the other, and when one starts executing it tells the other to cancel. The costs are extra load, more complexity, and the risk of amplifying overload. Hedging should therefore be capped, should never retry non-idempotent work, and should back off when the system is saturated.
9Explain Ad Rank conceptually. Why isn't the highest bid enough to win?Very often asked
Google publicly describes Ad Rank as combining the bid, ad quality and the context of the search, plus factors such as ad assets and auction thresholds. Quality covers expected click-through rate, ad relevance and landing-page experience. Without quality in the formula, the top bidder could show irrelevant ads. Users would learn to ignore ads, and long-term value would drop for users, advertisers and Google alike. Folding quality in lets a relevant ad with a lower bid beat an irrelevant one with a higher bid. Thresholds can also mean no ad shows at all. In system terms, ads face a ranking problem with an economic layer, and they need their own models and their own logging.
10A few index shards are unreachable. Do you fail the query or return partial results?Very often asked
Return partial results when the expected quality loss is small, and fail over or degrade loudly when it isn't. With document sharding, one missing shard removes a fraction of candidates, and that rarely changes the top results for common queries. The root should first try other replicas. If the deadline passes, it merges what it has and marks the response as degraded. It should also record the coverage achieved so that monitoring catches it. If coverage drops below a threshold, the cluster should report itself unhealthy so the front end sends traffic elsewhere. Rare long-tail queries are the most exposed, because the only matching document might sit on the missing shard.
11How would you estimate the number of leaf servers and replicas needed?Very often asked
Start from inputs I'd confirm, not invent: index size in documents, bytes per document in the index, peak queries per second, and per-leaf memory and CPU. Index size divided by what one machine can serve within the latency target gives the shard count. Fewer, larger shards mean slower leaves, while more shards mean a bigger fan-out tail. Next, estimate per-shard CPU cost per query. Peak QPS times that cost, divided by safe utilisation per machine, gives replicas per shard. Then add headroom for losing a whole cluster or zone, for hedged-request overhead and for growth. Finally, multiply across serving regions, because each region needs a full copy of the index.
12How do you make new or updated pages searchable quickly without rebuilding the whole index?Very often asked
Use a tiered index. A large base index is rebuilt or merged in batches, and a small, fast-updating fresh tier takes recently crawled or changed pages. Queries hit both tiers and the results are merged, with freshness as a ranking signal for time-sensitive queries. Updates arrive in the fresh tier as incremental segments. Deletes and changed documents are handled with tombstones, so stale versions are filtered out until the next merge compacts them. This trades some query-time merge cost and complexity for low indexing latency. Monitor index age per tier, and serve the last good base index if a new build fails validation.
13What caching would you put in the search serving path, and what are the pitfalls?Very often asked
There are several layers. A result cache at the root serves repeated popular queries, keyed on normalised query plus locale and other factors that change the results. Leaves cache hot postings lists and document data in memory. Query-understanding outputs for frequent queries can be cached too. The pitfalls are staleness, key explosion and correctness. Breaking news needs short time-to-live values or targeted invalidation, and a cache key that misses locale or safe-search settings can serve the wrong results to the wrong user. Personalised parts should not go in shared caches. Also watch for a cold cache after a failover or deploy. Plan capacity assuming a low hit rate, so a flushed cache doesn't cause an overload.
14How would you log impressions and clicks while respecting user privacy?Very often asked
Collect the minimum needed for each purpose and separate identifiers from content as early as possible. Logs record the query, results shown, positions and clicks, with user identifiers pseudonymised or dropped according to user settings and policy. Access is role-based and audited, and training and evaluation jobs mostly read aggregated data, not raw logs. Set retention limits and anonymise or delete data after a defined period. Apply thresholds so rare queries that might identify someone are not exposed in aggregates, and consider differential privacy for published statistics. User controls such as activity settings and deletion must flow through every downstream copy, including derived datasets.
15Click logs are biased. How do you still use them to evaluate ranking?Very often asked
Clicks reflect position, presentation and attractive snippets, not just relevance. Users click the top result more simply because it is on top. To correct for this, use randomised experiments and compare whole-page metrics between control and treatment, instead of reading raw click counts. Interleaving, which mixes two rankers' results for the same user, gives sensitive comparisons. Click models and inverse propensity weighting can estimate position bias using small randomisation slices. Combine several signals, such as long clicks, query reformulations and abandonment, because a good answer shown right on the results page may get no click at all. Human rater evaluations then check that click gains match actual quality.
16How should the search stack behave under overload?Very often asked
Protect latency and core results first and shed optional work. Each request carries a deadline that flows down the call tree, and servers drop work whose deadline has already passed. Under pressure, reduce the work per query: search fewer candidates, skip the expensive final reranking, drop secondary page features, or serve from cache. Admission control and per-client quotas reject excess traffic early with clear errors. Lower-priority traffic such as batch jobs or prefetches goes first. Limit retries with budgets and jitter to avoid retry storms, and cap hedging when queues grow. The goal is slightly worse results for everyone, not a cascading failure.
17How do live experiment metrics and human rater evaluations complement each other?Very often asked
Live metrics show how real users behave at scale, but they are noisy, biased by presentation, and can reward clickbait or short-term engagement. Rater evaluations, guided by the public Search Quality Rater Guidelines, give judgements on relevance and page quality, including signs of experience, expertise, authoritativeness and trustworthiness. They also catch harms that clicks cannot show, such as misleading health content. Raters do not directly change the ranking of individual pages. Their ratings measure whether a change makes results better. A strong launch case shows gains on both. When the two disagree, that is a signal to investigate before launching, not to pick whichever number looks better.
18How would you design the experiment infrastructure so many teams can test at once?Very often asked
Google has published work on an overlapping experiment infrastructure. Parameters are grouped into layers, and each layer splits traffic independently, so one request can join one experiment per layer. Experiments that touch the same parameters share a layer and stay mutually exclusive, while independent ones overlap. Diversion should be consistent, usually by cookie or user ID, so users get a stable experience. Some traffic is held back as long-term holdouts. Run A/A tests to check variance and the diversion logic, require pre-registered metrics and guardrails, and compute confidence intervals automatically. Experiment configuration should be reviewed and versioned like code.
19What makes a postmortem blameless, and what should it produce?Very often asked
Blameless means the analysis assumes people acted reasonably given the information and tools they had. It asks why the system allowed the failure, not who caused it. That matters because people who fear blame hide details, and without honest timelines you cannot fix the real causes. A good postmortem covers impact, a detailed timeline, how the issue was detected and mitigated, root and contributing causes, and what went well as well as badly. Most importantly, it lists concrete action items with owners and priorities, such as better alerts, safer defaults or automated checks. Share it widely so other teams learn, and track the action items until they are done.
20How would you roll out a new binary of the serving stack safely?Very often asked
Roll out progressively. Deploy first to a canary: a small set of machines or one cluster taking real traffic. Compare it automatically against the current version on errors, latency percentiles, resource use, crash rates and result-quality checks. If it stays healthy over a soak period, widen to more clusters and regions in stages, never all at once, so one bad push cannot take out everything. Keep the previous version ready for a fast, practised rollback. Separate binary releases from behaviour changes using flags, so new logic can be turned off without a redeploy. Avoid stacking many changes into one release, so a regression can be traced to its cause.
21Which SLIs and SLOs would you define for web search?Very often asked
Measure what users feel. Availability is the share of valid requests answered successfully, measured as close to the user as possible, ideally at the front end. Latency should be tracked at high percentiles such as the 99th, not the mean, because the tail drives the experience. I'd add a coverage or quality SLI, such as the share of queries answered with full shard coverage and no degraded fallbacks, because a fast but incomplete answer is a silent failure. Set SLO targets from user needs and past performance, not at 100 percent. The gap is the error budget. Internal services such as leaves get their own SLOs, which should be tighter than the user-facing SLO to allow for fan-out.
22The ads auction is slow on some requests. What should the results page do?Very often asked
Organic results must not wait on ads. The ads call runs in parallel with its own deadline, inside the overall page budget. If it misses the deadline, the page is built without ads, or with fewer ad slots, and the outcome is logged. Showing no ad is always acceptable, while a slow page is not. This also keeps ads and organic separate in failure: an ads outage should never degrade organic results. Ads latency should have its own SLO and alerts, because silently dropped ads mean lost revenue and skewed experiment data. Retries happen only inside the deadline, and never by stalling page assembly.
23Search p99 latency jumped after midnight. How do you debug it?Very often asked
First mitigate, then diagnose. Check whether a deploy, configuration, flag or index push lined up with the jump, and roll it back if so. If not, narrow the scope: is it one region, one cluster, certain query types, or every request? Use distributed tracing to find which stage grew: front end, query understanding, root, particular leaf shards, ranking or ads. One slow shard often points to a bad machine, a hot replica, a large new index segment or garbage-collection pauses. Check resource saturation, queue lengths, cache hit rate and traffic mix. A bot surge, for example, can change the queries arriving. Confirm the fix with metrics, then write a postmortem.
24Query understanding feeds both organic search and ads. What are the risks of sharing one rewritten query?Often asked
Sharing keeps intent and locale consistent across the page and avoids paying for the same model work twice. The risk is coupling. A bad spelling correction or a wrong intent guess now hurts both organic results and ads at once. Ads teams might also push for rewrites that boost ad matching, which would quietly change organic recall. To manage this, version the query-understanding output and give each consumer the original query plus the rewrites with confidence scores, so each side chooses how to use them. Changes to query understanding should be tested against both organic quality and ads metrics, under a clear owner whose goal is user intent, not revenue.
25What consistency guarantees do you need between index replicas?Often asked
Search can tolerate eventual consistency. If two replicas briefly differ by a few recently indexed pages, users barely notice, and paying for strong consistency on reads would add latency. What does matter is that each replica serves an internally consistent snapshot. Postings, document data and model versions should come from the same build, or scores and snippets may not match. So index versions are rolled out as atomic swaps per replica with validation checks first, and the root tracks versions so it doesn't mix very different snapshots in one query. The places that need stronger consistency are removals for legal or safety reasons, which should spread fast and be verified.
26How would you defend organic ranking against spam and ads against click fraud?Often asked
For organic results, combine signals from crawling and indexing, such as link patterns, content quality and cloaking checks, with spam classifiers trained on labelled examples. Manual actions cover cases classifiers miss. Refresh models often, because spammers adapt. For ads, filter invalid clicks in real time and offline using signals such as abnormal rates, bot behaviour and repeated patterns, and don't charge advertisers for clicks found to be invalid. Both systems should log enough to investigate, keep detection logic private, and keep human review for appeals. Measure false positives too, because wrongly removing a legitimate site or advertiser does real harm.
27What does the Google Front End do, and why keep that logic out of the search service?Often asked
The Google Front End is the shared edge layer. It terminates TLS, enforces HTTPS, applies DDoS and abuse protection, and load-balances requests to healthy backend clusters, which can mean crossing regions when needed. Centralising this means every product gets consistent security, certificate handling and protocol support such as HTTP/2 and HTTP/3, without each team building its own. The search service can then focus on query processing and trust that traffic reaching it is already filtered and authenticated at the transport level. It also gives one place to shift traffic during incidents or maintenance. The downside is a large shared dependency, so it must be highly redundant and rolled out with great care.
28What should a good design doc contain, and why does review matter?Often asked
It should state the context and problem, goals and explicit non-goals, and the proposed design with diagrams and APIs. It should list the alternatives considered and why they were rejected, plus cross-cutting concerns: security, privacy, reliability, capacity, monitoring and rollout. It also covers open questions. Its value is catching expensive mistakes before code exists, when changing direction is cheap. It also lets experts in privacy, SRE or the neighbouring service raise concerns early, and it leaves a record of why decisions were made for future maintainers. Keep it proportional: small changes need a short doc or none, while cross-team or risky work deserves a full review.
29How do trunk-based development and feature flags fit with a monorepo?Often asked
In a monorepo, everyone commits to one main line instead of long-lived branches, which avoids painful merges and keeps dependencies current. Large features therefore land in small, reviewed changes that sit behind flags or configuration switches, turned off by default. The code ships with regular releases, and behaviour is turned on gradually through experiments or staged flag rollouts. Turning a flag off is faster and safer than a code rollback. The cost is flag debt: old flags multiply code paths and test combinations. So flags need owners, expiry dates and cleanup. Changes to flags and configuration should get the same review and staged rollout as code, because bad config causes many outages.
30How would you handle losing an entire serving region or cluster?Often asked
Design so the loss is mostly a non-event. Each region holds full index replicas and capacity planned with headroom, often described as N+1 or N+2, so others can absorb a lost cluster's traffic. The front end health-checks backends and shifts traffic automatically to the nearest healthy cluster, which adds some network latency but keeps serving. Watch for knock-on effects: cold caches in receiving clusters, retry surges and capacity overruns, so load shedding must already be in place. Run regular disaster-recovery exercises that drain real clusters, so failover is proven, not theoretical. State such as index builds and logs should be replicated so serving does not depend on one site.
31How do you train ranking models on logged data without creating harmful feedback loops?Often asked
The current ranker decides what users see, so logs over-represent its choices, and a model trained on them can lock in its own mistakes. Counter this with small randomisation or exploration slices that show alternative orderings, which give less biased training data. Use propensity weighting and long-term holdout groups that never receive the new models, to measure drift. Mix in labels that do not come from clicks, such as human rater judgements. Watch for optimising proxies like raw clicks that reward clickbait. Keep data lineage and version models and training data together, so a regression can be traced and the previous model restored quickly.
32How would you design spelling correction for search queries?Sometimes asked
Generate candidate corrections, then pick the best one with context. Candidates come from edit-distance and phonetic matches against a vocabulary built from the web and query logs. Score them with a language model that asks how likely the corrected query is, combined with an error model of common typos. Query logs help a lot, because users who retype a query show which corrections are real. Keep confidence levels: apply high-confidence fixes automatically and show a 'did you mean' suggestion for uncertain ones. Rare names and new words are the hard cases, so the vocabulary must update quickly. Track false corrections, since overriding a correct query hurts users.
33How do location and personal context improve results, and what are the trade-offs?Sometimes asked
Location matters for queries like 'pharmacy near me' or local weather, and language and region affect which sources are relevant. Some context, such as recent queries in the same session, can help resolve ambiguity. The trade-offs are privacy, filter bubbles and harder caching and evaluation. Use the least precise signal that works: city-level location often does the job. Respect user settings, and make sure ranking degrades gracefully when signals are missing or turned off. Personalised results also shrink result-cache hit rates and make experiment results harder to read, so personal context should usually be a modest adjustment, not the backbone of ranking.
Objective questions 33
1What does an inverted index map?Asked almost every time
Why: An inverted index maps a term to its postings list of document IDs, which makes term lookup fast at query time.
2In a document-partitioned index, how many shards does a typical query need to reach?Asked almost every time
Why: Each shard holds a subset of documents for all terms, so any shard might hold a match, and the query must fan out to all of them.
3According to Google's public description, which factors make up Ad Rank?Asked almost every time
Why: Google says Ad Rank combines the bid, ad quality, auction-time context and related factors, not the bid alone.
4What is the correct relationship between ads and organic results?Asked almost every time
Why: Google keeps ads separate and labelled. Paying for ads does not affect organic ranking.
5A service has an availability SLO of 99.9%. What is its error budget?Asked almost every time
Why: The error budget is 1 minus the SLO, so a 99.9% target allows 0.1% unreliability.
6Why does web ranking typically use multiple stages?Asked almost every time
Why: Cheap early stages narrow the candidate set so costly learned models run only on a few top candidates.
7In a fan-out search architecture, which technique most directly reduces tail latency caused by a few slow leaf servers?Very often asked
Why: Sending a backup request to another replica when the first is slow, as described in Google's public 'Tail at Scale' work, cuts p99 latency at a small extra cost.
8Under a typical SRE error budget policy, what happens when a service has exhausted its error budget?Very often asked
Why: Public SRE practice treats an exhausted budget as a signal to slow or freeze changes and fix reliability until the service is back within its SLO.
9Why does tail latency get worse as fan-out grows?Very often asked
Why: With parallel fan-out, response time is set by the slowest shard, so even rare slow responses become common at the page level.
10In the publicly described hedged-request technique, when is the second request usually sent?Very often asked
Why: Delaying the backup request until the first looks slow limits extra load while cutting tail latency.
11About how much full downtime does a 99.9% availability target allow over a 30-day window?Very often asked
Why: 30 days is 43,200 minutes, and 0.1% of that is about 43 minutes.
12Why is a high-percentile latency such as p99 preferred over mean latency as an SLI?Very often asked
Why: A few very slow requests can barely move the mean while still hurting many users. High percentiles expose that tail.
13How do Search Quality Rater evaluations affect search?Very often asked
Why: Google says rater data measures how well systems work and guides improvements. It does not directly change specific pages' rankings.
14What is position bias in click logs?Very often asked
Why: Users click top results more partly because of placement, so raw clicks overstate the relevance of high positions.
15What is the main purpose of a small, frequently updated fresh tier next to a large base index?Very often asked
Why: A tiered design gives low indexing latency for fresh content while the large base index is rebuilt less often.
16A few leaf shards miss their deadline. Which response best balances latency and quality?Very often asked
Why: Returning slightly incomplete results on time, while monitoring coverage, usually serves users better than a slow or failed page.
17The ads system misses its deadline on a request. What should page assembly do?Very often asked
Why: Organic results must never wait on ads. Dropping ads keeps the page fast and keeps the two systems separate.
18Under overload, which practice best prevents a cascading failure?Very often asked
Why: Shedding excess work, dropping requests whose deadline has passed and capping retries stops overload from spreading through the system.
19What is the main idea of a blameless postmortem?Very often asked
Why: Removing blame encourages honest detail, which reveals the process and system gaps that need fixing.
20Why roll out a new serving binary through canaries and gradual stages?Very often asked
Why: Staged rollouts expose problems on limited traffic, where fast rollback can contain them.
21Which approach best protects privacy in search logs used for model training?Very often asked
Why: Data minimisation, retention limits, access control and aggregation reduce privacy risk while keeping logs useful.
22Why does Google's publicly described monorepo approach rely heavily on presubmit testing and code review?Often asked
Why: With trunk-based development in one repository, a bad change can break many teams. Mandatory review plus automated presubmit checks catch problems before submission.
23What is the key feature of a tied request?Often asked
Why: Tied requests put the request on multiple queues with cross-server cancellation, which limits duplicate work.
24Can an ad with a lower bid appear above an ad with a higher bid?Often asked
Why: Ad Rank includes quality and context, so a more relevant, higher-quality ad can outrank a higher bid.
25What does the 'B' in BERT stand for, and why does it matter for query understanding?Often asked
Why: BERT means Bidirectional Encoder Representations from Transformers. Reading context in both directions helps it understand words like prepositions in queries.
26Why are posting lists often stored as gaps between sorted document IDs?Often asked
Why: Delta encoding turns large sorted IDs into small gaps, which shrinks the index and improves cache use.
27Which of these is a core job of the Google Front End?Often asked
Why: The front end is the edge layer that handles TLS, DoS defence and routing before requests reach product services.
28What is the main benefit of Google's publicly described overlapping experiment infrastructure?Often asked
Why: Layers split traffic independently, so non-conflicting experiments overlap and conflicting ones stay mutually exclusive.
29What is the purpose of an A/A test?Often asked
Why: With identical arms, any significant difference reveals bugs in assignment or metrics, or shows how noisy the metrics are.
30In trunk-based development in a monorepo, how are large unfinished features usually shipped?Often asked
Why: Flags let incomplete code land safely on trunk and be turned on gradually.
31What is the main advantage of hermetic builds, as in Google's publicly described Blaze/Bazel approach?Often asked
Why: With all inputs declared, the same inputs give the same outputs, which enables caching and finding which tests a change affects.
32Why does each index shard have several replicas?Often asked
Why: Replicas spread query load and allow failover or hedging when one machine is slow or down.
33How does SRE define toil?Often asked
Why: The Google SRE book defines toil this way and recommends capping it and automating it away.
Track your progress through every blueprint in your dashboard.
Start learning