Sobes.tech
Junior — Middle

¿Qué signos indican que su nivel de competencia profesional corresponde al nivel Middle?

sobes.tech AI

Respuesta de la IA

El nivel Middle en desarrollo de Go generalmente se caracteriza por:

  • Dominio seguro de los fundamentos del lenguaje: comprensión de goroutines, canales, interfaces y estructuras.
  • Capacidad para desarrollar y mantener módulos de dificultad media de forma independiente.
  • Conocimiento de la biblioteca estándar y habilidad para aplicarla en la resolución de problemas prácticos.
  • Experiencia con sistemas de control de versiones y escritura de pruebas (unitarias, de integración).
  • Comprensión de principios de diseño y patrones, y capacidad para leer y mejorar código ajeno.
  • Participación en revisiones de código, y habilidad para dar y recibir críticas constructivas.
  • Capacidad para estimar tiempos de ejecución de tareas y planificar su trabajo.

Ejemplo: puedes escribir una función que procese datos de manera eficiente usando goroutines y canales, y además cubrirla con pruebas.

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
}