Golang
Hai mai dovuto creare autonomamente delle attività nel backlog, ad esempio, quando hai visto un test fallire o una libreria obsoleta?
Supponiamo che ci sia un punto sulla superficie e che venga tracciata una retta che non passa attraverso di esso. Quante linee diverse si possono tracciare attraverso il punto parallele a questa retta data?
Come viene implementata l'annullamento del contesto? Cosa succede all'interno?
Condizione Ci sono 3 entità: utente, chat, messaggio • L'utente ha un nome e una data di registrazione • La chat ha un nome e una data di creazione • Il messaggio ha testo, autore e data di creazione • Un utente può essere in più chat contemporaneamente • Il messaggio appartiene obbligatoriamente a una chat, non può appartenere a più di una chat contemporaneamente • È necessario descrivere il dominio sotto forma di tabelle -- distribuito -- message_count nelle chat limite a 100 --getShard(time zone) -> shard_id -> 1 --getShard(time zone) -> shard_id -> 2 --shard1 [1..100] --shard2 [101..200] CREATE TABLE users ( id int PRIMARY KEY, name varchar(255) NOT NULL, reg_at TIMESTAMP NOT NULL DEFAULT NOW() ); CREATE TABLE chats ( id int PRIMARY KEY, name VARCHAR(255) NOT NULL, created_at TIMESTAMP NOT NULL DEFAULT NOW(), message_count int NOT NULL CHECK <= 100 ); CREATE TABLE user_chats ( user_id int not null REFERENCES users(id), chat_id int NOT NULL REFERENCES chats(id), PRIMARY KEY (user_id, chat_id) ); CREATE TABLE messages ( id int PRIMARY KEY, chat_id int NOT NULL REFERENCES chats(id), author_id int NOT NULL REFERENCES users(id), created_at TIMESTAMP NOT NULL DEFAULT NOW(), text TEXT NOT NULL );
Qual è la complessità in tempo e memoria (Big O) di questo algoritmo?
Quali sono gli svantaggi degli indici? Un indice può rallentare la lettura?
Hai scritto o supportato servizi ad alta intensità?
Quali test sono stati eseguiti nel progetto e come sono stati avviati?
Qual è la differenza tra PARTITION BY e GROUP BY per una sottoquery?
Quali sono le differenze tra HTTP/1, HTTP/2 e HTTP/3?
La libreria standard net/http è sufficiente per la produzione se devi scrivere un server web in Go puro senza framework aggiuntivi?
Come verrà visualizzata nell'immagine Docker finale la presenza di più Dockerfile con un diverso numero di istruzioni?
Parla della tua esperienza in Magnit (3,5 anni). Quali compiti hai svolto?
Cosa indica il parametro posizionato prima del nome del metodo nella dichiarazione della funzione?
Chi dovrebbe chiudere il canale di uscita out — la funzione merge o main?
Quanto conosci lo stack TCP/IP e il modello OSI? Quali protocolli funzionano a quali livelli?
Cosa è attualmente criticamente importante per te nella scelta di un'azienda?
Implementa una funzione che accetta []any e delta int. È necessario aumentare di delta solo le prime occorrenze di numeri unici (int). Altri tipi e numeri ripetuti devono essere lasciati invariati. La funzione deve restituire la lista aggiornata e 2 numeri: updated – quanti numeri unici sono stati modificati, duplicates – quanti elementi numerici sono risultati duplicati func IncrementUniqueIntsInMixed(xs []any, delta int) ([]any, int, int) { // il tuo codice } // Esempio: xs := []any{1, "a", 5, "b", 1, 0, 5} u, d, s := IncrementUniqueIntsInMixed(xs, 3) // xs == []any{4, "a", 8, "b", 1, 3, 5} // u == 3 // numeri unici: 1, 5, 0 // d == 2 // numeri duplicati: secondo 1, secondo 5
Sei soddisfatto delle condizioni di pagamento e delle fasi di interazione?
Cos'è una goroutine? In cosa consiste la sua leggerezza?