Software Engineering
Ingeniero de Software
Los ingenieros de software convierten intención en código del que otras personas dependen, a menudo sin llegar a conocerlas. El oficio es más amplio que los lenguajes — Python, Go, Java rotan dentro y fuera de moda — y se centra en el juicio: qué abstracción introducir, qué prueba escribir primero, qué comentario de revisión importa y cuál es gusto disfrazado de principio.
Herramientas de IA como Copilot y Claude Code aceleran la escritura, pero elevan el listón sobre qué construir realmente. A los ingenieros sólidos les importan las personas que mantendrán su código dentro de dos años, incluidos sus futuros yo.
Los estudiantes atraídos por este camino a menudo empezaron a construir cosas en la secundaria y nunca pararon. El crecimiento viene de lanzar sistemas reales, asumir la responsabilidad cuando fallan y leer código escrito por personas mejores que tú.
US$163,883 salario mediano en United States¹
- CodeSéniorNuevo
Implementar ejecución simbólica sobre un subset de C
Define el subset de C admitido (sin punteros, sin malloc, enteros de tamaño fijo, structs simples). Implementa el motor en Python: parser de C usando pycparser, IR propia o LLVM…
- Symbolic Execution
- Program Analysis
- Smt Solving
Program Analysis - AnalysisSéniorNuevo
Reducciones y NP-completitud aplicadas a un puzzle operativo
Estudia el problema operativo a partir de 6 meses de asignaciones reales. Identifica a qué problema clásico se reduce (graph coloring, bin packing o set cover según el caso) y d…
- Np Completeness
- Reductions
- Sat Solving
Algorithm Design and Analysis - CodeSéniorNuevo
Paralelización GPU con CUDA de Simulación Hidrológica en Pyme Chilena
Reescribe el kernel central de la simulación (un solver iterativo de cinco puntos sobre malla 2D) en CUDA C++. Diseña la división de la malla en bloques con consideración de coa…
- Cuda
- Gpu Programming
- Parallel Numerical Methods
Advanced Concurrency and Parallel Computing - CodeSéniorNuevo
Programación HPC con MPI para Centro de Cómputo Universitario en Barcelona
Recibes el código fuente (Fortran + MPI, 6.000 LOC), acceso a una partición del cluster (16 nodos con 16 cores cada uno) y datasets representativos. Perfila con Score-P + Vampir…
- Mpi
- Hpc Programming
- Parallel Performance
Advanced Concurrency and Parallel Computing Practice your coursework on real scenarios.
Every challenge is shaped from real-world context — not generic exercises. The work mirrors what your degree prepares you for.
Why Ewance
- CodeSéniorNuevo
Implementación de Cola Lock-Free para Banco de Inversión en Madrid
Implementa en C++23 una cola MPSC basada en el algoritmo de Vyukov, con énfasis en el memory ordering exacto (acquire-release y, donde aplique, relaxed con justificación). Cubre…
- Lock Free Algorithms
- Memory Ordering
- Cpp Concurrency
Advanced Concurrency and Parallel Computing - CodeSéniorNuevo
Memory Consistency: Race Detector para Modelos x86-TSO vs ARM Weak
Implementa la herramienta en Python o Rust. Acepta un test litmus (formato simple, 2-4 threads con loads/stores/fences). Implementa los axiomas de TSO (store buffer FIFO, loads …
- Memory Consistency
- Concurrency
- Formal Models
Advanced Computer Architecture - 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
- AnáLisis EstáTico
- Program Analysis
Program Analysis - CodeSéniorNuevo
Optimización Cache-Aware de Motor de Riesgo en Banco Madrileño
Recibes el código fuente C++ del kernel central (4.500 LOC), un dataset realista de 1,2 millones de posiciones y acceso a un nodo dedicado con Intel Sapphire Rapids. Perfila con…
- Cache Optimization
- Memory Layout
- Performance Engineering
Performance Engineering of Software Systems - Browse challenges
Explore role
Product Manager
Ship product that solves real user problems. Combine user research, prototyping, and stakeholder alignment to turn ambiguous briefs into measurable wins — the role at the centre of modern software teams.
- ResearchSéniorNuevo
Algoritmo de aproximación para asignación de slots en spots de Telecom
Modela el problema como una variante de set cover con costes (o scheduling con restricciones, según motivación). Diseña un algoritmo de aproximación con cota de garantía demostr…
- Approximation Algorithms
- Linear Programming
- Np Completeness
Advanced Algorithms - AnalysisSéniorNuevo
Reverse Engineering de un Plugin Heredado para una EdTech de Valencia
Recibes el binario (.so 4,2 MB), los headers públicos (.h) y 6 ejemplos de uso documentados. Carga el binario en Ghidra, mapea las 18 funciones públicas de los headers a sus equ…
- Reverse Engineering
- Competencia En Lenguajes De Sistemas (Go, Rust, C++)
- Debugging
Software Evolution and Maintenance - CodeSéniorNuevo
Simulación Física FLIP para Fluidos en una Productora de Animación
Implementa FLIP estándar: grid MAC con velocidades en faces, partículas con velocidad e historia, transfer P2G + G2P, proyección de presión (solve Poisson via Conjugate Gradient…
- Physical Simulation
- Fluid Simulation
- Flip
Advanced Computer Graphics - ResearchSéniorNuevo
Métodos espectrales para reducir un grafo de transacciones fintech
Implementa: (1) cálculo del Laplaciano normalizado y sus k autovectores menores con ARPACK, (2) sparsificación espectral que reduzca aristas conservando el espectro dentro de ep…
- Spectral Methods
- Matrix Algorithms
- Algoritmos De Grafos
Advanced Algorithms Build a verifiable portfolio.
Submissions become evidence. Reviewers with shipping experience score against a rubric; the result becomes a credential anyone can verify.
Why Ewance
- AnalysisSéniorNuevo
Protocolo de Coherencia de Caches MESI vs MOESI Multi-Core
Configura gem5 Ruby con MESI_Three_Level y MOESI_CMP_directory para un sistema 8-core con L1 privada + L2 compartida. Ejecuta blackscholes, swaptions, canneal de PARSEC y FFT, R…
- Cache Coherence
- Multicore Architecture
- Gem5
Advanced Computer Architecture - CodeSéniorNuevo
Implementar Raft tolerante a fallos para un servicio de configuración
Implementa Raft con elección de líder, replicación de log, snapshots y cambios de membresía (joint consensus). Construye una suite de tests con simulación de red (delays, partic…
- Distributed Consensus
- Raft
- Concurrent Data Structures
Parallel and Distributed Algorithms - CodeSéniorNuevo
Diseñar una estructura concurrente lock-free para un motor de matching
Diseña una estructura concurrente para un order book (cola de prioridad por precio + FIFO por timestamp dentro de cada nivel) lock-free o wait-free en lectura. Implementa en C++…
- Concurrent Data Structures
- Lock Free
- Parallel Algorithms
Parallel and Distributed Algorithms - 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
- AnáLisis EstáTico
- Program Analysis
Program Analysis
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.
Roles relacionados que podrías explorar
Ver todos los roles →Software Engineering
Ingeniero/a de Backend
Detrás de cada aplicación que un usuario toca, hay un sistema más silencioso haciendo el trabajo real: enrutando solicitudes, manteniendo el estado, rechazando entradas incorrectas de manera educada. Los ingenieros backend construyen y cuidan esa capa oculta. El rol es parte oficio, parte diplomacia: estás diseñando APIs en las que otros ingenieros confiarán durante años, y una elección descuidada de esquema puede resonar en una empresa por mucho tiempo. Un buen trabajo aquí se parece a código que es aburrido de la mejor manera: predecible bajo carga, fácil de leer para la próxima persona, observable cuando algo se rompe. Los estudiantes crecen en este rol sintiéndose cómodos con Python u otro lenguaje de servidor, y luego aprendiendo cómo se comportan realmente las bases de datos cuando el tráfico se dispara.
Software Engineering
Ingeniero/a de Frontend
Cada botón que un usuario pulsa, cada estado de carga que espera, cada formulario que casi funciona pero no del todo, todo eso pasó por el editor de un frontend engineer. Esta disciplina decide cómo se siente el software. El rol vive en una intersección peculiar entre el diseño empático, los presupuestos de rendimiento y los estándares de accesibilidad, por lo que los estudiantes a los que les gusta tanto el oficio visual como el pensamiento sistémico suelen encontrar aquí su lugar. Crecerías en él construyendo cosas reales con React o Next.js, leyendo código de otras personas y desarrollando el criterio para saber qué se siente bien. Herramientas como GitHub Copilot aceleran la escritura; el juicio sobre cuándo refactorizar y cuándo lanzar sigue siendo tuyo. Los buenos frontend engineers se preocupan de que un lector de pantalla pueda navegar por su trabajo.
Software Engineering
Ingeniero/a Full-Stack
Imagina el pequeño equipo de una startup donde un solo ingeniero lanza una funcionalidad desde el esquema de base de datos hasta el botón desplegado. Esa mentalidad generalista es lo que el ingeniero full-stack aporta, incluso en empresas más grandes. El rol existe porque la mayoría del software útil no respeta el límite entre cliente y servidor, y alguien necesita razonar sobre ambos. Los estudiantes crecen hacia esto siendo curiosos más allá de su zona de confort, aprendiendo PostgreSQL cuando vinieron por React, dominando flujos OAuth cuando vinieron por UI. El trabajo recompensa a quienes prefieren entender un sistema completo antes que perfeccionar una sola parte. Los ingenieros full-stack sólidos saben cuándo pedir ayuda a un especialista, lo cual es en sí mismo una habilidad que vale la pena desarrollar desde temprano. Tú navegarás entre frontend y backend, construyendo APIs con Node.js y TypeScript, diseñando interfaces en React o Next.js, y gestionando bases de datos como PostgreSQL o MongoDB. Implementarás soluciones en la nube con AWS, GCP o Azure, y orquestarás contenedores con Docker y Kubernetes. Automatizarás despliegues mediante CI/CD con GitHub Actions o Jenkins, y monitorearás sistemas con Prometheus y Grafana. Trabajarás con flujos de datos usando Kafka o Airflow, y manejarás almacenes como Snowflake o BigQuery. También integrarás modelos de lenguaje (LLM) mediante RAG, LangChain o herramientas como LangGraph, siempre manteniendo la seguridad con OAuth, JWT y prácticas OWASP. Colaborarás en equipos ágiles usando Jira y Slack, midiendo el éxito con KPIs, OKRs y SLAs.
Software Engineering
Ingeniero/a Mobile
Abre la aplicación en tu teléfono y toca algo. El hecho de que responda al instante, no agote la batería y funcione en un dispositivo de cinco años no es casualidad: un mobile engineer se obsesionó con eso. Este rol es para personas que se preocupan por el oficio en la interfaz donde el software se encuentra con el bolsillo de un humano. Espera días escribiendo código nativo contra el Android SDK o iOS, perfilando animaciones, lidiando con pruebas inestables y guiando lanzamientos a través de App Store Connect. Los estudiantes crecen en ello lanzando su propia aplicación pequeña y sintiendo la brecha entre un demo y algo que un desconocido realmente usaría. Los mobile engineers sólidos tratan la accesibilidad como una línea de base, no como una función.
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.
¹ Salario mediano anual calculado a partir del histograma salarial de 50 ofertas de empleo actuales de Adzuna para «Ingeniero de Software» en United States, obtenido el mayo de 2026. Las habilidades provienen de las disciplinas etiquetadas en los retos activos de Ewance para este rol.
Retrato: Foto de Donald Teel en Unsplash.



















































































