Como você avalia a iniciativa do VK de criar seu próprio banco de dados e como você avaliaria sua qualidade e eficácia?
Java
Que vantagens oferece trabalhar numa grande estrutura corporativa?
A sua atual projeto envolve analistas e testadores?
select name from employee group by name having COUNT(DISTINCT lang) >= 2;
Como resolver o problema de inconsistência de dados: a chamada externa foi bem-sucedida, mas a gravação na base de dados falhou?
/** * Interface para interagir com o hardware do multibanco. */ interface Hardware { /** * Retorna um array com a quantidade de notas por denominações 50, 100, 500, 1000, 5000. * O método funciona lentamente e gera ruído. * * @return array onde cada elemento corresponde à quantidade de notas de uma denominação específica. * Por exemplo, [10, 20, 30, 40, 50] significa: * - 10 notas de 50 euros * - 20 notas de 100 euros * - 30 notas de 500 euros * - 40 notas de 1000 euros * - 50 notas de 5000 euros */ int[] getBillsCounts(); /** * Carrega na caixa as notas indicadas. * * @param billsCounts array com a quantidade de notas por denominações [50, 100, 500, 1000, 5000]. * Por exemplo, [0, 1, 0, 2, 0] significa: * - 0 notas de 50 euros * - 1 nota de 100 euros * - 0 notas de 500 euros * - 2 notas de 1000 euros * - 0 notas de 5000 euros */ void giveBills(int[] billsCounts); } /** * Classe para implementar a lógica do multibanco. * Aqui, deve-se escrever o código */ class MyATM { /** * Hardware do multibanco. */ Hardware hardware; public boolean withdraw(int amount) { int[] counts = hardware.getBillsCounts(); int[] nom = {50, 100, 500, 1000, 5000}; int[] toGive = new int[5]; for (int i = 4; i >= 0; i--) { int needed = amount / nom[i]; int use = Math.min(needed, counts[i]); toGive[i] = use; amount -= use * nom[i]; } if (amount != 0) { return false; } hardware.giveBills(toGive); return true; } }
Fala sobre o teu último projeto: em que estiveste a trabalhar, quais foram as tarefas, qual foi a tecnologia utilizada?
Quais são as consequências de criar um ObjectMapper como campo de classe (não através do Spring)?
Quais foram as tarefas interessantes no projeto?
/** * O método calcula quantos pontos o candidato ganhou, * guarda o resultado na base de dados e chama um callback num serviço externo */ public void process(Candidate c) { transactionTemplate.executeWithoutResult(status -> { Score s = interviewScoreMLService.compute(c); String body = objectMapper.writeValueAsString(Map.of(c.getName(), s)); Mono<ResponseEntity<Void>> request = WebClient.create() .post() .body(BodyInserters.fromValue(body)) .retrieve() .toBodilessEntity(); scoreRepository.saveScore(s); }); }
Quais são os pontos negativos da solução implementada para o ATM?