Java
მოსაზრება იყო ფორმულირებული როგორც "ლატენციის შემცირება", და თქვენ თვითონ ეძებდით ამ გადაწყვეტილებას?
დასაკავშირებელი ფუნქციის ლიდერის როლში ოდესმე გსმენია?
როგორ მუშაობს Kafka + Redis sorted set + გარე დაგეგმვისთვის დაგვიანებული შეტყობინებებისათვის?
Java-ში რა ნაგვის შეგროვების სისტემებს (Garbage Collectors) იცნობთ? არსებობს თუ არა რეკომენდაციები სხვადასხვა ტიპების გამოყენებაზე?
გაქვს გამოცდილება AI/ML პროდუქტებთან მუშაობაში?
რა არის უპირატესი სტეკში?
გთხოვთ, მოგვიყევით განვითარების პროცესზე (Agile/Scrum). როგორ აფასებენ დავალებებს?
7. თქვენ ტესტავთ ახალი პროდუქტის დამატების ფორმას ადმინისტრატორის პანელზე. ქმნით ახალ პროდუქტს, კლიკავთ შენახვა ღილაკს და ხედავთ თეთრ ცარიელ ეკრანს. აღწერეთ თქვენი შემდეგი ნაბიჯები.
Stream API-ში ორი ძირითადი ოპერაციის ტიპი რა არის?
თქვენ ოდესმე მუშაობდით Spring Data და Hibernate-თან? რა პრობლემებს გადაჭრიდით შესრულებაში?
მიწოდეთ მაგალითი, როდესაც მიკროწესვიან არქიტექტურას გამოყენება საჭირო არ არის და ჩამოთვალეთ რამდენიმე მიზეზი.
Istio რომელი დავალებებისთვის არის შესაფერისი?
შეასრულეთ LRU-კეში, სადაც ძველი მნიშვნელობები ამოიღება (ძირითადი განხორციელება)
რა Kafka თემები იქნება ანგარიშების სისტემაში, ვინ აწარმოებს და ვინ მოიხმარს?
წერეთ SQL სვეტური: აირჩიეთ ყველა წიგნის სახელები, რომელთაც სამი ან მეტი ავტორი აქვთ.
შესაძლებელია volatile-ის გამოყენება long ცვლადისთვის და რომელ სცენარებში ეს უსაფრთხოა?
/** * ინტერფეისი აპარატურის ნაწილთან ურთიერთქმედებისთვის ATM-ის. */ interface Hardware { /** * აბრუნებს მასივს, სადაც მოცემულია ბანკნოტების რაოდენობა ნომინალებით 50, 100, 500, 1000, 5000. * მეთოდი მუშაობს ნელი და ქმნის ხმაურს. * * @return მასივი, სადაც თითოეული ელემენტი შეესაბამება კონკრეტული ნომინალის ბანკნოტების რაოდენობას. * მაგალითად, [10, 20, 30, 40, 50] ნიშნავს: * - 50 რუბლიანი ბანკნოტების 10 ერთეული * - 100 რუბლიანი ბანკნოტების 20 ერთეული * - 500 რუბლიანი ბანკნოტების 30 ერთეული * - 1000 რუბლიანი ბანკნოტების 40 ერთეული * - 5000 რუბლიანი ბანკნოტების 50 ერთეული */ int[] getBillsCounts(); /** * იტვირთავს გამოტანის ყუთში მითითებულ ბანკნოტებს. * * @param billsCounts ბანკნოტების რაოდენობა ნომინალებით [50, 100, 500, 1000, 5000]. * მაგალითად, [0, 1, 0, 2, 0] ნიშნავს: * - 50 რუბლიანი ბანკნოტების 0 ერთეული * - 100 რუბლიანი ბანკნოტების 1 ერთეული * - 500 რუბლიანი ბანკნოტების 0 ერთეული * - 1000 რუბლიანი ბანკნოტების 2 ერთეული * - 5000 რუბლიანი ბანკნოტების 0 ერთეული */ void giveBills(int[] billsCounts); } /** * კლასი, რომელიც რეალიზაციას უწევს ATM-ის მუშაობის ლოგიკას. * აქ უნდა დაწეროთ კოდი */ class MyATM { /** * ATM-ის აპარატურის ნაწილი. */ 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; } }
როდის უნდა გამოიყენოთ Dependency Inversion პრინციპი და როდის არა (YAGNI-სთან კავშირი)
Spring-ში რა scope-ები არსებობს? რა არის singleton scope?
CAP თეორემის შესახებ ისაუბრე. რა არის და რა მიზნით გამოიყენება?