Preguntas generales
SDLC (Software Development Life Cycle) — el ciclo de vida del software.
Etapas clave: planificación, análisis, diseño, implementación, pruebas y soporte.
Autenticación
— es el proceso de confirmar la identidad del usuario.
Responde a la pregunta: "¿El usuario es quien dice ser?"
Autorización
— es el proceso de conceder o denegar acceso según los derechos y privilegios del usuario.
Responde a la pregunta: "¿Qué puede hacer el usuario?"
Trabajo en equipo
Técnicas de diseño de pruebas
Partición de equivalencia, Análisis de valores límite, Pruebas por pares, Tabla de decisión.
Cuéntale al entrevistador más sobre las técnicas que realmente has usado.Tipos de pruebas
Reprueba: Comprueba que un defecto corregido realmente haya sido eliminado.
Niveles de prueba
Aquí conviene mencionar la Pirámide de pruebas.
| Nivel de prueba | Velocidad | Cantidad de pruebas |
|---|---|---|
| Pruebas unitarias | Alta | Grande |
| Pruebas de integración | Media | Media |
| Pruebas de sistema | Baja | Mínima |
Documentación de pruebas
Severity: Evalúa el impacto técnico de un bug en la funcionalidad del sistema.
Priority: Evalúa la urgencia e importancia de corregir el bug desde el punto de vista del negocio.
Un error tipográfico en el nombre de la empresa en la página principal.
Protocolo HTTP
Imprescindible saber:
GET, POST, PUT, DELETE, PATCH.
Opcional:
HEAD, OPTIONS, CONNECT, TRACE.
| Código | Descripción |
|---|---|
| 100-199 | Informativos |
| 200-299 | Exitosos |
| 300-399 | Redirección |
| 400-499 | Error del cliente |
| 500-599 | Error del servidor |
Sí. No hay restricción a nivel de protocolo; depende únicamente de cómo el desarrollador implemente el endpoint.
Una persona no puede saberlo todo, y el entrevistador también puede equivocarse. Justifica tu respuesta si estás seguro de que es correcta.Los métodos idempotentes son aquellos en los que llamadas repetidas con el mismo conjunto de datos dan el mismo resultado, sin efectos secundarios en el servidor.
Los métodos no idempotentes afectan el estado del servidor, por ejemplo cambiando datos en una base de datos.
| Idempotencia | Métodos |
|---|---|
| Idempotente | GET, HEAD, PUT, DELETE, OPTIONS, TRACE |
| No idempotente | POST, PATCH |
HTTP (HyperText Transfer Protocol): Los datos se transmiten en texto plano, sin cifrado. Cualquiera que intercepte el tráfico entre el navegador y el servidor podría leer la información transmitida.
HTTPS (HyperText Transfer Protocol Secure): Los datos se cifran con SSL/TLS (Secure Sockets Layer / Transport Layer Security). Se requiere un certificado SSL/TLS para verificar la autenticidad del recurso.
Formatos de datos
{
"name": "Котофей",
"age": 5
}
No dudes en preguntar si no estás seguro de haberlo descrito correctamente en
JSON. Pregunta al entrevistador si puedes usar un validador online para comprobarlo (busca json validator). El validador mostrará dónde se rompió la estructura.
Un esquema XSD (XML Schema Definition) es un archivo con formato .xsd que define los elementos y atributos permitidos en un documento XML, los tipos de datos y las restricciones.
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="cat">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="age" type="xs:int"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
No tengas miedo de decir que no has trabajado con XML/XSD: la mayoría de proyectos modernos usan JSON. Simplemente prepárate para responder que XML es otro formato de datos.
DevTools
- Abre DevTools
- Ve a la pestaña Application
- En el panel izquierdo, selecciona Cookies
- Haz clic en la URL del sitio
- Aparecerá una tabla con nombres, valores y otros atributos de las cookies
- Abre DevTools
- Ve a la pestaña Network
- Envía una solicitud desde el frontend
- Selecciona la solicitud necesaria en la lista
- Ve a la pestaña Payload
- Abre DevTools
- Ve a la pestaña Network
- Envía una solicitud desde el frontend
- Selecciona la solicitud necesaria en la lista
- Ve a la pestaña Response
Arquitectura
Monolito — todos los componentes del sistema están unidos en una sola aplicación.
Microservicios — conjunto de aplicaciones independientes, cada una con una función concreta, que juntas forman el sistema.
| Arquitectura | Pros | Contras |
|---|---|---|
| Monolito |
|
|
| Microservicios |
|
|