Slipmat · FireOne · Lemonade
Ingeniero de software · sistemas de producto · interacción
Hago que los sistemas complejos sean legibles, táctiles y dignos de explorar.
Me muevo entre diseño de producto e ingeniería porque el trabajo más interesante rara vez pertenece a una sola disciplina. Me gusta empezar con una pregunta, un boceto, un prototipo o un comportamiento extraño que merezca entenderse, y después dar a lo prometedor suficiente estructura —modelos explícitos, pruebas, accesibilidad, presupuestos de rendimiento y experimentos repetibles— para que sobreviva al contacto con un producto real.
Proyectos seleccionados
Proyectos que muestran tanto la idea como el método.
Estos casos de estudio hablan menos de una lista de frameworks que de cómo un producto fue tomando forma: qué valía la pena investigar, qué se probó, qué evidencia cambió la dirección y qué descubrimientos se convirtieron en reglas duraderas de diseño o ingeniería.
Signal Broker · Defend · QMK / Vial
Booking · Inventory · Timeline
Kullaberg · Investigation Workbench · Workstation
Slipmat
Un cliente multimedia centrado en la reproducción de contenido propio y autoalojado. Slipmat trata la reproducción como un sistema explícito: una línea temporal autoritativa, identidad de fuente y generación inspeccionable, un Playback Rail persistente, procesamiento de audio nativo, visualización rica y análisis musical profundo para Jellyfin y medios locales.
Privado · desarrollo activo de producto Leer caso de estudioFireOne
Un juego de táctica submarina sobre incertidumbre, geometría y compromiso. La simulación autoritativa en Rust separa la verdad del mundo de lo que el jugador y la IA pueden conocer, con comportamiento ECS determinista, información incompleta basada en sonar y clientes de presentación sustituibles.
Privado · versión preliminar jugable Leer caso de estudioSignal Broker
Trabajo sobre una plataforma de desarrollo para redes vehiculares que expone CAN, LIN y buses relacionados mediante gRPC, sin atar las herramientas a un lenguaje o transporte concreto. Su cliente web añade acceso por gRPC-Web y WebSocket para seleccionar, inspeccionar y graficar de forma interactiva tramas y señales decodificadas en tiempo real.
Leer caso de estudioSistema de estación de trabajo
Mis dotfiles forman una estación de trabajo reproducible y multiplataforma, no una carpeta de configuraciones copiadas: perfiles conscientes de la máquina, paquetes declarativos, límites con GNU Stow, simulaciones previas, copias de seguridad rotativas, hooks de ciclo de vida, validación CI y un instalador interactivo en Rust para macOS, Linux y Termux.
Privado · infraestructura de uso diario Leer caso de estudioDefend
Un proyecto 3D multiplataforma de defensa de torres que combina comportamiento procedural, física, IA, proyectiles y sonido generado en el navegador. Es un laboratorio continuo de simulación, rendimiento y sistemas que deben seguir siendo comprensibles a medida que se vuelven más dinámicos.
Leer caso de estudioEntorno QMK
Firmware personalizado para teclado dividido en el que las capas, los encoders, el comportamiento de repetición alternativa y la entrada programable se tratan como contratos deterministas de interacción, no como asignaciones de teclas improvisadas.
Leer caso de estudioVial / Halcyon Control Center
Un sistema coordinado de firmware, protocolo HID y configuración web para exponer ajustes de pantalla TFT, telemetría, perfiles RGB y semántica de entrada del Halcyon Ferris sin debilitar la compatibilidad estándar de Vial.
Público · desarrollo activo Leer caso de estudioLemonade
Una reconstrucción moderna del clásico Lemonade Stand alrededor de un pequeño conjunto de decisiones con consecuencias: precio, inventario y publicidad bajo condiciones cambiantes de clima y mercado, mientras la simulación revela gradualmente una estructura económica más amplia.
Público · reconstrucción activa Leer caso de estudioBooking
Una plataforma de reservas configurable que modela citas, reservas de capacidad y estancias como contratos de planificación distintos, con auditabilidad y evidencia de cadena de suministro integradas en el espacio de trabajo.
Público · desarrollo activo Leer caso de estudioInventory
Una PWA de inventario local-first reforzada para préstamos, responsabilidad sobre artículos atrasados, trabajo offline, copia/exportación y un historial claro de entidades sin depender de un servidor para seguir siendo útil.
Público · desarrollo activo Leer caso de estudioTimeline
Un espacio responsivo para eventos, intervalos, categorías e historias, diseñado para convertir la cronología en narrativas estructuradas en lugar de una lista plana de fechas.
Público · desarrollo activo Leer caso de estudioSistemas adicionales
Ecosistema digital Kullaberg
Software bilingüe con capacidad offline para visitantes de una reserva natural sueca, desde guía móvil de senderos y presentación en mostrador de información hasta participación en ciencia ciudadana.
Leer caso de estudioInvestigation Workbench
Un espacio local-first para grafos y revisión de conocimiento que separa la evidencia de origen, las propuestas de la máquina, el conocimiento canónico revisado y las proyecciones deterministas de grafo y línea temporal.
Privado · caso de estudio de arquitectura Leer caso de estudioTrayectoria profesional
La profundidad de diseño se convirtió en profundidad de ingeniería sin sustituir el instinto de diseño.
Mi recorrido pasa por diseño gráfico, producción multimedia y docencia hasta software de servicio público, grandes interfaces de planificación e ingeniería de sistemas. Sigo tratando el código como material de diseño: algo capaz de aclarar una idea, mostrar sus límites y hacer que una interacción parezca inevitable en lugar de simplemente funcional.
Material público histórico documenta trabajo en aplicaciones frontend para Länsstyrelsen Skåne y una etapa anterior de liderazgo en diseño, multimedia y docencia universitaria. Material público de LinkedIn también documenta colaboración estrecha en la reconstrucción de IKEA Kitchen Planner y las herramientas IKEA Planner con React, TypeScript y una ingeniería frontend centrada en accesibilidad.
La progresión me importa más que una cronología de frameworks. Cada etapa añadió otra forma de poner a prueba una idea: composición visual, interacción, observación de usuarios, modelado de estado, rendimiento, simulación determinista y verificación automatizada. El objetivo no es sustituir la intuición por proceso, sino darle mejores instrumentos.
Perfil
Me interesan los sistemas que pueden sorprenderme sin volverse arbitrarios.
El trabajo se vuelve interesante cuando una pequeña decisión cambia un modelo físico, un estado oculto se vuelve visible, una simulación enseña algo inesperado o una herramienta da a alguien un poco más de agencia que antes.
Me muevo con comodidad entre pensamiento de producto, diseño visual e interacción e implementación. Me gustan las superficies mínimas con gran capacidad, los prototipos lúdicos que revelan una dirección mejor y los sistemas cuyo comportamiento acaba pudiendo explicarse con precisión.
El medio cambia —reproducción multimedia, juegos, telemetría de vehículos, software de servicio público, entornos de desarrollo, grafos de conocimiento o entrada programable— pero el patrón se mantiene: la curiosidad abre el espacio, el modelado disciplinado mantiene la coherencia y la automatización protege suficiente tiempo para seguir experimentando.
Principios de trabajo
Un proceso disciplinado debería crear más espacio para el asombro, no menos.
Empieza por la pregunta interesante.
Dibújala, prototípala, simúlala, llévala a hardware real o empújala deliberadamente demasiado lejos. El trabajo temprano debe hacer el descubrimiento lo bastante barato como para que un resultado sorprendente pueda cambiar el plan.
Convierte los experimentos en evidencia.
Instrumenta el comportamiento. Usa semillas deterministas, laboratorios visuales, comprobaciones de accesibilidad, trazas de rendimiento y modelos de dominio explícitos para poder comparar decisiones en vez de defenderlas de memoria.
Automatiza lo que ya se ha ganado la permanencia.
Cuando una idea demuestra su valor, codifica la invariante en tipos, pruebas, CI y documentación. La maquinaria está para evitar regresiones y revisión repetitiva, dejando más atención humana para el siguiente problema creativo.