Skip to content

Enterprise Design Engineer · Gdynia / Tricity, Poland

I design products
and code them myself.

My route into product design at Hapag-Lloyd ran through five and a half years of production code, over three of them as a fullstack developer. So when I draw a screen I know how to build it, and often do. Since late 2025 I've also been bringing AI into the way our UX department works.

View projects
Wojciech Czarnocki smiling at the camera, hands pressed together in a diamond shape, with plants in the background
  • Product
  • Code
  • AI systems

About me

Design found me by way of code, and code by way of data. Programming and design were both learnt in the evenings, around a full-time job. Each stage left its mark: data gave me the habit of checking things, and code gave me a feel for what my designs actually cost to build.

It started in 2018, with a job as a market data analyst at Thomson Reuters. For six months I studied Java three hours a day, five days a week, and by autumn 2019 I was writing data integrations for the same company. Hapag-Lloyd took me on as a fullstack developer in December 2021. Twice before, I had pulled out of that recruitment process, convinced I wasn't up to it.

In 2023 I took the Sztuka Projektowania design course, the only developer in a room of art directors and designers. A year later I redesigned the API portal I had been building, from the first customer conversations through to release, and in April 2025 I became a Product Designer.

In every one of these roles I gravitated towards work nobody owned. At LSEG that meant rebuilding the team's Jira workflow. At Hapag-Lloyd it meant pitching the portal redesign and, later, AI adoption in the UX department, which I still lead. Outside work I'm building TwójOpiekun, a service for families looking for care for an elderly parent. The day job lends that project its discipline around testing and quality. In return, the project hands the day job AI tools I've already tried on my own work.

Experience

  1. Hapag-LloydGdańsk

    12.2021-present
    1. Product Designer04.2025-present

      Designing the applications ocean freight customers use to plan shipments and check deadlines. Since late 2025, also leading AI adoption in the UX department.

      More detail
      • Embedded in a product team with developers and Product Owners. Set up our ways of working together, including a weekly design and development sync.
      • Requirements grounded in customer evidence: interviews, workshops, and, for one product, success metrics defined with the Product Owner.
      • Led the phased modernisation of one application, with no full rewrite, as both the research and the technical constraints pointed that way.
      • Helping to shape the department's design standards: a token-based design system with code as the source of truth, plus audits that check builds against designs.
      • As part of AI adoption, extending the design system documentation so that AI agents reproduce it more faithfully in prototypes and are more use to designers day to day.
    2. Fullstack Developer12.2021-04.2025

      Built and maintained the portal external companies use to connect to Hapag-Lloyd's APIs, across both back end and front end.

      More detail
      • Owned the portal's entire front end, including its migration and the redesign described under Projects.
      • Ran Scrum for the team, certified PSPO I since 2022.
      • Added an FAQ, and wrote the technical documentation and templates that made deployments simpler.
  2. TwójOpiekun

    since 2025
    1. Founder

      A service that connects families with carers for older people. A solo, out-of-hours project: research, design, code, and grant applications.

      More detail
      • Four language versions, built on Next.js and Supabase.
      • First pitched at a Demo Day in November 2025. Interviewed by MamStartup in June 2026.
  3. Thomson Reuters, later Refinitiv and LSEGGdynia

    06.2018-11.2021
    1. Data Onboarding Specialist (Java Software Engineer)10.2019-11.2021

      Wrote Java integrations that brought commodities and energy data from external sources into the LSEG database.

      More detail
      • The data fed through to customers on the Eikon terminal.
      • Restructured the team's Jira workflow into three dated stages, with lead-time tracking and a dashboard per team. The backlog shrank as a result.
      • Onboarded new joiners to the tools and the team's day-to-day work.
    2. Data Analyst (Exchange Traded Instruments)06.2018-09.2019

      Maintained German derivatives data delivered in real time to customers on the Eikon terminal.

      More detail
      • Handled customer queries and trained new team members.
      • Automated repetitive checks with Excel macros, which is when I realised I wanted to write code.

Projects

Hapag-Lloyd, 2022-2025

  • Product
  • Code

Redesigning the API portal as its developer

External companies use the portal to connect to Hapag-Lloyd's APIs. Developers and business users both relied on it, and it served neither well. With no designer on the team, I logged the defects, turned the list into a prototype, and made the case for putting a redesign on the roadmap. Customer interviews and usability tests followed, then separate journeys for developers and for business users, and finally a front end I rewrote in Vue 3 myself.

In production since February 2025. This is the project that moved me into product design.

Worked with: the UX team on interviews and testing, and the Product Owner on priorities.

“He genuinely wanted to solve customer issues and approached the tool like an external user.”

Julia, Product Owner for the API portal, LinkedIn recommendation, 2024

770 rose to 2,483

monthly active users: the July-November 2024 average, and August 2026

Source: Google Analytics. Some of the growth comes from new API products and links from the main website. The user journeys are the part I can take credit for.

Hapag-Lloyd, since late 2025

  • Product
  • AI systems

AI in the UX department: conversations first, tools second

Designers and researchers were already using AI on their own initiative, some of them paying for tools out of their own pockets. The project was my proposal, and it began with conversations with 19 people across the department. The first tool to come out of it is a design system knowledge base that AI models query through an MCP server. It was built with designers in mind, yet its biggest win turned up elsewhere:

“…the biggest value went not to the designers but to code audits and spotting discrepancies.”

Karolina, organiser of BRAVE AI Community, LinkedIn post, 2026, translated from Polish

The design system team now maintains the knowledge base.

Worked with: DevOps set up the MCP server, and the design system team took over its upkeep.

Wojciech Czarnocki on stage at BRAVE AI Community, beside a slide showing three steps: synthesis, format, and distribution
  1. SourcesKnowledge in four placesFigma files, documentation, Storybook, and code
  2. SynthesisOne schema for every entryinterface, states, tokens, and code examples
  3. BaseMarkdown files in a repository72 components documented
  4. DistributionAn MCP serveror a submodule in the project repository
  5. UseAI models in the team's workflowcode review and prototyping
How the design system knowledge base works. The diagram was drawn from scratch for this site.

Personal project, since 2025

  • Product
  • Code
  • AI systems

TwójOpiekun: a service I'm building single-handedly

After my grandmother had a fall, it took us three months to find her a carer, and we paid an agency PLN 12,000. Three months later the carer quit. Ten of the twelve people I interviewed described the same trail: friends, Facebook, agencies, the municipal social welfare centre, each one tried only after the last had failed.

The service I'm building is meant to cut that search short. The research, design, and code are all mine, on Next.js and Supabase, with an AI agent helping on the code. Every change is guarded by 3,914 tests, and none gets in without a green CI run.

It goes public once the legal formalities are complete.

TwójOpiekun's For families page on desktop, in Polish. The heading reads “Find a carer for your parent in Tricity, without the stress and without an agency”, and the button reads “Describe your relative's needs”The carer directory on a phone: a form button, filters, sorting, and a sample profile card
Screenshots of the running code, 28.10.2026

Personal project, 2026

  • Code
  • AI systems

The scanner that caught my own neglect

My knowledge base about my projects has two layers: the sources, which I write, and a synthesis, which a language model maintains. A few hundred files in, I stopped trusting the second layer. Some pages described a state of affairs that no longer existed, and nothing was flagging it.

So I wrote a scanner that compares what the knowledge base says about itself with what is actually on disk. It's a single Python file with no dependencies, and it never modifies the base. Its nine rules range from pages older than their sources to dead links. Each finding is labelled as either fact or judgement: facts become a to-do list, and judgement calls are left to me. The rules themselves are tested against a synthetic base seeded with fifteen defects. On its first run, the scanner flagged a security audit that had been sitting open for 80 days.

Closing it took seven commits.

λ skan-dryfu

security audit open for 80 days

Personal project, 2023-2026

  • Product
  • Code

The mark and design system behind this site

The mark dates back to 2023, when I designed it for my diploma project on the Sztuka Projektowania course. Its three elements make up the letter W, and since 2026 they have stood for Product, Code, and AI systems. As part of that change I darkened the base teal, so that amber text on it has a contrast ratio of 7.07:1, up from 5.55:1.

The identity system is all my own work: the mark, its construction, the colours, and the typography. The decorative elements on this site (the frames in Expertise and the aperture in Contact) are generated entirely from the mark's three paths. They came out of an exploration I ran in code with an AI agent.

Every token and component on this site comes from that system.

14x4xAa7,07:1AAA

Expertise

Product

  • User research.My starting point is in-depth interviews and usability tests, with the findings checked against product data. That's how I worked with customers of the API portal, with families looking for care, and with my own UX department. On one Hapag-Lloyd application, research turned up customers who had never heard of the deadlines feature. Customer service then pointed to a second group, who knew the feature and still rang to make sure the vessel would sail on time. So the prototype shows when the data was last refreshed.
  • UX writing and localisation.My degree is in English, specialising in localisation, so interface copy is part of the design for me. TwójOpiekun comes in four language versions. Its emails greet people in the Polish vocative case, tested on 80 first names, and nouns take one of three forms after a number, ever since the system told me it had “Approved undefined profiles”.
  • Accessibility from the first sketch.TwójOpiekun is used by older people and their grown-up children, so its comfort view is on from the very first visit: larger text, and buttons at least 48 px tall. A March 2026 audit scored it 73 out of 100, with 17 violations, one of them critical. Today, tests cover the forms in three display modes, including high contrast, and a CI gate blocks any new text smaller than 14 px.

Figma, Figma Make, PostHog, Google Analytics

View projects in this pillar

Code

  • Front ends that reach production.Vue 3 and React, both with TypeScript, are what I write front ends in. A screen I've designed is one I can take all the way to production myself, as I did with the API portal.
  • Supervised coding with an AI agent.On TwójOpiekun an AI agent writes code alongside me, and every change has to clear the tests and 13 CI gates. Database migrations I run by hand, because that's one gate the agent doesn't get through.
  • Design systems in code.This site is built on my own design system: tokens, components, and a three-part mark. On TwójOpiekun every screen draws its colours from a single token file.

Vue 3, TypeScript, React, Next.js, Java, Python, Supabase, Storybook

View projects in this pillar

AI systems

  • Rolling out AI in a team.In our UX department, conversations with the team produced 18 ideas. Each one got a transparent score for impact, effort, and team readiness, so we let the scores settle the order. Five small-group training sessions came next.
  • Knowledge bases for agents.Knowledge scattered across different tools gets pulled into a single base with a fixed schema, which AI models read through an MCP server. The design system knowledge base from the AI in the UX department project was built this way. It also powers an agent that generates prototypes in line with the design system.
  • Measuring how I work with AI.I scored 196 of my sessions with AI agents against a third-party rubric, then cross-checked the result with a second measurement across 52 transcripts. It turned out my own log had been flattering me by 10 points.

Claude Code, GitHub Copilot, MCP, AWS

View projects in this pillar

How I work

Reliability over speed.

  • Numbers get checked at the source.In August 2026 I went back through 26 figures on the TwójOpiekun blog and looked each one up in the source it cited. Five matched. Nine meant something different in the original, and twelve I couldn't find at all. Since then, no number goes into my copy until I've seen it in the source with my own eyes.
  • The law gets read like a spec.I had finished the code for vetting carers with a certificate from the National Criminal Register. Four days later I read the legislation and found there's no legal basis for demanding one where the care is for adults. I switched the feature off and wrote down the condition under which it could come back.
  • The plan changes when the data disagrees.TwójOpiekun began as an algorithm for matching families with carers. Then I analysed 255 public threads about care, and 80% of the key ones were about carers. So carers come first, because without them the platform is an empty shell.
  • Teaching happens in small groups, on real work.In my AI training sessions, everyone works on a task of their own. That's how ten designers got through VS Code and GitHub Copilot with me, tools they had only ever associated with programming. Being good at passing on what I know is a recurring theme in feedback from colleagues.

“His expertise and openness made him a great teacher when I joined his team.”

Maciej, teammate, LinkedIn recommendation, 2021

See all recommendations on LinkedIn

Services

I'll bring AI into your design team the same way I brought it into mine.

It starts with talking to the people who will actually use the tools, because that's where the list of things worth building comes from.

What you're left with is a set of tools built on what you already have, and a team that can take them forward.

Six stages of adoption

  1. Discovery and interviewsConversations with people at every level, from team leads to the newest joiners. The questions are about how their day goes and where the time disappears, long before anyone names a tool.
  2. State-of-adoption reportA snapshot of where you're starting from: who already uses AI and what for, who is paying for tools out of their own pocket, which worries come up most, and where the real bottlenecks are.
  3. Use case prioritisationEvery idea is scored for impact, effort, and team readiness against a transparent rubric, with a bonus for anything that benefits more than one group.
  4. Solution definition and documentationA clear account of what we're building, in what order, what it depends on, and how we'll know it works.
  5. ImplementationThe tools are built on what your organisation already has and is approved to use.
  6. Training and handoverYour team learns to work with what's been built, in small groups and on their own tasks. The aim is the point at which your own people take over the upkeep.

Ways to work together

  • Full adoption processModelled on the process I ran in the UX organisation of a large company.
  • Introductory workshopTwo versions: one for design and research, and one for working with code.
  • ConsultingReviews of how you work with agents, agent design, quality audits, and mentoring.

The first step is a 30-minute call. You'll get a quote afterwards.

Talks and writing

  1. 29.10.2026EDISONDA webinarInvisible customers. Invisible risks.On the customers who leave the app and pick up the phone or send an email instead. Talk in Polish.
  2. 20.04.2026VibeCONFA double life: corporate product design by day, an AI-built marketplace after hours.The source of the line “Reliability > speed”. Talk in Polish.
  3. 14.04.2026BRAVE AI Community #4, GdańskWhat happens when AI gets the full context of your design system?Talk in Polish.
  4. 11.2025Demo Day, No-Code & AI Startup Builders, GPNTThe first pitch for TwójOpiekun.Pitch in Polish.
A packed room during the talk at BRAVE AI Community in Gdańsk, seen from the back
BRAVE AI Community #4, Gdańsk, 14.04.2026
  • 20.06.2026Interview, MamStartup“Everyone goes through the same thing and nobody takes any interest”How is a programmer fighting for fairness in the senior care market? By Aleksandra Janik. In Polish.Read the interview

Get in touch if you have a project, a job offer, or a speaking invitation.

Workshops and AI training for your team, or for your whole organisation, are also on offer.

wojczarnocki@gmail.com

Expect a reply within two working days. You can also find me on LinkedIn.