Golang
Dlaczego komputer nie potrafi poprawnie dodawać liczb dziesiętnych?
Czy DevOps i analityk to ta sama osoba? Czy był analitykiem danych lub full-stack, analitykiem systemów/biznesowym?
Jak oceniasz swój poziom: middle, middle+? Czego brakuje do seniora?
Jak wywołać panikę podczas pracy z kanałem? Co się dzieje podczas operacji na kanale nil i zamkniętym kanale?
Jak to zrobić na poziomie Go — ideowo, aby wysłać odpowiedź użytkownikowi i jednocześnie wysłać dane do analityki?
func (p *Pool) Stop() { p.mu.Unlock() // Teraz można bezpiecznie zamknąć kanał close(p.tasks) // sygnał dla workerów: nie będzie nowych zadań, odczytaj resztę p.wg.Wait() // czekaj na zakończenie wszystkich goroutine p.cancel() // anuluj kontekst na wszelki wypadek fmt.Println("Pool zatrzymany.") } // ForceStop wymusza zatrzymanie wszystkich workerów bez oczekiwania na zakończenie zadań. // Workerzy zostaną natychmiast przerwani przez kontekst. func (p *Pool) ForceStop(timeout time.Duration) { fmt.Printf("Wymuszone zatrzymanie puli (timeout: %v)...\n", timeout) // Blokuje dodawanie nowych zadań p.mu.Lock() p.isOpen = false p.mu.Unlock() // Zamknij kanał, aby workerzy nie brali nowych zadań close(p.tasks) // Anuluj kontekst – to przerwie wszystkie wykonywane zadania p.cancel() // Daj ograniczony czas na zakończenie done := make(chan struct{}) go func() { p.wg.Wait() close(done) }() select { case <-done: fmt.Println("Pool wymuszenie zatrzymany (wszystkie worker zakończone)") case <-time.After(timeout): fmt.Println("Pool wymuszenie zatrzymany (timeout, mogą pozostać zawieszone goroutine)") } }
Jakie protokoły warstwy aplikacji działają na TCP i UDP?
Czym są replikacja, sharding i partycjonowanie?
typ Interfejs Sem { Lock() error //zwraca błąd, jeśli kanał jest pełny TryLock() bool // po prostu próbujemy zablokować, jeśli się uda, zwraca true Release() //zwolnienie kanału Cap() int // liczba gorutyn w pracy FreeSpace() int //pokazuje, ile jest wolnego miejsca w kanale } //struktura //channel - pomyśleć o buforze //capacity int //mutex
Ile masz komercyjnego doświadczenia w Go?
Opowiedz o sobie, swoim doświadczeniu, jak wybrałeś kierunek IT i rozwój, dlaczego akurat Go, jak awansowałeś po szczeblach kariery?
Czym są procesy zombie i jak z nimi walczyć?
Czym jest ACID? Opowiedz o każdej właściwości.
Dlaczego nie można było wszystkiego zbudować na ClickHouse i po prostu wyświetlić metryki na froncie przez serwis?
Opowiedz mi o zespole i metodologii pracy.
Opisz wymagania dotyczące aplikacji Python + OpenGL do morfingu obiektów z suwakiem.
Czy pracowałeś z drzewami AST w Go? Jakie wady widzisz w obecnej implementacji?
Opowiedz o ostatnim błędzie (incydent w produkcji) — jak go znaleźli, jak rozwiązali, kto rozwiązał
Jak będziesz pracować z dwoma modelami w Blenderze, jeśli nigdy ich nie używałeś?
Jakie mogą wystąpić problemy przy używaniu triggerów?