Technical Writer
Czym jest race condition (warunek wyścigu)?
Czy zdarzały się sytuacje, gdy celowo nie używałeś goroutines, choć mogłeś? Dlaczego?
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 czy NoSQL? Kiedy co wybierasz? Czy potrzebne są migracje dla MongoDB?
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); } }
System płatności telefonem Należy zaimplementować architekturę, w której klient może opłacać zakupy przy kasie/KS (kasa samoobsługowa) za pomocą aplikacji mobilnej. Płatność NIE odbywa się przez SBP. Gdy użytkownik kupuje produkty, wybiera opcję zapłaty przez aplikację. Kasa lub KS musi zidentyfikować użytkownika i uruchomić proces płatności za pomocą banku klienta. CJM: - Kasjer/klient skanuje produkty. - Przechodzi do płatności. - Identyfikuje się na kasie/KS. - Wybiera zapłatę w aplikacji Magnit. - Przechodzi do aplikacji Magnit. - Wybiera bank zainstalowany na telefonie, z którego dokonuje się płatność. - W aplikacji bankowej dokonuje płatności. - Wraca do ekranu wyników płatności w aplikacji Magnit. - Kasa/KS otrzymuje wiadomość o pomyślnym opłaceniu. Wymagania niefunkcjonalne: - DAU = 1000 w sklepie - Liczba sklepów 500 - Liczba kas - średnio 5 kas. - Płatność powinna zająć maksymalnie 2 minuty. - Strona płatności powinna się otworzyć maksymalnie w 250 ms.
Jak wybierasz strukturę projektu w Go?
Jakie są różne rodzaje wyjątków w Java i czym się różnią?
Usługa powoli zużywa pamięć. Jak zlokalizować problem?
Jak sprawdzić integralność danych w webhooku? Jak chronić dane na poziomie transportu?
Opowiedz krótko o sobie.
Przy pracy z highload: mniej alokacji czy lepsza czytelność kodu?
Jakie niezmienne obiekty znasz w Java?
Opowiedz o ciekawym przypadku w twojej ostatniej firmie, wokół czego jest teraz wąskie gardło?
Z jakich powodów mikroserwis może nie skalować się?
Jakie podejścia stosujesz do budowy usługi? Wymień główne czynniki z 12-factor app
Jakie wzorce są odpowiednie do walidacji danych, tworzenia obiektu i wyboru metody płatności?
Jakie warstwy widzisz w aplikacji? Jak ze sobą komunikują?
Opowiedz mi o rozproszonych transakcjach. Jaka jest różnica między orkiestracją a choreografią?
Wyjaśnij, czym jest interfejs na poziomie junior developera