Golang
Разкажи ми за работния процес: как се поставяха задачите, кой репозитори използваше, какви бяха контурите?
/* На вход има масив од броеви nums со должина n. Секој број од масивот може да биде уникатен или да се појави двапати. Броевите се во опсегот [1, n]. Треба да напишете функција која ќе врати масив што содржи само броеви што се појавуваат двапати. Примери: Влез: nums = [4, 3, 2, 7, 8, 2, 3, 1] Излез: [2, 3] Влез: nums = [2, 2, 1] Излез: [2] */
Къде се съхраняват низовете в Go: в heap или в стека?
Архитектурна задача: услугата за известия използва шаблони от услугата за администриране. Как да осигурим надеждност при възможен срив на администрацията?
Практическо задание: реализирайте функцията FastestSearcher, която стартира тестове на няколко търсачки паралелно и връща името на най-бързата, времето за отговор и грешка (ако поне една върне грешка).
Каква е разликата между SELECT FOR UPDATE и SELECT FOR SHARE?
Ако направите синхронен заявка към базата данни или съседна услуга и заявката отнема 5 секунди, какво ще се случи с нишката на операционната система, на която е стартирана услугата, докато заявката се изпълнява?
Как да създадем генерична структура от данни (работеща с всеки тип стойност) в Go?
основен пакет func oneStep(yield func() bool) { yield() } func f() { за диапазон oneStep { отпечатайте("f ") recover() } } func g() { за диапазон 1 { отпечатайте("g ") recover() } } func checkPanic(loop func(), c chan<- struct{}) { defer func() { println(recover() != nil) c <- struct{}{} }() defer loop() panic(123) } func main() { c := make(chan struct{}, 1) go checkPanic(f, c) <-c go checkPanic(g, c) <-c }
По какъв принцип беше избран REST или gRPC във вашите проекти?
Какви направления на проекти разглеждате (финтех, търговия на дребно, инфраструктура и т.н.)?
Какъв е синтаксисът на транзакциите в Go/SQL?
Очаквания за заплата?
Защо не използвахте Redis вместо съхранение в базата данни?
Какво знаеш за нас като за продукт?
Това означава ли, че всичко все пак ще приключи след този тайм-аут? Тоест, може все още нещо да не работи — какъв е проблемът тук?
Разкажи за select в Go.
Какво е процес и нишка в ОС (Linux)?
Разкажи ми за патърна Transactional Outbox — какво е и за какво се използва?
Разкажи ми какво знаеш за MVCC. Какво се случва при UPDATE на запис от гледна точка на MVCC (създаване на нова версия на реда, какво става със старата)? Кога VACUUM почиства старите версии на редовете?