Technical Writer
Co je to race condition (stav závodu)?
Byly případy, kdy jste záměrně nepoužil gorutiny, i když jste je mohl? Proč?
public class Main { public static void main(String[] args) { Integer a = 127; Integer b = 127; Integer c = 128; Integer d = 128; System.out.println(a == b); System.out.println(c == d); } } package main import "fmt" func main() { x := 1 defer func() { fmt.Println("defer:", x) }() x = 2 fmt.Println("now:", x) }
SQL nebo NoSQL? Kdy co vybíráš? Jsou migrace pro MongoDB potřeba?
public class Main { public static void main(String[] args) { Integer a = 127; Integer b = 127; Integer c = 128; Integer d = 128; System.out.println(a == b); System.out.println(c == d); } }
Systém platby pomocí telefonu Je nutné implementovat architekturu, ve které může zákazník platit nákupy na pokladně/KS (self-service pokladna) pomocí mobilní aplikace. Platba NE probíhá přes SBP. Uživatel při nákupu zboží volí platbu pomocí aplikace. Pokladna nebo KS musí identifikovat uživatele a spustit proces platby pomocí banky klienta. CJM: - Pokladní/klient skenuje zboží. - Přechází k platbě. - Identifikuje se na pokladně/KS. - Vybere platbu v aplikaci Magnit. - Přechází do aplikace Magnit. - Vybere banku nainstalovanou na telefonu, ze které se platba provádí. - V aplikaci banky provede platbu. - Vrátí se na obrazovku výsledku platby v aplikaci Magnit. - Na pokladně/KS obdrží zprávu o úspěšné platbě. Nefunkční požadavky: - DAU = 1000 v obchodě - Počet obchodů 500 - Počet pokladen - v průměru 5 pokladen. - Platba musí být dokončena maximálně za 2 minuty. - Stránka platby se musí otevřít maximálně za 250 ms.
Jak vybíráš strukturu projektu v Go?
Jaké jsou různé druhy výjimek v Javě a v čem se liší?
Služba pomalu spotřebovává paměť. Jak problém lokalizovat?
Jak zkontrolovat integritu dat ve webhooku? Jak chránit data na úrovni přenosu?
Řekni mi stručně o sobě.
Při práci s highload: méně alokací nebo lepší čitelnost kódu?
Jaké neproměnné objekty znáš v Javě?
Pověz mi o nějakém zajímavém případě ve tvé poslední firmě, kolem čeho je teď bottleneck?
Proč se mikroservis nemůže škálovat?
Jaké přístupy používáš pro stavbu služby? Uveď hlavní faktory 12-factor app
Jaké vzory jsou vhodné pro validaci dat, tvorbu objektu a výběr platební metody?
Jaké vrstvy vidíš v aplikaci? Jak spolu komunikují?
Pověz mi o distribuovaných transakcích. Jaký je rozdíl mezi orchestrací a choreografií?
Vysvětli, co je to rozhraní na úrovni junior vývojáře