Sobes.tech

Frontend

¿Se puede confiar en los tipos de TypeScript en tiempo de ejecución? ¿Cómo garantizar la validación de los datos del backend?

Senior
АЛМИ Партнер
59

¿Qué datos necesita el cliente en qué momento y qué API tendremos? ¿Qué puntos de entrada, qué esquemas de datos?

Middle+
OkkoOkko
59

¿La vacante se cerró hace unos meses? ¿Por qué se volvió a abrir? ¿El desarrollador no pasó el período de prueba?

Middle
РунитиРунити
59

Tarea de codificación en vivo: arreglar un contador con setInterval en useEffect, que no funciona correctamente debido a un problema de cierre

Middle
WB Travel
59

En su currículum, menciona Java y PostgreSQL — cuéntenos sobre esa experiencia.

Middle
ТранснефтьТранснефть
59

¿Cuáles son tus expectativas salariales?

Senior
СБЕРСБЕР
59

Cuéntame sobre tu educación. ¿Cómo llegaste al campo de la tecnología de la información?

Middle+
Dr. web
59

Cuéntame cómo utilizas las herramientas de IA en tu trabajo: ¿cuál es tu configuración, qué modelos, cuál es el flujo por etapas?

Middle+
EVACargo
59

Tarea de codificación en vivo: tienes un pequeño componente de lista de tareas en JSX. Corrige todo lo que no te guste y explica por qué.

Middle
Алор+
59

¿Qué opinas sobre el almacenamiento de estado con bibliotecas como React Query o SWR?

Middle
Data World
59

¿Para qué se realiza este proyecto? ¿En qué nicho de valor encaja, qué problema resuelve? ¿Existen competidores?

Middle+
Сбер. IT
59

/** * Tarea 1: Genéricos y Seguridad de Tipo en Claves * Crea una función `getProperty` que tome un objeto y una clave. * Usa genéricos para asegurar que la función sea segura en tipos, y que la clave exista en el objeto. */ function getProperty<T extends Record<string, unknown>, K extends keyof T>(obj: T, key: K): T[K] { return obj[key]; } getProperty('str', 'toString') /** * Tarea 2: Dado múltiples declaraciones de interfaz Todo a continuación, explica qué sucede cuando están presentes en el mismo ámbito. * Discute cómo TypeScript las trata y completa el objeto `myTodo` para satisfacer los requisitos de la interfaz Todo fusionada. */ interface Todo { title: string; dueDate: Date; } interface Todo { description: string; completed: boolean; }

Middle
Altenar
59

¿Qué arquitectura elegir para escribir una biblioteca de UI?

Middle
Мыс
59

¿Cómo se puede optimizar la búsqueda en el componente para no hacer una solicitud al servidor con cada pulsación de tecla?

Middle
Банк ПСБ
59

Tarea 1 Tenemos un array de 10,000 objetos (por ejemplo, "Empleados" o "Productos"). Necesitamos implementar un componente para seleccionar un elemento que no "colgará" el navegador y será cómodo para el usuario. Requisitos a implementar: 1. Tipado de datos: Crear una interfaz Item con campos id: string, label: string y category: string. 2. Búsqueda (Input): Al ingresar texto, la lista debe filtrarse. 3. Trabajo con DOM y eventos (Navegación por teclado): * El usuario debe poder desplazarse por la lista con las flechas Arriba y Abajo. 4. Al presionar Enter, el elemento seleccionado se "confirma". 5. Nota importante: El elemento seleccionado por las flechas debe estar siempre en vista (programáticamente desplazar el contenedor si el cursor sale de los límites). 6. Optimización (Rendimiento): * Dado que hay muchos datos (10k), discutir o implementar una "renderización perezosa" simple (renderizar solo los primeros 20-30 elementos o usar IntersectionObserver). Salida del componente

Middle
Ifellow
59

¿Cómo almacenar correctamente la configuración en tiempo de ejecución en Nuxt 3? ¿En qué se diferencia la configuración pública de la privada?

Middle
Хайерлаб
59

interfaz FormState { valores: FormValues; errores: FormErrors; estaCargando: boolean; } const [estadoFormulario, setEstadoFormulario] = useState<FormState>({ valores: { email: '', password: '', }, errores: {}, estaCargando: false, });

Middle
нейровэд
59

¿Qué significa la palabra clave satisfies en TypeScript y para qué sirve?

Middle+
Ozon Tech
59

¿Qué es el tipo de utilidad Awaited en TypeScript?

Middle+
Т-БанкТ-Банк
59

Tarea adicional: dado un código con la función MySync, que acepta un parámetro start (por defecto 0), lo imprime en la consola, usa Promise y se llama a sí misma recursivamente dentro de resolve, además de tener un setTimeout separado. Debe explicar qué sucederá aquí y qué se mostrará en la consola.

Middle
WB банк
59
/295