Sobes.tech

Golang

func (r *PayoutRepository) Payout(advertiserID, partnerID string, amount float32) error { advertiser, err := r.find(totalPayouts) // agregar transacción if err != nil { return err } partner, err := r.find(partnerID) if err != nil { return err } advertiser.Balance -= amount partner.Hold -= amount partner.Balance += amount if err := r.save(advertiser); err != nil { return err } if err := r.save(partner); err != nil { return err } r.totalPayouts++ return nil } func (r *PayoutRepository) find(id string) (Partner, error) { p := Partner{} err := r.db.QueryRow("SELECT * FROM partners WHERE id = " + id).Scan(&p) // agregar $1 if err != nil { if err == sql.ErrNoRows { return p, errors.New("partner not found") } return p, err } return p, nil }

Senior
Pasul LTD
69

¿Cómo está relacionada la derivada con el área?

Middle
Graveling
69

¿Qué comando muestra el espacio en disco?

Middle+
VK CloudVK Cloud
69

¿Por qué es mejor eliminar el puntero del slice en el repositorio? Argumentos a favor y en contra.

Senior
2gis2gis
69

¿Qué es el modelo OSI? ¿Qué es la capa de aplicación?

Middle+
ООО Макс
69

¿Qué quieres ahora? ¿Cuáles son tus expectativas para el nuevo trabajo?

Senior
Ozon ФинтехOzon Финтех
69

// Pregunta 2. ¿Qué mostrará en la pantalla package main import "fmt" func bbb() { defer func(){ if r := recover(); r != nil{ fmt.Println("Pánico manejado 1 ", r) } }() panic("aaaa") } func main() { defer func(){ if r := recover(); r != nil{ fmt.Println("Pánico manejado 2 ", r) } }() bbb() }

Senior
МВидео/эльдорадо
69

¿Qué significa la nomenclatura en estilo RPC? En nuestro caso, gRPC y REST, ¿en qué se diferencian?

Senior
МВидео/эльдорадо
69

¿Cómo lograron la ausencia de duplicados en los mensajes en Kafka?

Senior
А7
69

¿Alguna vez ha tenido que rastrear el tiempo, llevar un registro de las tareas en algún sistema?

Middle+
Lexica
69

¿Cómo describirías un operador de Kubernetes si tenemos una base maestra y dos réplicas, y qué sucede en caso de que la base principal falle? Explica en pocas palabras.

Middle
Бюро 1440Бюро 1440
69

¿Cómo determinar si un producto con aproximadamente 1000 usuarios necesita una arquitectura de microservicios o monolítica?

Middle+
VKVK
69

¿Cómo obtener la salida 456 si no se usa un puntero (pointer receiver)?

Middle
Ozon FreshOzon Fresh
69

¿Cuál es el rango salarial que tienes en mente?

Middle+
X5
69

¿Hubo ofertas o rechazos después de la entrevista?

Senior
wilix
69

Consideremos un ejemplo: first=[1,1,2], second=[1,2]. ¿Qué debería devolver su algoritmo y funciona correctamente con duplicados?

Middle+
Яндекс
69

Cuéntame, ¿por qué estás buscando ahora?

Senior
VKVK
69

¿Qué patrones utilizaste en el código? ¿Por qué elegiste un enfoque basado en eventos y Kafka, en lugar de solicitudes normales?

Senior
X5 groupX5 group
69

Cuéntame sobre tu mayor fracaso en el trabajo. ¿Qué aprendiste de ello?

Junior
Позитив Технолоджис
69

¿Cuánto tiempo llevas trabajando en Go, trabajas en [empresa]?

Middle+
МВидеоМВидео
69
/412