Technical Writer
Ce este o condiție de cursă (race condition)?
Au fost cazuri în care nu ai folosit intenționat goroutines, deși ai fi putut? De ce?
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 sau NoSQL? Când alegi unul sau altul? Sunt necesare migrații pentru 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); } }
Sistem de plată prin telefon Este necesar să implementați o arhitectură în care clientul să poată plăti cumpărăturile la casă/KS (casă de autoservire) folosind o aplicație mobilă. Plata NU se face prin SBP. Când utilizatorul cumpără produse, alege să plătească folosind aplicația. Casierul sau KS trebuie să identifice utilizatorul și să inițieze procesul de plată cu banca clientului. CJM: - Casierul/utilizatorul scanează produsele. - Trece la plată. - Se identifică la casă/KS. - Alege să plătească în aplicația Magnit. - Accesează aplicația Magnit. - Alege banca instalată pe telefonul de pe care se face plata. - În aplicația băncii, efectuează plata. - Se întoarce la ecranul rezultatului plății în aplicația Magnit. - La casă/KS primește mesaj despre plata reușită. Cerinte non-funcționale: - DAU = 1000 în magazin - Număr de magazine 500 - Număr de case - în medie 5 case. - Plata trebuie să se realizeze în maximum 2 minute. - Pagina de plată trebuie să se deschidă în maximum 250ms.
Cum alegi structura proiectului în Go?
Care sunt diferitele tipuri de excepții în Java și cum diferă acestea?
Serviciul consumă memorie lent. Cum se localizează problema?
Cum verifici integritatea datelor într-un webhook? Cum protejezi datele la nivelul transportului?
Spune-mi pe scurt despre tine.
Când lucrați cu highload: mai puține alocări sau o mai bună lizibilitate a codului?
Ce obiecte imutabile cunoști în Java?
Povestește despre un caz interesant din ultima ta companie, în jurul căruia există acum un blocaj?
Din ce motive poate un microserviciu să nu se scaleze?
Ce abordări folosești pentru construirea serviciului? Numește factorii principali ai 12-factor app
Ce modele sunt potrivite pentru validarea datelor, crearea obiectului și alegerea metodei de plată?
Ce straturi vezi în aplicație? Cum comunică între ele?
Vorbește-mi despre tranzacțiile distribuite. Care este diferența dintre orchestrare și coregrafie?
Explică ce este o interfață la nivelul unui dezvoltator junior