Golang
Welche Programmiersprache verwendest du hauptsächlich? Nutzt du C++ oder Python?
Wofür wird der Kontext verwendet? Wie wurde er in der Praxis genutzt?
Kennst du das Prinzip der minimalen Rechte (Principle of Least Privilege)?
Wie war das Team organisiert? Wie viele Leute, wie wurden sie nach Domänen aufgeteilt?
Was ist ein inode in Linux?
Erzähle mir von deiner Erfahrung bei deinem letzten Arbeitsplatz
Verwenden Sie TDD? Wie decken Sie Ihren Code mit Tests ab?
Was passiert, wenn man den Kontext bei einer Datenbankabfrage nicht übergibt?
Erzählen Sie uns von Ihrer Berufserfahrung, insbesondere bei Ihrer letzten Stelle.
Das System beginnt zu bremsen — wie wirst du die Ursache suchen?
Wie gehst du bei der Bewältigung einer komplexen Aufgabe im Legacy-Code mit verschiedenen Technologien (Go, Bash, Python, Jenkins) in einem Sprint vor?
Welche anderen Strukturen werden neben B-Bäumen für Indizes in Datenbanken verwendet?
Du hast überall die serial ID gemacht. Was bedeutet das?
Wie planen Sie, die Morphing-Animation eines Apfelbaums in einen Apfel umzusetzen? Welche Ansätze sehen Sie?
Was ist der CAP-Satz und geben Sie Beispiele für CP- und AP-Systeme?
Welche anderen Methoden gibt es, um eine Map vor gleichzeitigen Zugriffen zu schützen, außer dem Mutex?
Gibt es irgendwelche Indizes in dieser Tabelle?
Wenn ein Dienst zu viel Speicher verbraucht, worauf sollte man im Profiler achten? Wie kann man die Allokationen reduzieren?
func fetch(ctx context.Context, u User) (string, error) { // etwas im Netzwerk machen time.Sleep(time.Millisecond * 10) // Verzögerung simulieren return u.Name, nil //return "", errors.New("irgendein Fehler") } func Do(ctx context.Context, users []User) (map[string]int64, error) { var mu sync.Mutex var wg sync.WaitGroup ch := make(chan error, len(users)) names := make(map[string]int64, 0) ctxWithCancel, cancel := context.WithCancel(ctx) wg.Add(len(users)) for _, u := range users { go func() { defer wg.Done() select { case name, err := fetch(ctx, u): if err != nil { ch <- err return } mu.Lock() names[name] = names[name] + 1 mu.Unlock() case <-ctxWithCancel.Err: } }() }
Warum hast du das vorherige Unternehmen verlassen?