Sobes.tech
Junior — Middle

Jakie oznaki wskazują, że Twój poziom kompetencji zawodowych odpowiada poziomowi Middle?

sobes.tech AI

Odpowiedź od AI

Poziom Middle w rozwoju Go zwykle charakteryzuje się:

  • Pewną znajomością podstaw języka: rozumienie goroutines, kanałów, interfejsów i struktur.
  • Umiejętnością samodzielnego tworzenia i utrzymywania modułów średniego poziomu trudności.
  • Znajomością biblioteki standardowej i umiejętnością jej zastosowania do rozwiązywania praktycznych problemów.
  • Doświadczeniem w pracy z systemami kontroli wersji i pisaniem testów (jednostkowych, integracyjnych).
  • Zrozumieniem zasad projektowania i wzorców, oraz umiejętnością czytania i ulepszania cudzych kodów.
  • Uczestnictwem w przeglądach kodu, umiejętnością dawania i przyjmowania konstruktywnej krytyki.
  • Zdolnością do szacowania czasu wykonania zadań i planowania własnej pracy.

Przykład: możesz napisać funkcję, która efektywnie przetwarza dane z użyciem goroutines i kanałów, a także ją przetestować.

func sum(nums []int, c chan int) {
    total := 0
    for _, n := range nums {
        total += n
    }
    c <- total
}

func main() {
    nums := []int{1, 2, 3, 4, 5, 6}
    c := make(chan int)
    go sum(nums[:len(nums)/2], c)
    go sum(nums[len(nums)/2:], c)
    x, y := <-c, <-c
    fmt.Println(x + y) // 21
}