Golang
Tell about a case when you proposed an initiative and defended it.
How is the interface in Go structured?
Where do you want to develop — technically or more in management?
What is DDD?
What operating systems have you worked with? What did you use for virtualization and deployment automation?
How was it formalized in Petrovich and previously in Gazpromneft?
Which tasks do you prefer more — product-related or technical?
```go func main() { wg := sync.WaitGroup{} wg.Add(8) for i := 0; i < 10; i++ { go func(wg *sync.WaitGroup, i int) { defer wg.Done() fmt.Println(i) }(&wg,i) } wg.Wait() fmt.Println("some text") time.Sleep(1 * time.Minute) fmt.Println("some text2") } ```
What are the main parts of the Transactional Outbox system?
Do you understand correctly that with cache-aside, we still need to go to the cache and invalidate data there when updating data in the database?
Tell about slices in Go, their structure and internal headers.
How are Swiss Tables organized in Go?
What is DNS and how does it work?
What is gRPC in your own words and have you worked with it?
```go Type User struct { ID int Name string } var ( dbHits int ) func getUserInfoFromDB(id int) User { time.Sleep(100 * time.Millisecond) dbHits++ return User{ID: id, Name: fmt.Sprintf("User-%d", id)} } func main() { var wg sync.WaitGroup for i := 0; i < 5; i++ { wg.Add(1) go func(i int) { defer wg.Done() fmt.Println(getUserInfoFromDB(i)) }(42) } wg.Wait() fmt.Println("DB hits:", dbHits) } ``` Fix the error in the code related to concurrent access to the dbHits variable.
// Given sorted slices A and B. Slices keep unique values. Produce a union of them into sorted slice RES without duplicates. // A = [1, 3, 5, 7] // B = [1, 2, 3, 7, 9] // RES = [1, 2, 3, 5, 7, 9]
What does the fork() system call do?
Have you ever had to choose between technologies or integration approaches — for example, asynchronously or synchronously?
Tell about your team composition.
What primitive approach allows to write all values absolutely in parallel and correctly, considering we have a fixed array and a fixed number of goroutines?