Golang
Qual é uma abordagem eficaz para realizar revisões de código em Go, e quais aspectos devem ser priorizados primeiro?
Precisa de processar um ficheiro CSV muito grande em Go. Como faria isso sem carregar o ficheiro inteiro na memória?
Quando são calculados os argumentos das funções deferidas (defer)?
Sabes alguma coisa sobre a empresa IPAM?
Quais são os tipos de transações (níveis de isolamento) no PostgreSQL?
Como organizar a comunicação entre duas goroutines?
Qual é a diferença entre Mutex e RWMutex?
Quais primitivas de sincronização existem em Go? Qual é a diferença entre Mutex e RWMutex? Quando usar atomics?
Como projetaria este código para uso em diferentes protocolos de transporte (gRPC, HTTP, consumidor)?
Tem experiência com CI/CD? O que fez?
Já teve que registar horas, acompanhar o tempo em algum sistema?
Existem nuances interessantes com GOMAXPROCS e cgroups no Linux?
Quais são os tipos de canais em Go? Fale sobre canais com buffer e sem buffer.
Tinha Keycloak para autenticação ou uma solução própria?
Senior — é o resolvedor, o elo final?
Tem experiência com gRPC?
O que exatamente fizeste para que o serviço de publicação e gestão de anúncios no Avito fosse mais rápido?
Fale sobre a sua experiência de trabalho na [empresa]. Em que estado estava o projeto quando você chegou?
Qual é a diferença entre processos e threads?
Tarefa simples de codificação ao vivo (competência básica) Condição: Escreva uma função fetchAll(urls []string) map[string]string, que para cada URL faz uma requisição HTTP GET de forma concorrente e retorna um mapa onde a chave é a URL e o valor é o corpo da resposta (string). Se a requisição falhar (erro, não 200), o valor será uma string vazia. Restrições: - Não é permitido usar bibliotecas externas (apenas as padrão). - Não é permitido alterar a assinatura. - O programa não deve falhar em caso de pânico no http.Get. Exemplo de entrada: ["[link]" "[link]" "[link]"]