Hi, I'm Javier.

I’m a designer who simplifies complexity. I learn about what isn’t on the screen, so I can decide what belongs on it and make complex things easier to use.

I work on products where the interface communicates a complex underlying system: trading platforms, financial tools, marketplaces and enterprise workflows. I enjoy diving into complex domains and understanding how design, business and technology intertwine to create solutions that are useful, usable and well integrated into people’s lives.

I understand product design as a discipline that goes further than screens. People use an interface to accomplish a task that affects their lives in the real world. I believe that designers need to understand what comes before and after that interaction, and what else is happening around it, in order to design a solution that adapts to people’s needs.

Work samples

Annotated trading interface model explaining how spread costs change at order size thresholds.
Interaction model Making size-based costs visible without adding order-book complexity.

Detailed description: The left side shows a trading ticket with sell and buy prices, a size field set to 50 contracts, and a spread increase table. The active table column is highlighted at the size-above threshold of 40, where the spread is 3. The enlarged table on the right repeats the key model: size thresholds run horizontally from 1 to 160, and each threshold maps to one spread value from 2 to 6. The annotations explain that the horizontal layout makes the table read as a size ladder, the highlighted tier shows which spread applies to the current order size, and one spread applies to the whole order once a threshold is crossed.

Trading product screen connecting product selection with a chart that shows knock-out risk levels.
Risk in context Connecting product choice with the chart, where the risk becomes visible.

Detailed description: The image compares two related interaction states. In the first state, the user hovers over a knock-out line on the chart and the matching Turbo row is highlighted in the product list. In the second state, the user hovers over a Turbo row and the matching knock-out line on the chart becomes prominent while other lines fade. The product panel includes product types, a short or long direction selector, and a table of available Turbos with knock-out level, leverage, sell price, and buy price. The main decision supported by the design is connecting an abstract product row to its risk position on the price chart.

Job application history interface showing status changes over time.
Status over time Making job application progress easier to see and understand.

Detailed description: The first screen shows the older list, where application date and status are bundled together inside each job row. That makes recent status changes easy to miss because the user has to read dense row text to understand what changed. The second screen separates the last update date from the application status. Status messages such as advancing to the next step or having a CV read are placed on the right with colour and icon cues. The third screen shows the detail view, where employer activity appears as a timeline so users can see when the company read the CV, advanced the application, or last managed the offer.

Latest post

What to build is still the hard part

AI is a great translator of thought into code. But if our thinking is not clear, we will just play fast AI theatre.

This article started as a reaction to a Christina Wodtke reaction to a reaction on LinkedIn to a Substack article. Yeah, we’re all that meta now. The original reaction made an interesting point about AI increasing the speed of visible work, but that this only matters if it increases the flow of value through the system. Christina’s reaction added that writing code was almost never the bottleneck, and surfaced some of these “invisible” pieces of work: understanding what to build, getting changes reviewed, confidence in the thing being safe to ship, and making the hard product decisions nobody wants to make. All agree.

These two reactions resonated deeply with me: I am the kind of designer who usually designs simple solutions, but they always carry a lot of invisible work behind them. Interviewing users, watching them complete their tasks, including what is happening before, after, behind the screens and all around. Understanding the domain, the business, the technology behind it. Where money comes from and where it goes. Solutions are very rarely only about what happens on a screen.

Then comes the AI part: we’re all being pulled into using AI for everything, like it or not. More importantly, whether it is worth it or not. Executives want to jump on the AI-hype bandwagon and often have to justify big expenses in infrastructure and tokens. Some companies are measuring employees by tokens spent (again, another visible measure, as opposed to value delivered using those tokens).

I am definitely not an AI Luddite, and started using LLMs as soon as they became available to the public. I then tried local models, read about transformers and self-attention, used LLMs to role-play and generate artificial images. I have been greatly amazed and somewhat disappointed by what AI can do. Parroting, not being able to advance a story, plenty of AI-isms (the sweet smell of ozone), sycophancy, hallucinations, random numbers that are always 73. But also the superpower of translating thought into code like never before.

It is not too difficult to grasp: if you are fine with an OK, generic solution to what you need, AI is usually great. If you want code that is a known solution to a known problem, you’ve got it. If you want something nuanced, unique, adapted to a specific situation, you need to prompt it and feed it with context. If you want it to be creative, wait for new models, or AGI. Or maybe you just disconnect the autopilot and take control, with you being the creative here and AI augmenting your work.

But hear me out: AI or not, you cannot out-design your research. You cannot out-AI your understanding. If you only optimise speed, AI will take you far, but rarely in the right direction. As the saying goes, if you want to go fast, let AI do the thinking. If you want to get far, do the thinking together with AI.

Ha, new vibe-coded website and the first article is about AI. Now I am become zeitgeist.

Read the post All posts