Web development
Hand-written front-end, headless WordPress, or a static build: accessible, indexable, and structured so your team can edit it without breaking it. WebGL and motion when they earn their place.
Independent designer & developer · since 2000
Brand, interface, website, and the strategy underneath. One person, start to finish. Twenty-five years, 200+ projects, and nobody between you and the work.
Selected work
Brand systems, product design and e-commerce, plus a few things that exist only because somebody wondered aloud whether they could. The write-ups mention what went wrong, because that’s the useful part.
Open project →
Open project →
Open project →
Open project →
Open project →
Open project →
Open project →
Open project →
Open project →
Open project →
Open project →
Open project →
About me
Table layouts, Flash, three responsive frameworks nobody remembers, a couple of AI revolutions. Each was going to change everything. Some did. The brief underneath never moved: make it clear, make it work, make somebody care.
I remember when a rounded corner took three background images. That’s not nostalgia, it’s pattern recognition: I know which ideas survive a real audience, and which only look good in a deck.
What follows isn’t a portfolio. It’s a list of problems I was paid to solve — occasionally the one the client actually walked in with.
What I do
My last client walked in with your problem. Probably. Twenty-five years of unclear offers and sites that didn’t sell taught me a better question than “what colour should the logo be” — and that design comes third on the list of reasons anyone books a call.
No account manager. No strategist relaying your brief to a junior. Here’s what I handle myself:
Hand-written front-end, headless WordPress, or a static build: accessible, indexable, and structured so your team can edit it without breaking it. WebGL and motion when they earn their place.
Flows, wireframes and high-fidelity UI for web apps and dashboards. Built as a component library, so the next screen costs less than the last one.
Naming direction, a logo system, type and colour scales, motion principles. Plus a guideline file specific enough to settle an argument after I’m gone.
Positioning, the offer itself, and the order people meet it in. The part nobody asks for and the one that usually moves the number. Often it turns out you didn’t need a redesign at all.
Campaigns, landing pages, email sequences, and the tracking that says whether any of it worked. Built by the person who also built the site, so nothing gets parked as “a dev question”.
You can have the same AI feature as everybody else, or something built around your data and the way your team already works. I’ll tell you which one you need. Sometimes the honest answer is neither.
Not sure which of these you need? That’s usually the first thing we work out. Start a project
Retainers start at $499 a month. Projects are quoted individually.
What I don’t do: SEO, ad account management, and anything that needs a team of six. I build sites an SEO specialist is glad to inherit: fast, structured, indexable. Running the SEO itself is somebody else’s job.
Start a project
Got a problem that looks like a design problem? The diagnosis is free.
Write before the first pixel is placed — a paragraph now is worth a redesign later, while everything is still movable.
The project, the part you’re least sure about, the budget range. If it belongs with somebody else, I’ll tell you who.
A human replies. Not an autoresponder. Usually the same day, always within 24–48 hours on a weekday.
Marcin
AI Lab
Filed before the machines catch up. Autonomous agents, generative interfaces and applied models, kept here rather than sold as a service, because half of it will be obsolete by spring. The other half is why the AI work above isn’t a wrapper around somebody else’s API.