Golang
Jakie kryteria będziesz stosować przy wyborze pracodawcy? Co jest dla ciebie najważniejsze?
Czym są slices w Go i jak są zbudowane?
Czy można użyć indeksu na kolumnach A, B, C tylko do filtrowania po A?
Jak współdziałałeś z źródłami danych? Dostarczałeś klucze API, pisałeś do Kafka czy czytałeś z Kafka?
Wziąłeś paczkę 500 wiadomości z Kafka, ale nie możesz ich zapisać w bazie danych. Co się stanie? Jak długo można przetwarzać te 500 wiadomości?
Dlaczego szukasz nowej pracy?
Osobiście testowałem, że Postgres przestawia kolumny i optymalizatorowi nie jest obojętne, w jakiej kolejności napiszesz zapytanie — sam je przebuduje jak trzeba. Co o tym myślisz?
Czy pracowałeś z transakcjami w PostgreSQL i z jakimi poziomami izolacji?
Jakie praktyki istnieją, aby zmniejszyć rozmiar obrazu Docker?
func (r *PayoutRepository) Payout(advertiserID, partnerID string, amount float32) error { advertiser, err := r.find(totalPayouts) // dodaj transakcję 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) // dodaj $1 if err != nil { if err == sql.ErrNoRows { return p, errors.New("partner nie znaleziony") } return p, err } return p, nil }
Czego chcesz teraz — jakie masz oczekiwania wobec nowej pracy?
Jak zorganizowana jest komunikacja między mikroserwisami?
Czy istnieje ścieżka kariery? Chcesz rozwijać się technicznie czy w kierunku zarządzania/lidera zespołu?
Które z wymienionych środków synchronizacji musiałeś użyć w swoim projekcie?
Co oznacza nazewnictwo w stylu RPC? W naszym przypadku gRPC i REST — czym się różnią?
[imię] zapytał: czy pracowałeś z poziomami pamięci podręcznej — w pamięci i rozproszonymi? znasz kanały i select w Go?
Czy można włączyć profilera na produkcji?
Może zasugerujesz coś innego oprócz Mutex i sync.Map do ochrony zapisu?
Czy kiedykolwiek musiałeś śledzić czas, prowadzić ewidencję zadań w jakimś systemie?
Jak określić, czy produkt z około 1000 użytkownikami potrzebuje architektury mikroserwisów czy monolitycznej?