Java
¿Qué es importante para ti al elegir un trabajo?
¿Cómo comparar RestClient y Feign Client? ¿Cuál es mejor elegir?
¿Puedes describir paso a paso qué sucede cuando haces una solicitud HTTP en el navegador, desde la entrada de la URL hasta recibir la respuesta?
¿Podemos usar otros mecanismos además del control de versiones en bloqueo optimista?
Cuéntame sobre tu experiencia trabajando con concurrencia. ¿Qué nivel de API utilizas?
¿Por qué eras personalmente responsable en el proyecto?
¿Cómo implementar llamadas HTTP paralelas? Se recibe una solicitud, se debe llamar al servicio en paralelo para cada tarea, esperar todas las respuestas y devolver el resultado.
¿Has considerado los mecanismos de persistencia en Redis (RDB y AOF) para reducir la ventana de pérdida de datos?
¿Cómo implementar un controlador REST en Spring usando la anotación @RestController?
¿Cuántas transacciones se crearán si un método @Transactional llama a otro método @Transactional(REQUIRES_NEW) en la misma clase?
[nombre] preguntó: ¿Por qué la JVM consume memoria más allá del heap si establecimos el límite -Xmx?
¿En qué casos se necesita TreeMap, si es más lento que HashMap?
¿Qué colección elegir: ArrayList o LinkedList y por qué?
¿Cómo reducir la carga en la base de datos si el caché expira y las solicitudes comienzan a ir masivamente a la base de datos?
¿Cómo protegerse de la herencia y la sobrescritura del getter (para que un colega no pueda sobrescribir el getter y eliminar la copia de seguridad)?
¿Qué es un grupo de consumidores en Kafka?
¿Qué métodos de sincronización de hilos en Java conoces?
¿Quién desarrolló la arquitectura de microservicios?
public class RefEx { public static class PdfProcessor implements DocumentProcessor { } public static class DocxProcessor implements DocumentProcessor { @Override public void process(Document document) { // Lógica específica para procesar Word } } public static class XmlProcessor implements DocumentProcessor { @Override public void process(Document document) { // Lógica específica para procesar XML } } public static class DocumentService { private final Map<DocumentType, DocumentProcessor> processors = Map.of( DocumentType.PDF, new PdfProcessor(), DocumentType.DOCX, new DocxProcessor(), DocumentType.XML, new XmlProcessor() ); public void process(Document[] documents) { for (Document doc : documents) { DocumentProcessor processor = processors.get(doc.type); if (processor == null) { break; } // Lógica general para procesar el documento processor.process(doc); } } } }
¿Cómo se realiza el seguimiento de que los mensajes llegan en orden cuando hay varias particiones?