Sobes.tech

Golang

¿Puedes contarme sobre las pruebas? ¿Escribes pruebas unitarias, qué cobertura tienes?

Middle+
Скоринг Бюро
73

¿Hubo situaciones en las que tomaste decisiones arquitectónicas por ti mismo? Da un ejemplo.

Senior
spnd.xyz
73

¿Hay empresas o industrias que no esté dispuesto a considerar?

Senior
DST Lab
73

¿Qué es la idempotencia? Da un ejemplo de un caso en el que se necesita una clave de idempotencia.

Senior
А7
73

¿Qué hacías con el retraso del consumidor (consumer lag) durante la reimplementación o parada del servicio?

Middle+
МВидео/эльдорадо
73

¿Cómo resolver el problema del mensaje perdido y la falta de garantía de entrega en Redis pub/sub para ajedrez?

Senior
Лига Цифровой ЭкономикиЛига Цифровой Экономики
73

¿Cómo entender que la degradación ocurrió precisamente debido al aumento en el consumo de recursos (CPU, etc.)?

Middle
WildberriesWildberries
73

Cuéntame sobre ti y tu experiencia

Senior
Магнит Тех
VK CloudVK Cloud
73

Por aclarar: ¿el viernes es mañana?

Senior
2gis2gis
73

¿Qué es un canal en Go y cuáles son sus principales áreas de aplicación?

Middle
VKVK
73

¿Qué error ocurrirá al intentar modificar un carácter de una cadena: un pánico, un error manejado u otra cosa?

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

¿Qué es la señal SIGTERM (kill -15) y por qué es mejor usarla en lugar de SIGKILL (kill -9)?

Middle+
VKVK
73

¿Qué son los niveles de aislamiento de transacciones? ¿Cuáles utilizaste?

Senior
Бюро 1440Бюро 1440
73

Recuerda una situación de tu experiencia previa en la que viste que una solución arquitectónica propuesta por un líder de equipo o arquitecto no era óptima. ¿Qué hiciste en esa situación? ¿De alguna manera defendiste tu punto de vista?

Senior
АЭРО
73

¿Se puede implementar RPC a través de REST y viceversa? ¿Cuál es la diferencia fundamental?

Senior
X5 techX5 tech
73

¿Qué sucede cuando la capacidad del slice se agota y se añade otro elemento?

Senior
I-teco
73

¿Qué es una pila como estructura de datos?

Senior
AvitoAvito
73

¿Qué prefieres: desarrollo de productos o desarrollo de infraestructura?

Middle+
OZONOZON
73

¿Qué tan activa es la búsqueda en este momento? ¿Ya están pensando en irse de [empresa] o simplemente están mirando ofertas interesantes por ahora?

Senior
AvitoAvito
73

Las actualizaciones de documentos llegan al servicio mensaje Documento { string Url = 1; // URL del documento, su identificador único uint64 PubDate = 2; // tiempo de publicación declarado del documento uint64 FetchTime = 3; // tiempo de recepción de esta actualización del documento, puede considerarse como identificador de versión. El par (Url, FetchTime) es único. string Text = 4; // texto del documento uint64 FirstFetchTime = 5; // inicialmente ausente, debe completarse } Los documentos pueden llegar en cualquier orden (no en el orden en que fueron actualizados), y también puede haber mensajes duplicados. Es necesario en la salida formar mensajes iguales, pero con campos corregidos según las siguientes reglas (todo lo mencionado a continuación es para un grupo de documentos con el mismo campo Url): El campo Text y FetchTime deben ser iguales a los del documento con el mayor FetchTime recibido hasta ahora. El campo PubDate debe ser igual al del mensaje con el menor FetchTime. El campo FirstFetchTime debe ser igual al valor mínimo de FetchTime. Es decir, en cada momento tomamos PubDate y FirstFetchTime del primer versión recibida hasta ahora (si las ordenamos por FetchTime), y Text de la última. La interfaz en el código puede implementarse así: type Processor interface { Process(doc *Document) (*Document, error) } Este código funcionará en un servicio que lee mensajes de una cola (Kafka o similar), y también escribe el resultado en la cola. Si Process devuelve Null, no se escribe nada en la cola.

Senior
VKVK
73
/412