Intervjufrågor om Mikrotjänster

Av Aaron Cao · Uppdaterad

Intervjufrågor om Mikrotjänster
Intervjuer om mikrotjänster testar tjänstegränser, kommunikationsval, datakonsistens och felhantering, inte framework-trivia. Räkna med att behöva dela upp en monolit, försvara synkrona anrop mot asynkrona meddelanden, förklara hur du håller data korrekt mellan tjänster, och spåra en enskild förfrågan från start till slut.

Intervjuer om mikrotjänster testar tjänstegränser, kommunikationsval, datakonsistens och felhantering, inte framework-trivia. Räkna med att behöva dela upp en monolit, försvara synkrona anrop mot asynkrona meddelanden, förklara hur du håller data korrekt mellan tjänster, och spåra en enskild förfrågan från start till slut.

Vad testar intervjuer om mikrotjänster egentligen?

Du har läst mönsternamnen, du kan rabbla vad en circuit breaker gör, och ändå vet du inte vad en panel egentligen lyssnar efter. Det här avsnittet namnger de fyra områden som intervjuare bedömer, i den ordning de vanligtvis undersöker dem. Vart och ett är en bedömningsfråga förklädd till en ordförrådsfråga.

  • Uppdelning. Var skär du, och varför just där? Intervjuare vill se en gräns dragen längs affärsförmåga eller dataägarskap, inte längs tekniska lager.
  • Kommunikation. Synkron förfrågan/svar eller asynkrona events, och vad som går sönder i vardera. Det önskade svaret är en avvägning, inte en preferens.
  • Data. En databas per tjänst innebär inga cross-service-joins och ingen distribuerad transaktion. Hur håller du systemet korrekt ändå?
  • Drift. Deployment, versionshantering, tracing, och vad som händer klockan tre på natten när en tjänst är långsam snarare än nere.

Lägg märke till att inget av detta handlar om ett framework. En kandidat som förklarar varför de separerade checkout från inventory slår alltid en som bara räknar upp annoteringar.

Vilka frågor om uppdelning och kommunikation dyker upp mest?

Det här är frågorna som öppnar de flesta rundor om mikrotjänster, tillsammans med vad intervjuaren egentligen kontrollerar under varje.

  • Hur skulle du dela upp den här monoliten i tjänster? Kontrollerar om du skär längs affärsförmågor och dataägarskap, eller längs lagren controller, service och repository. Det andra svaret ger en distribuerad monolit.
  • Hur pratar två tjänster med varandra? Kontrollerar om du kan namnge kostnaden för varje val: synkrona anrop ger en enkel mental modell men kopplar samman tillgänglighet, asynkrona events frikopplar tillgänglighet och ger eventual consistency som du måste förklara för en product owner.
  • Vad är en distribuerad monolit och hur undviker du en? Kontrollerar om du vet att tjänster som måste driftsättas tillsammans egentligen inte är separata.
  • Hur stor bör en tjänst vara? Kontrollerar att du motstår ett tal. Storleken följer gränsen och teamet som äger den.
  • Behöver du en API gateway, och vad gör den? Kontrollerar om du kan separera routing, autentisering och rate limiting från affärslogik.
  • Hur hittar tjänster varandra? Kontrollerar grundläggande kännedom om service discovery och varför hårdkodade hostar misslyckas i en skalad miljö.

Säg avvägningen högt i varje svar. En panel kan inte ge poäng för en jämförelse du gjort tyst i huvudet.

Hur svarar du på frågorna om data och fel?

Det är här intervjuer vinns eller förloras, eftersom de här frågorna inte har ett rent svar och kandidater tar till ett utantillärt svar.

  • Hur håller du data konsekvent mellan tjänster? Namnge först begränsningen: det finns ingen cross-service-transaktion. Beskriv sedan en saga, antingen koreograferad genom events eller orkestrerad av en koordinator, och säg rakt ut att systemet är eventually consistent och vad användaren ser under det intervallet.
  • Vad händer när en downstream-tjänst är långsam? Timeouts, retries med backoff, och en circuit breaker så att ett långsamt beroende inte tömmer din thread pool. Långsamt är värre än nere, och att säga det signalerar produktionserfarenhet.
  • Hur gör du en retry säker? Idempotency. En idempotency key på skrivvägen, så att en upprepad betalning bara debiteras en gång.
  • Hur hanterar du ett partiellt fel i ett flerstegsflöde? Kompenserande åtgärder, inte rollback. Förklara hur en återbetalning eller att släppa en reservation ser ut.
  • Hur felsöker du en förfrågan som rört sex tjänster? Distributed tracing med ett correlation ID som förs vidare genom varje hop, plus strukturerade loggar och mätvärden.

En backend-ingenjör som intervjuades för en platform-roll på L5 hos en publik molnleverantör fick sagafrågan och besvarade den i ett svep, med mönstervokabulär, utan att någonsin nämna vad kunden skulle se. Uppföljningsfrågan, vad ordersidan visar under det inkonsekventa fönstret, är den fråga som faktiskt avgör rundan. Förbered det andra svaret, inte bara det första.

Fler frågebanker per roll och ämne finns samlade under intervjufrågor per roll.

Hur övar du på det här högt?

Att läsa den här listan ger en känsla av igenkänning, och den känslan försvinner så fort en främling ställer frågan och väntar. Klyftan mellan att känna till ett mönster och att förklara det under lätt press är hela svårigheten med en system design-runda, och den sluts bara genom att prata.

Välj ett flöde du känner väl, en orderläggning eller en registrering, och berätta högt om hela uppdelningen: gränsen, kommunikationsvalet, konsistenshistorien, felhistorien. Gör det tills du slutar starta om meningar. Du kan köra de här prompterna mot en AI-intervjuare som ställer uppföljningsfrågor och låter dig svara med rösten i läget simulerad intervju, vilket ligger närmare verkligheten än att läsa om anteckningar.

Aaron Cao, grundare av SubcueAI, byggde övningsläget kring just den klyftan, inte kring innehållsleverans. Frågelistor finns fritt tillgängliga överallt; det kandidater saknar är repetitioner av att säga svaret medan någon väntar. Under en riktig intervju kan skrivbordsappen och webbläsartilläggets Side Panel visa strukturerade prompter medan intervjuaren pratar, även om en repeterad förklaring alltid slår en som du läser för första gången. Vad assistenten gör och inte gör beskrivs på produktöversikten.

FAQ

Hur många frågor om mikrotjänster bör jag förbereda?

Att förbereda ett flöde på djupet slår att utantillära trettio frågor. Om du kan dela upp ett enda system, försvara kommunikationsvalet, förklara konsistensmodellen och beskriva vad som går sönder vid ett partiellt fel, kan du besvara de flesta varianter en panel frågar om.

Behöver jag kunna Kubernetes för en intervju om mikrotjänster?

För de flesta backend-roller behöver du förklara vad deployment och skalning måste tillhandahålla, inte driva ett kluster. Platform- och SRE-roller är annorlunda och går verkligen djupare in på orkestrering, service mesh och rollout-strategi.

Vad är det vanligaste misstaget i de här intervjuerna?

Att dela upp längs tekniska lager i stället för affärsförmågor, vilket ger tjänster som måste driftsättas tillsammans. Det näst vanligaste är att beskriva en saga utan att någonsin säga att systemet blir eventually consistent.

Ställs frågor om mikrotjänster i kodningsrundor eller designrundor?

Mestadels i designrundor och den seniora beteenderundan, där intervjuare frågar om ett system du ägt. Kodningsrundor håller sig till algoritmer och språkflyt, även om ett hemuppgift kan be dig lägga till en tjänst i en befintlig uppsättning.

Kan en AI-assistent svara på de här frågorna åt mig live?

Den kan visa struktur medan intervjuaren pratar, och det hjälper mest när du redan kan materialet. Den ersätter inte repetition, och skärmdelning, inspelade sessioner, övervakade tester och företagsstyrda laptops ligger alla utanför scope.

Relaterade frågor

← Mer om Intervjufrågor efter roll & ämne