Sobes.tech

Golang

Parle-moi plus en détail de l'histoire de l'optimisation de la vitesse du rapport : ce que tu as fait, avec quoi tu as été confronté, quelles ont été les difficultés, comment tu les as résolues ?

161

```go func main() { wg := sync.WaitGroup{} for i := 0; i < 10; i++ { wg.Add(1) go func(wg sync.WaitGroup) { defer wg.Done() fmt.Println(i) }(wg) } wg.Wait() fmt.Println("some text") time.Sleep(1 * time.Minute) fmt.Println("some text2") } ```

161

Où est-il préférable de déclarer l'interface : à l'endroit de l'implémentation ou à l'endroit de la consommation?

Middle+
158

Parle-moi de ton expérience, des tâches intéressantes, de ce que tu aimes faire, de ce dont tu es fier.

156

La séquence de sortie de 100 goroutines sera-t-elle la même à chaque exécution ? De quoi cela dépend-il ?

156

Parle-moi brièvement de toi

Middle+
155

Comment optimiser une requête SQL analytique lourde sur une grande base de données de production?

Middle+
153

Supposons que la tâche est en Go version 1.18. Qu'est-ce qui changera dans le comportement du programme?

152

Quelle est la différence entre les moteurs MergeTree, ReplicatedMergeTree et Distributed dans ClickHouse?

Middle+
148

Connais-tu l'architecture de Kubernetes, quelles entités existent, qu'est-ce que le plan de contrôle?

148

Que ferais-vous si vous proposiez une solution architecturale, mais que le tech lead n'était pas d'accord avec vous et que vous étiez sûr d'avoir raison?

Middle+
146

Comment fonctionne le système de modération pour détecter le contenu interdit, y compris les images similaires?

Middle+
146

Comment est-il possible d'exécuter plusieurs environnements isolés sur une seule machine locale (Docker/conteneurisation) ?

132

Que verrons-nous à l'écran lors du lancement du programme si nous corrigeons le bug avec wg (passer le pointeur) ?

128

Comment faire en sorte que la cinquième ligne, l'unité ajoutée via append, soit également visible ? Sans changer la signature de la fonction fill.

126

```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") } ```

124

Grâce à quoi a-t-on réussi à réduire le temps de traitement des opérations de 120 à 5 secondes?

Middle+
122
/2