// Въпрос 4. Какво ще се изведе на екрана package main import "fmt" func subis(is []int) []int { is = append(is, 5) return append(is, 6) } func main() { is := []int{1, 2, 3, 4} subis(is[2:3]) fmt.Println(is) }
Golang
Вие ли сте създали и изчислили логистичните маршрути?
Какво ви мотивира да работите като програмист?
Как да решим, ако операцията продължава 10–12 минути, данните се променят активно и се извършва активен запис? Как използвахте репликацията?
Откъде получавате данните? Има ли логисти, които изпращат данните и ги съхранявате?
// Въпрос 2. Какво ще се покаже на екрана package main import "fmt" func main() { { defer fmt.Println(1) } defer fmt.Println(2) }
Какво кеширахте? Само речници?
Защо напуснахте?
Какъв е вашият опит с PostgreSQL? Трябваше ли да пишете сложни заявки или да извършвате оптимизации?
Каква е разликата между JOIN и UNION?
Как писахте данните в базата — по един запис или на партиди? Можеше ли в едно Kafka съобщение да има 500 записа?
Работили ли сте с RabbitMQ? Разкажете за Kafka — ако има 3 партиции и 1 брокер, как се разпределят съобщенията?
Откъде идваха данните при вас? Как течаха към вас?
// Въпрос 2. Какво ще се покаже на екрана package main import "fmt" func main() { { defer fmt.Println(1) } defer fmt.Println(2) panic("aaaa") defer func(){ if r := recover(); r != nil{ fmt.Println("Обработена паника", r) } } }
DevOps настроиха основния пайплайн, или ти сам се занимаваше с манифестите на Kubernetes или обикаляше кластера, гледаше логовете?
Тестерите сами ли са тествали всичко или са тествали всичко?
Как работеше Kubernetes?
Какви бяха вариантите след ръчното обработване на съобщенията от DLQ? Какво правихте с тях технически?
Разкажи как си оптимизирал заявките — написано е, че намалението е от 10–12 минути до 5–7 минути. Какъв е този отчет, който толкова дълго се изпълнява? Как го оптимизираше?
Какво правехте с отстъпването на потребителя (consumer lag) при пренастройка или спиране на услугата?