Sobes.tech

Golang

Tenemos una base de datos con contraseñas de usuarios, las contraseñas están hasheadizadas (función hashPassword), y también se conoce el conjunto de caracteres que pueden ser utilizados en las contraseñas (variable alphabet). Nuestra tarea es implementar la función RecoverPassword para que recupere la contraseña a partir del hash conocido y TestRecoverPassword finalice con éxito. Requisitos básicos: Cualquier método es válido package main import ( "crypto/md5" "fmt" ) var alphabet = []rune{'a', 'b', 'c', 'd', '1', '2', '3'} func RecoverPassword(h []byte) string { return "" } func hashPassword(in string) []byte { h := md5.Sum([]byte(in)) return h[:] } func main() { tests := []string{"a", "12", "abc333d"} ok := true for _, exp := range tests { h := hashPassword(exp) act := RecoverPassword(h) if act != exp { fmt.Printf("Error: expected %q, got %q\n", exp, act) ok = false } } if ok { fmt.Println("Tests passed successfully") } }

Middle+
OZONOZON
120

¿Se puede utilizar más de una estructura de índice de base de datos en una sola consulta SQL?

Junior — Middle
Indrive
120

¿Cómo supervisar la precisión del funcionamiento del sistema (monitoreo)?

Middle
WildberriesWildberries
120

¿Cómo será la interacción entre el cliente, el microservicio de autorización y el microservicio de la tienda al usar JWT? ¿Y qué cambiará sin JWT, con sesiones?

Intern
Яндекс
120

¿Cuántos pods se desplegaron en el clúster?

Senior
WildberriesWildberries
120

¿Es necesaria la sincronización si el mapa se inicializa una vez al inicio y solo se usa para lectura?

Senior
Small
120

¿Para qué sirven en realidad los índices?

Middle+
РамблерРамблер
120

Responda a las preguntas ¿Ha trabajado con sistemas distribuidos y sus limitaciones? ¿Cuáles? ¿Se ocupa de documentación, métricas, monitoreo? Sí No ¿Está familiarizado con la teoría CAP? Sí No ¿Cree que la cobertura del código con métricas o la actualización de la documentación requiere necesariamente una tarea adicional de deuda técnica?

Senior
КасперскийКасперский
120

¿Qué comandos sueles usar en el sistema operativo Linux?

Junior — Middle
Mail.ruMail.ru
120

¿Por qué decidiste dejar [empresa]?

Senior
X5 techX5 tech
120

¿Cuál es la cantidad máxima de goroutines que se pueden ejecutar simultáneamente sin problemas sustanciales para el sistema?

Junior — Middle
WildberriesWildberries
120

Cuente la diferencia entre REST, gRPC y GraphQL.

Senior
Алабуга
120

¿Alguna vez ha tenido contacto con productos de la empresa antes? ¿Algún conocido trabaja allí?

Senior
Flant
120

Tarea de diseño: hay un sistema para grupos de respuesta rápida. Se recibe una señal, y de inmediato tres grupos responden simultáneamente. Es necesario enviar solo un grupo. ¿Cómo hacerlo a nivel de transacciones en la base de datos?

Senior
purrweb
120

¿Cómo funcionaban los bloqueos optimistas en Postgres?

Senior
КасперскийКасперский
120

¿Cómo aseguras la calidad y las mejores prácticas en tu trabajo?

Senior
Shopfully
120

¿Para qué escenarios se puede usar context.WithValue?

Middle+
X5
120

¿Por qué quieres cambiar de trabajo ahora?

Senior
HR
120

¿Cómo sueles actuar cuando surgen desacuerdos en el equipo o con los clientes?

Junior — Middle
ЦУМ
120

¿Cuáles son las características y reglas al trabajar con datos de cadena en programación?

Junior — Middle
Самокат Тех
120
/412