Golang
// Al actualizar un pedido, debemos enviar los datos del pedido a varios servicios (APIs de terceros) // el número de servicios está creciendo (puede ser miles+) // escribimos el código, al principio todo iba bien, pero con el tiempo nuestro servicio empezó a consumir mucha memoria func (s *orderService) SendOrder(ctx context.Context, hosts []string, order Order) { for i := 0; i < len(hosts); i++ { go func() { // Imaginemos que esto es una llamada de red larga response, err := s.httpClient.Send(ctx, hosts[i], order) if err != nil { s.logger.Error(ctx, "falló al enviar", err) return } s.logger.Info(ctx, "éxito", response) }() } }
¿Por qué se añadió el servicio de verificaciones antifraude a la zona de responsabilidad del candidato?
¿Cómo funciona el proceso de lanzamiento? ¿Cómo fue el último lanzamiento con su participación?
""" Los asientos en el cine están dispuestos en una fila. Un espectador que acaba de llegar elige un asiento, para sentarse lo más lejos posible de los demás espectadores en la fila. Es decir, la distancia desde ese asiento, que ocupará el espectador, hasta el espectador más cercano debe ser máxima. Se garantiza que siempre hay asientos libres en la fila y que ya hay al menos un espectador sentado. Escriba una función que, dada una fila de asientos (una matriz de ceros y unos), devuelva la distancia (número de espacios entre los asientos) desde el asiento elegido hasta el espectador más cercano. [1, 0, 0, 0, 1] -> 2 [1, 0, 1, 0, 0, 1, 0, 0, 1] -> 2 [1, 0, 1, 0] -> 1 [0, 0, 0, 1] [1, 0, 0, 0] place = ((right - left) / 2) """ func maxPlaces(arr []int) int { }
Su servicio era una API utilizada por otros servicios. En Redis almacenaban datos para enriquecimiento — ¿por qué no consultaban en cada solicitud el servicio de directorios (sobre almacenes, etc.)?
¿Cuál es la característica especial de las goroutines en Go? ¿Por qué son ligeras?
¿Cómo funciona la variable condicional (sync.Cond) en Go?
¿Cómo manejaste los duplicados en Kafka?
¿Qué son las ceremonias de Scrum?
¿Cómo se organizó el diseño de la arquitectura en su equipo, qué herramientas utilizaron?
Indique las asintóticas medias de tiempo y memoria adicional para la ordenación rápida (in-place) al ordenar un segmento de n elementos O(n log n) en tiempo, O(log n) en memoria de pila O(n log n) en tiempo, O(1) en memoria O(n^2) en tiempo, O(log n) en memoria de pila O(n log n) en tiempo, O(n) en memoria
Cuéntame sobre tu experiencia laboral en [empresa]. ¿En qué estado estaba el proyecto cuando llegaste?
¿En qué lenguaje de programación escribes?
¿Qué problemas pueden surgir al usar memoria compartida con hilos? ¿Qué es una condición de carrera (race condition)?
¿Cómo vas a elegir tu nuevo lugar de trabajo? — ¿Qué es importante?
Nombra todos los métodos HTTP (verbos) que conoces.
¿Qué haces si te das cuenta de que los plazos se acortan y no vas a poder terminar a tiempo?
El trabajador tarda mucho tiempo (2 minutos), la transacción permanece en la base en caso de fallo — ¿qué hacer?
¿Qué propiedades debe tener una buena función hash?
Cuéntame cómo optimizaste las consultas. De 10-12 minutos a 5-7 — ¿qué informes son esos que tardan tanto en ejecutarse?