Golang
Welche Kriterien werden Sie bei der Auswahl eines Arbeitgebers verwenden? Was ist für Sie am wichtigsten?
Was sind Slices in Go und wie sind sie aufgebaut?
Kann ein Index auf den Spalten A, B, C nur für die Filterung nach A verwendet werden?
Wie haben Sie mit den Datenquellen interagiert? Haben Sie API-Schlüssel bereitgestellt, in Kafka geschrieben oder aus Kafka gelesen?
Sie haben eine Charge von 500 Nachrichten aus Kafka genommen, können sie aber nicht in der Datenbank speichern. Was passiert? Wie lange kann man diese 500 Nachrichten verarbeiten?
Warum suchen Sie eine neue Arbeit?
Ich habe persönlich getestet, dass Postgres die Spalten neu anordnet und dem Optimierer egal ist, in welcher Reihenfolge du die Abfrage schreibst — er wird sie selbst entsprechend umstrukturieren. Was sagst du dazu?
Haben Sie mit Transaktionen in PostgreSQL gearbeitet und mit welchen Isolationsstufen?
Welche Praktiken gibt es, um die Größe des Docker-Images zu verringern?
func (r *PayoutRepository) Payout(advertiserID, partnerID string, amount float32) error { advertiser, err := r.find(totalPayouts) // Transaktion hinzufügen if err != nil { return err } partner, err := r.find(partnerID) if err != nil { return err } advertiser.Balance -= amount partner.Hold -= amount partner.Balance += amount if err := r.save(advertiser); err != nil { return err } if err := r.save(partner); err != nil { return err } r.totalPayouts++ return nil } func (r *PayoutRepository) find(id string) (Partner, error) { p := Partner{} err := r.db.QueryRow("SELECT * FROM partners WHERE id = " + id).Scan(&p) // $1 hinzufügen if err != nil { if err == sql.ErrNoRows { return p, errors.New("Partner nicht gefunden") } return p, err } return p, nil }
Was möchtest du jetzt — was sind deine Erwartungen an die neue Arbeit?
Wie ist die Kommunikation zwischen Microservices organisiert?
Gibt es eine Karriereleiter? Möchtest du dich technisch weiterentwickeln oder in Richtung Management/Teamleitung?
Welche der genannten Synchronisationsmittel mussten in deinem Projekt verwendet werden?
Was bedeutet die Benennung im RPC-Stil? In unserem Fall gRPC und REST — worin unterscheiden sie sich?
[Name] fragte: Hast du mit Cache-Ebenen gearbeitet — im Speicher und verteilt? Kennst du die Kanäle und select in Go?
Kann man den Profiler in der Produktion aktivieren?
Vielleicht kannst du etwas anderes als Mutex und sync.Map vorschlagen, um die Schreibsicherung zu gewährleisten?
Mussten Sie jemals die Zeit verfolgen, Aufgaben in einem System erfassen?
Wie man entscheidet, ob ein Produkt mit etwa 1000 Nutzern eine Microservices- oder Monolith-Architektur benötigt?