Skip to content
Szczepan Kosik — Senior Frontend Engineer Available · part-time · B2B

Frontends that scalewith your business.Not against it.

10+ years turning complex products into fast, typed, maintainable interfaces. Vue 3 · Nuxt · TypeScript. Tech lead by habit, not by title.

Base
Lublin, PL
Coords
51.25°N 22.57°E
Local time

01 Approach

0103

Performance is your money.

01

Every wasted request is a line on someone's invoice. I hunt them down.

I never listen passively.

02

Refinements are for challenging ideas. Including mine.

Quality is automated, not negotiated.

03

Strict types, lint rules and git hooks. Standards that hold when nobody is watching.

02 Impact

Numbers, not adjectives.

  • 01

    10+

    Years shipping production frontends

  • 02

    20+

    Micro-frontends in one living platform

  • 03

    5+

    Years with the same client — and counting

  • 04

    ~10001

    Paid API calls per publish, down from ~1000

03 Selected files

Classified work.

Most of my projects live behind NDAs. So here are the case files — names redacted, results intact.

File 01 / 05Classified

B2B2C micro-frontend platform

Client
Catering enterprise, Germany
Role
Core frontend engineer
Period
2021 — now

20+ Vue apps living in single-spa, talking to each other in real time. GraphQL, REST and SignalR under one roof.

20+

micro-frontends

5+ yrs

long-term partnership

  • Vue 3
  • single-spa
  • TypeScript
  • GraphQL · Apollo
  • SignalR
  • Tailwind CSS
File 02 / 05Classified

Performance rescue: Vue 2 → 3

Client
Same enterprise, different beast
Role
Senior engineer, de facto tech lead
Period
Rewrite

A rewrite that was slow before it shipped. Hard lint rules, a centralised query layer and real-time invalidation made it as fast as it gets.

0

request waterfalls

1

source of truth for queries

  • Vue 3
  • TanStack Query
  • SignalR
  • Biome
  • TypeScript
Read the full case
File 03 / 05Classified

Cloud translation cost cut

Client
Internal platform tooling
Role
Found it, reported it, fixed it
Period
Investigation

Every translation publish fanned out across all clusters, languages and apps. I traced it and cut it to one app, one request. Plus a script that merged per-feature i18n files and rewrote every key in code.

~1000 → 1

requests per publish

−99.9%

paid API calls

  • Node.js
  • Kubernetes
  • Docker
  • i18n
  • Scripting
File 04 / 05Classified

Weekly meal planner

Client
KnockoutJS legacy successor
Role
Frontend + UI/UX author
Period
Greenfield

I proposed drag & drop everywhere. Planning a week of meals went from clicking through forms to rearranging the screen in seconds.

D&D

first interaction model

100%

UI/UX designed by me

  • Vue 3
  • TypeScript
  • Drag & Drop
  • UX design
File 05 / 05Declassified

wirtualnycmentarz.pl

Client
Public · a virtual cemetery
Role
Sole frontend developer
Period
2019

Vue 2 + TypeScript with SSR, complex screen transitions and careful optimisation. My first big one. Fitting, given my taste in films.

1

frontend dev. Me.

SSR

with heavy transitions

  • Vue 2
  • TypeScript
  • SSR
  • Transitions
wirtualnycmentarz.pl

File ?? / ??

Got a slow app?

I've seen worse. Let's talk.

Let's talk

04 Stack

Tools I trust.

Core10+ yrs
  • Vue 301
  • Nuxt02
  • TypeScript03
  • Tailwind CSS04

What I think in. Daily, for years.

queries/orders.ts
1// one typed source of truth2export const orderKeys = {3  all: ['orders'] as const,4  detail: (id: string) => [...orderKeys.all, id] as const,5}6 7// real-time: invalidate exactly what changed8hub.on('OrderUpdated', ({ id }: OrderEvent) =>9  queryClient.invalidateQueries({10    queryKey: orderKeys.detail(id),11  }),12)
NORMALThe fix that made a slow rewrite fast: typed query keys + targeted real-time invalidation.
Data & real-time
  • GraphQL · Apollo
  • TanStack Query
  • SignalR
  • REST
  • single-spa
  • Pinia
Backend
  • NestJS
  • Node.js
  • PHP · Laravel
  • .NET
  • PostgreSQL
  • Redis
  • MongoDB
Quality gates
  • Vitest
  • Biome
  • Git hooks
  • Strict TS
  • Code review
Infra & delivery
  • Docker
  • Kubernetes
  • Azure
  • CI/CD
  • Linux · VPS
AI / LLM

AI-assisted workflow and LLM integrations — a multiplier, not a replacement for thinking.

Neovim keys. Inside VS Code.

Yes, I know how to exit. I just rarely want to.

:wq

05 Process

How I work.

“He compiles code just by looking at it.”
— a teammate, after a code review
  1. 01

    Question

    I challenge the ticket before I write the code. The cheapest bug is the one never built.

  2. 02

    Architect

    Clear boundaries, typed contracts, no hidden coupling. Components built to be reused.

  3. 03

    Guard

    Strict linting, formatting, pre-commit and pre-push hooks. Reviews that notice what isn't obvious.

  4. 04

    Deliver

    Fast for users, cheap to run for the client, readable for the next developer. And mentoring along the way.

06 Contact

Got a productworth doing right?

Available part-time, B2B, remote. Tell me what you're building — I reply within one business day.

Prefer email?
0 / 4000

Your email is used only to reply. No newsletters, no tracking, no summoning rituals.

Full commitment to shipping the highest quality product.

Built with Nuxt, GSAP and an unhealthy amount of attention to detail.

© 2026 Szczepan Kosik · SK Inspire. All rights reserved.Lublin, PL · 51.25°N 22.57°E