Golang
¿ Volverías a esos proyectos, en esas empresas, en las que ya trabajaste?
¿Cómo se gestiona la memoria en Go? ¿Cómo funciona el recolector de basura?
// Se dan dos secuencias ordenadas en orden no decreciente de números enteros. // Es necesario devolver todos los elementos de la primera secuencia que no estén en la segunda. // 0 <= N <= 10^6 // -10^9 <= a[i] <= 10^9 // [1] // [2, 3, 4, 5, 6] // [1] // [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, ...] // [1] // [2, 3, 4, 5, 6, 7, 8] func filter(first []int, second []int) []int { res := make([]int, 0, len(first)) i, j := 0, 0 for i < len(first) && j < len(second) { if first[i] < second[j] { result = append(result, first[i]) i++ } else if first[i] > second[j] { j++ } else { i++ j++ } } for i < len(first) { result = append(result, first[i]) i++ } return result }
¿Por qué elegiste map para la caché en lugar de sync.Map?
¿Cuál es su nivel mínimo de compensación confortable?
¿Qué pasará si intentas escribir en un canal cerrado?
¿Cómo corregir un código con condición de carrera para que funcione de manera determinista?
¿Solo tienes Go o algo más? ¿Qué tecnologías relacionadas utilizas?
¿Qué es un balanceador de carga y en qué se diferencia entre balanceo de entrada y salida?
Pregunta sobre el servicio lento Tomando como ejemplo la creación de un pedido. Hay una solicitud al servicio y una respuesta, entre estas dos acciones almacenamos en análisis los productos que se pidieron (por ejemplo, para contar la popularidad de los productos). El servicio de análisis funciona lentamente o a veces se agota, y no logramos responder a tiempo, perdiendo pedidos. ¿Qué hacer para dejar de perder pedidos y, por consiguiente, dinero? Idear cómo paralelizar el pedido y el análisis.
¿Cómo se manejan los errores en Go? ¿En qué se diferencian errors.Is y errors.As?
Imagina una situación: no puedes encontrar un terreno común con un tester en tu equipo que constantemente 'te molesta'. ¿Cómo interactuarías?
¿Cuánto tiempo llevas programando en Go? ¿Tres años?
¿En qué se diferencia una gorutina de un flujo?
¿Para qué se utiliza en la práctica la palabra clave select?
¿Has tenido conflictos o malentendidos con la dirección o colegas? Si es así, ¿cómo los resolviste?
// Es necesario implementar una función para comprimir una cadena usando el algoritmo de codificación por longitud de ejecución. // Si se encuentra una serie de valores iguales, se reemplaza por la longitud de la serie y el valor. func Encode(s string) string { panic("no implementado") }
¿En qué se diferencia REST de RPC? ¿Qué significa stateless en el contexto de REST?
¿Cómo fue la migración? ¿Con quién lo hiciste? ¿Cómo exactamente?
¿Puedes dar un ejemplo de trabajo autónomo: cuál es el tiempo máximo que has trabajado en una sola tarea o problema?