Explique o que são os genéricos em Java e quais as diferenças entre invariância, covariância e contravariância na sua utilização.
Java
Conte-nos quais abordagens e padrões você usa para organizar uma interação eficaz entre microserviços no backend e quais dificuldades você encontra com mais frequência.
Descreva como funciona a gestão de memória na JVM e quais problemas podem surgir com uma configuração incorreta dos parâmetros de memória para uma grande aplicação backend?
Explique como a compilação JIT afeta o desempenho das aplicações Java e em que casos isso pode levar a resultados inesperados.
Conte-nos como aborda o projeto da estrutura do banco de dados PostgreSQL para um serviço backend de alta carga e quais métodos de otimização de desempenho considera mais eficazes?
Que abordagens você usa para versionar a API REST para garantir compatibilidade entre diferentes clientes, e com que dificuldades você se deparou ao fazer isso?
Descreva como implementou a monitorização e rastreabilidade (observabilidade) para serviços backend distribuídos, e quais ferramentas considera mais eficazes para detectar e resolver problemas em ambiente de produção?
Descreva quais problemas de consistência de dados podem surgir ao implementar transações distribuídas entre vários serviços que usam PostgreSQL, e como você normalmente os resolve.
Pode contar como projetou a API REST para serviços backend complexos e quais abordagens utilizou para garantir a escalabilidade e a tolerância a falhas?
Quais são as principais dificuldades e limitações que você vê ao integrar cenários de IA na arquitetura backend existente, e como você aborda a sua resolução?