Java
Vəzifə "latensiyanı azaltmaq" kimi formalaşdırılıb və həllini özünüz axtardınızmı?
Heç vaxt komanda rəhbəri kimi çıxış etmisinizmi?
Kafka + Redis sıralı dəst + xarici planlayıcı ilə gecikdirilmiş bildirişlər necə işləyir?
Java-da hansı zibillik toplayıcıları (Garbage Collectors) bilirsiniz? Müxtəlif növlərdən istifadə üçün tövsiyələr varmı?
AI/ML məhsulları ilə işləmə təcrübəniz varmı?
Stack baxımından nə daha üstün olur?
İnkişaf prosesindən (Agile/Scrum) danış. Tapşırıqlar necə qiymətləndirilir?
7. İdarəetmə panelində yeni məhsulların əlavə edilməsi formasını sınaqdan keçirirsiniz. Yeni məhsul yaradırsınız, Yadda saxla düyməsini klikləyirsiniz və ağ boş ekran görürsünüz. Növbəti addımlarınızı təsvir edin.
Stream API-də iki əsas əməliyyat növü hansılardır?
Spring Data və Hibernate ilə işlədinizmi? Hər hansı performans problemlərini həll etdinizmi?
Mikroxidmət memarlığından istifadə etməməyin lazım olmadığı bir nümunə göstərin və bir neçə səbəb qeyd edin.
Istio hansı tapşırıqlar üçün uyğundur?
Köhnə dəyərlərin çıxarılması ilə LRU keşi həyata keçirin (əsas tətbiq)
Hesabat sistemində hansı Kafka mövzuları olacaq, kim istehsal edir və kim istehlak edir?
SQL sorğusu yazın: üç və ya daha çox müəllifi olan bütün kitabların adlarını seçin.
long dəyişəni üçün volatile istifadə etmək mümkündürmü və hansı hallarda bu təhlükəsizdir?
/** * İnterfeys bankomatın hardware ilə qarşılıqlı əlaqəsi üçün. */ interface Hardware { /** * 50, 100, 500, 1000, 5000 nominal dəyərlərdə banknotların sayını ehtiva edən massiv qaytarır. * Metod yavaş işləyir və səs-küy yaradır. * * @return hər element müəyyən bir nominal dəyərə uyğun banknotların sayını göstərən massiv. * Məsələn, [10, 20, 30, 40, 50] aşağıdakı mənanı verir: * - 50 rubl nominalı üçün 10 banknot * - 100 rubl nominalı üçün 20 banknot * - 500 rubl nominalı üçün 30 banknot * - 1000 rubl nominalı üçün 40 banknot * - 5000 rubl nominalı üçün 50 banknot */ int[] getBillsCounts(); /** * Göstərilən banknotları çıxış qutusuna yükləyir. * * @param billsCounts [50, 100, 500, 1000, 5000] nominal dəyərlərdə banknotların sayı olan massiv. * Məsələn, [0, 1, 0, 2, 0] aşağıdakı mənanı verir: * - 0 banknot 50 rubl * - 1 banknot 100 rubl * - 0 banknot 500 rubl * - 2 banknot 1000 rubl * - 0 banknot 5000 rubl */ void giveBills(int[] billsCounts); } /** * Bankomatın işləmə loqikasını həyata keçirən sinif. * Burada kod yazılmalıdır */ class MyATM { /** * Hardware hissəsi. */ Hardware hardware; public boolean withdraw(int amount) { int[] counts = hardware.getBillsCounts(); int[] nom = {50, 100, 500, 1000, 5000}; int[] toGive = new int[5]; for (int i = 4; i >= 0; i--) { int needed = amount / nom[i]; int use = Math.min(needed, counts[i]); toGive[i] = use; amount -= use * nom[i]; } if (amount != 0) { return false; } hardware.giveBills(toGive); return true; } }
Asılılıq İnversiyası prinsipini nə zaman tətbiq etməli və nə zaman etməməli (YAGNI ilə əlaqəsi)
Spring-də hansı scope-lər var? Singleton scope nədir?
CAP teoremindən danış. Nədir və nə üçün lazımdır?