Retos de Information Technology
Explore information technology challenges on Ewance to develop skills companies are actively hiring for. Work on briefs covering cloud, infrastructure, security, and platform engineering.
Most Popular
- CodeSéniorNuevo
Diseñar un análisis de punteros para una base de código C++ legacy
Implementa un análisis de punteros basado en Andersen (inclusion-based) o Steensgaard (unification-based) sobre LLVM IR. Justifica la elección con el trade-off precisión vs esca…
- Pointer Analysis
- Static Analysis
- Program Analysis
Program Analysis - CodeIntermedioNuevo
Sintetizar transformaciones de programa para refactor masivo en Python
Implementa la herramienta en Python usando libcst o ast nativo. Acepta como input 3-5 pares (antes/después) escritos a mano. Sintetiza una regla de reescritura (basada en patron…
- Program Synthesis
- Ast Manipulation
- Program Analysis
Multidisciplinar - CodeSéniorNuevo
Interpretación abstracta para análisis de overflow en firmware embebido
Implementa el analizador en OCaml o Rust sobre LLVM IR. Modela el dominio de intervalos para enteros con widening al cruzar bucles. Combina con dominio de paridad para mejorar p…
- Abstract Interpretation
- Static Analysis
- Program Analysis
Program Analysis - CodeFundamentosNuevo
Modelar una biblioteca digital con tipos de datos abstractos
Diseña 4 TDA: Libro (con ISBN, título, autoría, género, copias disponibles), Lector (con ID, nombre, contacto, préstamos activos), Préstamo (con libro, lector, fecha inicio, fec…
- Abstraction
- Data Abstraction
- Modular Programs
Programming Abstractions Develop in-demand professional skills.
Each challenge names the skills it strengthens. Over time, your profile fills with the competences a hiring manager would actually look for.
Why Ewance
- CodePrincipianteNuevo
Calcular descuentos progresivos con recursión y funciones de orden superior
Modela las reglas de descuento como funciones de orden superior: cada regla es una función pedido -> descuento. Implementa al menos 5 reglas (volumen escalonado, club por antigü…
- Recursion
- Higher Order Functions
- Abstraction
Programming Abstractions - CodePrincipianteNuevo
Diseñar un programa modular para análisis de logs de un restaurante
Diseña 4 módulos: io_logs (parseo y validación), aggregate (cálculo de métricas), analyze (detección de anomalías como margen fuera de banda), report (formato del informe). Cada…
- Modular Programs
- Abstraction
- Python
Programming Abstractions - CodePrincipianteNuevo
Implementar un parser recursivo descendente para expresiones aritméticas
Define la gramática (BNF mínimo) para expresiones aritméticas con precedencia correcta y asociatividad de potencia a la derecha. Implementa el tokenizer, el parser recursivo des…
- Recursion
- Abstraction
- Data Abstraction
Multidisciplinar - CodePrincipianteNuevo
Refactorizar un script monolítico a módulos reutilizables
Lee el script (proporcionado), entiéndelo y traza un mapa de qué hace cada parte. Refactoriza en 5 módulos claros: io (lectura CSV), tax (cálculo de impuestos por país), invoice…
- Modular Programs
- Abstraction
- Refactoring
Programming Abstractions - Browse challenges
Explore role
Strategy Analyst
Frame the business question, model the options, build the recommendation. From market sizing to competitive analysis, this role is where strategy consulting meets in-house decision-making.
- CodeIntermedioNuevo
Bosques de Conteo Aproximado para Logs de Telemetría
Lee la teoría de Cormode y Muthukrishnan sobre Count-Min Sketch (CMS) y la familia HyperLogLog. Implementa ambas estructuras desde cero (sin usar librerías que las traigan ya he…
- Probabilistic Data Structures
- Hyperloglog
- Count Min Sketch
Randomized Algorithms - CodeIntermedioNuevo
Algoritmo de Karger para Cortes Mínimos en Red de Distribución
Implementa Karger básico (contracción aleatoria de aristas) y Karger-Stein (recursión con dos contracciones independientes). Para garantizar probabilidad de éxito mayor o igual …
- Randomized Algorithms
- Graph Algorithms
- Karger Stein
Randomized Algorithms - AnalysisPrincipianteNuevo
Las Vegas vs Monte Carlo para Selección de Pivote Robusta
Implementa ambas variantes en Python puro (sin numpy.partition). Diseña adversarios de entrada que rompen el quickselect determinista (entradas casi ordenadas, mismas claves rep…
- Randomized Algorithms
- Quickselect
- Monte Carlo
Randomized Algorithms - ResearchIntermedioNuevo
Aprendizaje de Hashing Universal para Tablas Resistentes a Colisiones
Implementa una familia de funciones hash universales tipo Carter-Wegman h(x) = ((a*x + b) mod p) mod m, donde a, b se eligen aleatoriamente de [1, p-1] y [0, p-1]. Demuestra emp…
- Universal Hashing
- Carter Wegman
- Randomized Algorithms
Randomized Algorithms Get recognized by recruiters and employers.
Credentials are blockchain-anchored via LearnCoin — tamper-evident, portable, link-shareable on LinkedIn and beyond.
Why Ewance
- CodePrincipianteNuevo
Algoritmo de Reservoir Sampling para Streaming de Telemetría Médica
Implementa el Algoritmo R de Vitter y el A-Res ponderado (Efraimidis-Spirakis) en Python con tipado estático. Demuestra empíricamente sobre 5 trazas de 8M eventos cada una que l…
- Reservoir Sampling
- Streaming Algorithms
- Randomized Algorithms
Randomized Algorithms - CodeIntermedioNuevo
Patrón Strangler-Fig para Núcleo Bancario Cobol Legacy
Lee 4 casos de uso del módulo de simulación de préstamos en Cobol (anonimizados, sin nombres reales de cliente). Escribe tests de caracterización que reproduzcan exactamente las…
- Strangler Fig
- Characterization Tests
- Legacy Modernization
Multidisciplinar - AnalysisPrincipianteNuevo
Detección de Code Smells con Análisis Estático en Backend Django
Configura SonarQube self-hosted, Pylint con configuración custom y Radon para complejidad ciclomática y mantenibilidad. Integra en GitHub Actions: cada PR muestra delta de issue…
- Code Smells
- Static Analysis
- Refactoring
Refactoring and Code Smell Detection - CodeIntermedioNuevo
Método Mikado para Romper Acoplamiento en Monolito Java
Lee el módulo de inventario (alrededor de 18.000 líneas Java). Define el objetivo Mikado: 'extraer Inventario como módulo Maven independiente con su propia base de datos'. Empie…
- Mikado Method
- Refactoring
- Java
Multidisciplinar - CodePrincipianteNuevo
Catálogo de Refactors Fowler sobre un Frontend React Heredado
Selecciona 5 componentes React de mayor churn (medido sobre 6 meses de git). Para cada uno: escribe tests de caracterización con Vitest + Testing Library cubriendo el comportami…
- Refactoring
- Fowler Catalog
- React
Refactoring and Code Smell Detection - CodePrincipianteNuevo
Refactor Asistido por IDE para Reducir Acoplamiento en Microservicio Go
Identifica las dependencias circulares con go-cleanarch y go-mod-graph. Para los 3 paquetes más enredados, usa los refactors de GoLand (Extract Interface, Move Function, Change …
- Refactoring
- Hexagonal Architecture
- Go
Multidisciplinar - ResearchPrincipianteNuevo
Elicitación de Requisitos para Sistema de Trazabilidad de Salmón
Realiza 5 entrevistas semiestructuradas (1 hora cada una, guion preparado). Modela 8 casos de uso primarios (escanear caja, registrar lote, vincular alimentación, exportar infor…
- Requirements Elicitation
- Use Cases
- Non Functional Requirements
Multidisciplinar - ResearchSéniorNuevo
Especificación Formal en TLA+ para Algoritmo de Reserva de Stock
Modela en TLA+ el protocolo actual (reserva optimista con CAS sobre Redis). Define las propiedades de seguridad (nunca confirmar más reservas que el stock disponible) y de progr…
- Formal Specification
- Tla Plus
- Model Checking
Multidisciplinar - AnalysisPrincipianteNuevo
Análisis de Stakeholders para Plataforma SaaS de Bodegas
Recopila y sintetiza los 18 meses de notas existentes. Realiza 6 entrevistas adicionales (1 por arquetipo, más 2 con stakeholders internos: ventas y soporte). Construye: matriz …
- Stakeholder Analysis
- Requirements Elicitation
- MOSCOW Prioritization
Multidisciplinar - ResearchPrincipianteNuevo
Validación de Requisitos con Casos de Uso para Plataforma Educativa
Selecciona los 12 requisitos críticos del backlog. Para cada uno: escribe el caso de uso completo (actor, precondiciones, flujo principal, flujos alternativos, postcondiciones, …
- Requirements Validation
- Use Cases
- Walkthroughs
Requirements Engineering - StrategyIntermedioNuevo
Gestión de Cambio de Requisitos para Migración ERP en Retail
Audita los 340 RFCs históricos: clasifícalos (alcance, calidad, plazo, coste), identifica patrones (departamentos que generan más cambios tardíos), calcula coste real estimado. …
- Requirements Management
- Change Control
- Impact Analysis
Requirements Engineering - CodeIntermedioNuevo
Multi-Tenancy con Row Level Security para SaaS de Despachos Legales
Diseña el esquema multi-tenant: enfoque shared schema con tenant_id en cada fila. Implementa RLS con políticas por tabla para las 28 tablas existentes (clientes, expedientes, do…
- Multi Tenancy
- Row Level Security
- Postgresql
Multidisciplinar
Cómo funciona
Del briefing al certificado, en seis pasos.
Paso 01
Explora retos alineados con tus estudios.
Paso 02
Acepta el que encaja con tus metas.
Paso 03
Trabájalo con la guía del AI Copilot.
Paso 04
Envíalo para una evaluación estructurada.
Paso 05
Consigue una credencial verificada.
Paso 06
Añádela a LinkedIn con un solo clic.
Equipos del sector tras una década de briefings prácticos
¿Reclutando de este grupo?
Patrocina un reto y conoce candidatos a través de su trabajo real.
Los equipos de la industria pueden diseñar briefings en torno a las habilidades que buscan, y evaluar a los estudiantes por entregables puntuados con rúbrica — no por currículums.



















































































