Kto wykonuje pracę
WPPoland to jeden doświadczony programista, Mariusz Szatkowski, który zajmuje się webową i e-commerce’ową stroną oprogramowania: kodem po stronie serwera, integracjami między systemami i front-endami, które na nich stoją. Punktem wyjścia jest WordPress, z którym pracuje od 2006 roku, a stamtąd zakres rozrósł się o WooCommerce, TypeScript i Node.js, front-endy headless w Astro i Next.js oraz kod na brzegu sieci w Cloudflare Workers.
To węższa definicja niż “software developer” w ogólnym sensie, i celowo. Nie ma tu zespołu mobilnego, działu graficznego ani ławki juniorów. Rozmawiasz z osobą, która pisze kod, czyta Twój istniejący kod i za niego odpowiada.
Co buduje programista systemów web i e-commerce
Większość zleceń mieści się w pięciu rodzajach pracy. Nakładają się na siebie, bo prawdziwe systemy też się nakładają.
- Integracje między systemami. Sklep WooCommerce, który musi zgadzać się z ERP, cennikiem hurtowni, programem księgowym albo magazynem. W Polsce dochodzi do tego KSeF: faktura wystawiona po zamówieniu musi trafić do krajowego systemu, a sklep powinien wiedzieć, czy trafiła. Najtrudniejsze rzadko jest samo wywołanie API. Trudne jest ustalenie, który system jest źródłem prawdy dla stanów, cen i statusów zamówień, i co się dzieje, gdy dwa z nich nie zgadzają się o drugiej w nocy.
- Front-endy headless i na brzegu sieci. Astro albo Next.js na WordPressie lub WooCommerce, wdrażane na Cloudflare Workers albo Pages. Opłaca się, gdy model treści jest stabilny, a szybkość lub bezpieczeństwo liczą się bardziej niż wizualny edytor. Nie opłaca się dla strony wizytówki, która zmienia się dwa razy w roku.
- Inżynieria sklepu. Logika koszyka i zamówienia, integracje płatności (w polskim sklepie zwykle Przelewy24, PayU i BLIK) i dostaw, praca nad wydajnością mierzoną na danych od prawdziwych użytkowników, a nie na wyniku z laboratorium, oraz kod wtyczek, w którym mieszkają reguły biznesowe sklepu.
- Własne oprogramowanie na WordPressie. Wtyczki z prawdziwym modelem danych, zadaniami w tle, interfejsami REST i WP-CLI oraz ekranami w panelu, z których redaktor skorzysta bez instrukcji.
- Integracje AI i MCP. Połączenie strony albo sklepu z agentami AI tak, żeby domyślnie działały tylko do odczytu, były logowane i dały się cofnąć. Publiczny serwer MCP dla WooCommerce opisany niżej jest przykładem takiego podejścia.
Jaki stack technologiczny do projektu web i e-commerce?
Stack to zestaw kompromisów, a nie kolekcja odznak. Oto zestaw roboczy i uzasadnienie każdego elementu.
| Warstwa | Narzędzie | Wybierane, gdy | Niewybierane, gdy |
|---|---|---|---|
| Serwer | PHP 8 na WordPressie | System potrzebuje redaktorów, użytkowników, ekosystemu wtyczek i taniego hostingu | Obciążeniem jest długo działająca usługa bez modelu treści |
| Handel | WooCommerce | Katalog, koszyk i dane zamówień muszą zostać w Twojej własnej bazie | Ograniczenia platformy SaaS są do przyjęcia i nikt nie chce utrzymywać serwerów |
| Skrypty i usługi | TypeScript na Node.js | Procesy integracyjne, narzędzia CLI, serwery MCP, wszystko z typowanym kontraktem | Dziesięciolinijkowe zadanie, które WP-CLI już robi |
| Usługi danych | Kotlin i Spring Boot | Długotrwałe importy i masowe przekazywanie danych do systemu marketingowego, z kolejką zadań, ponawianiem i typowanym modelem domenowym | Zespół klienta utrzymuje wyłącznie PHP |
| Front-end | Astro | Strony z dużą ilością treści, w których większość strony jest statyczna | Interfejs to gęsta aplikacja z dużą ilością stanu |
| Front-end | Next.js | Front-endy przypominające aplikacje, z dużą ilością stanu po stronie klienta | Strona to głównie dokumenty |
| Brzeg sieci | Cloudflare Workers i Pages | Cache, przekierowania, małe API i statyczne buildy blisko odwiedzającego | Zadanie wymaga połączenia z bazą otwartego przez kilka minut |
| Narzędzia | Python | Kontrole danych, analiza dokumentów, jednorazowe migracje | Cokolwiek, co zespół klienta będzie utrzymywał w PHP |
Język ma mniejsze znaczenie niż granice. Dobre oprogramowanie to takie, przy którym da się powiedzieć, który system jest właścicielem jakich danych, który kod działa gdzie i jak cofnąć wdrożenie z zeszłego wtorku.
Publiczny kod i wtyczki WordPress do sprawdzenia
Deklaracje o umiejętnościach nic nie kosztują. Poniższe da się zweryfikować bez rozmowy.
- wppoland/woocommerce-mcp: serwer Model Context Protocol dla WordPressa i WooCommerce w trybie tylko do odczytu, napisany w TypeScript, na licencji MIT. Udostępnia pięć narzędzi (produkty, pojedynczy produkt, zamówienia, raport sprzedaży i wyszukiwanie publicznych wpisów) i nic, co mogłoby zmienić sklep. Warto przyjrzeć się właśnie tej decyzji projektowej: domyślnie tylko odczyt.
- wppoland/hidden-text-detector: narzędzie w Pythonie, które wykrywa ukryty tekst i prompt injection w plikach PDF i DOCX, na przykład biały tekst na białym tle, czcionki zbyt małe do przeczytania, tekst umieszczony poza stroną i niewidoczne znaki Unicode. Powstało, bo umowy i zapytania ofertowe przychodzą dziś z instrukcjami przeznaczonymi dla czytnika AI, a nie dla człowieka.
- Plogins i profil motylanogha na wordpress.org: Plogins to pakiet 45 rozszerzeń WooCommerce w wersjach darmowej i pro, zbudowany na PHP 8.1 z PHPStan, PHPCS i automatycznymi wydaniami do wordpress.org i Freemius. 21 wtyczek w oficjalnym katalogu wymienia ten profil (stan na 26 września 2026 roku), w tym Polski, wtyczkę dostosowującą sklep do polskiego rynku (GPSR, Omnibus, RODO), i GatherPress, wtyczkę do wydarzeń społeczności.
- Ta strona. wppoland.com to build Astro 7 na Cloudflare Pages w sześciu językach, z około 13 600 prerenderowanymi stronami. Każda zmiana przechodzi przed wdrożeniem około pięćdziesięciu automatycznych kontroli jakości, od zepsutych linków i konfliktów w schema po kontrolę sitemapy, która nie przepuszcza strony przeznaczonej do indeksowania, jeśli brakuje jej we wszystkich sitemapach. Minifikację HTML przeniesiono we wrześniu 2026 roku na wątki robocze i czas spadł z 910 do 199 sekund na tych samych 13 610 plikach, przy wyniku identycznym co do bajtu.
Doświadczenie zawodowe
Dwadzieścia lat pracy przy stronach i systemach webowych, w większości wewnątrz cudzych systemów. Poniższe role są publiczne na LinkedInie; nazwy klientów w ramach tych zleceń pozostają poufne.
| Okres | Rola | Na czym polegała praca |
|---|---|---|
| Od października 2025 | Full-stack engineer (kontrakt), wiedeńska agencja cyfrowa | Subskrypcyjna platforma medialna i sprzedażowa: monorepo Composera opisujące całą aplikację WordPress, CI z dwiema niezależnymi bramkami wydań, przepływy subskrypcji w Stripe oraz usługa w Kotlinie i Spring Boot, która scala dane z ERP, CleverReach i dane adresowe w Mautic. Własna praca przy tej usłudze: import pozycji faktur subskrypcyjnych (ok. 100 tysięcy w ostatnim pomiarze) i wypychanie ich do Mautica w paczkach, nadzorowany backfill, obsługa błędów z ponawianiem przy przejściowych błędach Mautica oraz runbooki |
| Od października 2025 | Współorganizator, CMSConf, Gdynia | Konferencja o systemach zarządzania treścią, organizowana stacjonarnie w Gdyni |
| Od stycznia 2021 | Programista WordPress, WooCommerce i PHP (kontrakt), Equiqo, Berlin | Rozwiązania szyte na miarę w WordPressie, WooCommerce, HubSpot i Shopify na stacku Roots (Bedrock, Sage), praca nad wydajnością i danymi strukturalnymi |
| 2020 | Programista WordPress, Itineris, Ipswich (Wielka Brytania) | WordPress szyty na miarę na Sage i Bedrock, CircleCI, wydajność i SEO |
| Od 2019 do 2020 | Programista WordPress (freelance), what., Zurych | WordPress szyty na miarę, wydajność i dane strukturalne |
| Od 2016 do 2019 | Programista WordPress i pilot zespołu, AirHelp | Wielojęzyczność, AMP i wydajność w serwisie konsumenckim o dużym ruchu, łącznik między działami |
| Od 2006 do 2015 | Web developer i specjalista ds. marketingu internetowego, Vector Group, Gdynia | Tworzenie stron, serwisy handlowe B2B i marketing w wyszukiwarkach |
| Od 2006 | WPPoland | Marka, pod którą prowadzona jest cała niezależna działalność |
Studia przypadków z projektów programistycznych
Prace dla klientów są objęte NDA, więc studia przypadków są zanonimizowane i mówią o tym wprost. Każde opisuje problem, podejście oraz to, co dało się zmierzyć, a czego nie.
- Wolny sklep WooCommerce sprzedawcy B2B, uratowany przez profilowanie procesu zamówienia i bazy danych zamiast dokładania wtyczki cache: odzyskanie wydajności WooCommerce.
- Niemieckojęzyczna organizacja przechodząca z TYPO3 na WordPressa bez utraty struktury adresów URL i przyzwyczajeń redaktorów: migracja z TYPO3 do WordPressa.
- Wydawca łączący swój proces redakcyjny z agentami AI przez kontrolowany serwer MCP: serwer MCP dla procesu redakcyjnego.
- Headless WooCommerce na Cloudflare przygotowany do zakupów realizowanych przez agentów: headless WooCommerce na Cloudflare.
- Pisemny plan przeniesienia strony WordPress na front-end headless, łącznie z częściami, które powinny zostać bez zmian: plan migracji do headless.
- Integracja AI w procesie tworzenia treści, z weryfikacją przez człowieka wbudowaną w każdy krok: integracja AI w operacjach treściowych.
Szczegóły konkretnych technologii opisują strony usług: WordPress developer, programista WooCommerce, programista PHP, programista Astro, Next.js developer, Cloudflare edge i tworzenie serwerów MCP.
Freelancer, agencja czy software house
Uczciwa odpowiedź zależy od wielkości problemu i od tego, co dzieje się po uruchomieniu. Jeden doświadczony programista nie zawsze jest właściwym wyborem.
| Sytuacja | Doświadczony freelancer | Agencja | Software house |
|---|---|---|---|
| Integracja albo ratowanie projektu z jasnym właścicielem po Twojej stronie | Bardzo dobre dopasowanie: jedna osoba ogarnia cały problem | Często wolniejszy start | Zwykle za ciężki |
| Nowy produkt, który potrzebuje naraz projektu graficznego, front-endu i back-endu | Tylko z Twoim własnym projektantem | Bardzo dobre dopasowanie | Bardzo dobre dopasowanie |
| Sześciu lub więcej programistów potrzebnych w ciągu miesiąca | Nie pasuje | Możliwe | Bardzo dobre dopasowanie |
| Długoterminowe utrzymanie systemu na WordPressie lub WooCommerce | Bardzo dobre dopasowanie, z pisemnym planem ciągłości | Bardzo dobre dopasowanie | Rzadko ich specjalność |
| Aplikacja mobilna | Tutaj nie pasuje | Zależy od agencji | Bardzo dobre dopasowanie |
| Chcesz rozmawiać z osobą, która napisała kod | Zawsze | Czasami | Rzadko |
W Polsce współpraca z freelancerem to zwykle umowa B2B, więc warunki ciągłości da się wpisać wprost do umowy. Prawdziwym ryzykiem przy freelancerze jest właśnie ciągłość: choroba, urlop albo dzień, w którym przestaje odpowiadać. Poproś, żeby było to załatwione na piśmie. Tutaj oznacza to kod w Twoim repozytorium od pierwszego commita, dokumentację obok kodu, dostępy w Twoich rękach i procedurę przekazania, według której inny programista mógłby przejąć pracę.
Agencje i firmy budujące produkt, które szukają stałego partnera technicznego, znajdą trzy modele współpracy na stronie partnerstwa.
Jak ocenić dowolnego programistę
Kogokolwiek zatrudnisz, te pytania oddzielają ludzi, którzy dowożą, od tych, którzy dobrze się prezentują.
- Gdzie jest kod? Powinien być w Twoim repozytorium, w Twojej organizacji, od pierwszego dnia. Programista, który trzyma kod do czasu opłacenia faktury, trzyma go jako zakładnika.
- Jak zmiana jest testowana, zanim trafi na produkcję? Szukaj środowiska stagingowego, automatycznych kontroli i konkretnej osoby, która zatwierdza wdrożenia. “Testuję na żywej stronie” to sygnał ostrzegawczy.
- Jak cofnąć wdrożenie? Pytaj o ścieżkę wycofania, nie o ścieżkę wdrożenia. Wdrożyć potrafi każdy; przećwiczony powrót ma znacznie mniej osób.
- Co zmierzono przed rozpoczęciem pracy? Deklaracje o wydajności, liczbie błędów i konwersji nic nie znaczą bez punktu odniesienia zmierzonego w ten sam sposób.
- Czego nie zrobisz? Programista bez określonych granic albo o nich nie pomyślał, albo odkryje je za Twoje pieniądze.
- Czy mogę przeczytać coś, co napisałeś? Publiczny kod, artykuł techniczny albo dokument projektowy. Styl widać szybko: czy autor nazywa kompromisy, czy wymienia same korzyści.
Jak przejąć kod po innym programiście
Większość zleceń zaczyna się wewnątrz istniejącego systemu, a nie w pustym repozytorium. Pierwszy tydzień to czytanie, nie przepisywanie.
- Najpierw mapa, potem zmiany. Które wtyczki i usługi zawierają logikę biznesową, jakie zadania cron i webhooki działają, jakie dane żyją poza bazą (pliki, cache, panele zewnętrznych usług, na przykład operatora płatności czy firmy kurierskiej). Mapa trafia do repozytorium jako krótki dokument.
- Odtworzenie problemu na kopii. Kopia na stagingu z danymi zbliżonymi do produkcyjnych, zanonimizowanymi tam, gdzie są dane klientów, żeby poprawkę dało się udowodnić przed wdrożeniem.
- Zostawić to, co działa. Przepisanie od zera to najdroższy sposób naprawy systemu i najłatwiejszy do polecenia. Kod brzydki, ale poprawny i pokryty testem zostaje; kod błędny jest wymieniany małymi krokami, które da się przejrzeć.
- Zostawić go czytelniejszym. Każda zmiana przychodzi z kontekstem, którego potrzebowałaby obca osoba: dlaczego ją wprowadzono, co zmierzono i jak ją cofnąć.
Ta sama zasada działa w drugą stronę. Jeśli później pracę przejmie inny programista, powinien móc kontynuować na podstawie dokumentacji w repozytorium, bez dzwonienia do kogokolwiek.
Bezpieczeństwo danych i RODO we współpracy z programistą
Programista z dostępem do Twoich serwerów i baz danych to realne ryzyko, więc zasady postępowania ustala się na piśmie, zanim dostęp zostanie przyznany.
- Dostępy zostają Twoje. Konta tworzy się imiennie w Twoich systemach i odbiera po zakończeniu współpracy; żadnych wspólnych haseł administratora wysyłanych mailem.
- Dane produkcyjne kopiuje się tylko wtedy, gdy to konieczne, przechowuje zaszyfrowane na komputerze programisty, anonimizuje na potrzeby stagingu, jeśli zawierają dane osobowe, i usuwa po zakończeniu prac. W rozumieniu RODO to przetwarzanie danych, więc umowa powierzenia przetwarzania danych jest częścią dokumentacji, a nie dodatkiem na koniec.
- Zmiany na produkcji są identyfikowalne. Każde wdrożenie odpowiada commitowi, a każdy commit ma swój powód.
- Przychodzące dokumenty są sprawdzane. Umowy i zapytania ofertowe są skanowane pod kątem ukrytego tekstu i prompt injection, zanim ktokolwiek, człowiek czy AI, na ich podstawie zacznie działać. Do tego służy wspomniany wyżej hidden-text-detector.
Jak przebiega projekt programistyczny?
Proces jest spisany, żeby nikt nie musiał go pamiętać.
- Brief na piśmie. System, problem, termin, istniejące repozytoria i hosting oraz to, kto podejmuje decyzje po Twojej stronie.
- Zakres z założeniami. Co jest w zakresie, co jest wyłączone i co musi być prawdą, żeby wycena się utrzymała. Projekt graficzny, makiety i treści dostarcza klient, co jest wprost zapisane.
- Punkt odniesienia. Dostępy, kopia na stagingu i pomiary przed jakąkolwiek zmianą, żeby “lepiej” miało przypisaną liczbę.
- Cotygodniowe iteracje. Commity do przejrzenia, co tydzień prezentacja na stagingu i decyzje zapisane w repozytorium, a nie w wątku na czacie.
- Wdrożenie i przekazanie. Przećwiczone wycofanie, dokumentacja i, jeśli dalej prowadzą to Twoi programiści, spotkanie przekazujące z osobą, która napisała kod.
Warunki płatności są częścią pisemnego zakresu, z konkretnymi datami zamiast “po zakończeniu”. Praca rusza po zaksięgowaniu uzgodnionej zaliczki.
Co nie wchodzi w zakres usługi
Jasne granice oszczędzają obu stronom miesiąc.
- Projektowanie graficzne, makiety i projektowanie UX. Układ dostarcza klient, często jako prosty arkusz przypisujący elementy do poszczególnych widoków. Zadaniem jest wdrożenie go w działający, responsywny interfejs.
- Natywne aplikacje mobilne. iOS i Android to osobna dziedzina i lepiej obsłuży je specjalista.
- Wsparcie 24/7. Monitoring i szybka reakcja w godzinach pracy, tak; dyżur o trzeciej w nocy, nie.
- Udawanie zespołu. Jedna osoba to jeden kalendarz. Duże równoległe obciążenia to zadanie dla agencji albo software house’u.
Gdzie działa programista?
Gdynia, na polskim wybrzeżu Bałtyku, w czasie środkowoeuropejskim (CET). Klienci są głównie z Polski, Niemiec, Austrii, Szwajcarii, Skandynawii i reszty UE, a praca jest zdalna, z cotygodniowymi prezentacjami. Poza pracą dla klientów Mariusz od 2024 roku jest członkiem zespołu organizacyjnego WordCamp Europe na ścieżce budżetowej, przy edycji 2025 w Bazylei i edycji 2026 w Krakowie, a w Gdyni współorganizuje CMSConf.
Jeśli Twój problem to system webowy albo e-commerce, który ma działać niezawodnie i być zrozumiały dla następnej osoby, która do niego zajrzy, opisz go na piśmie. Odpowiedź z pytaniami albo pierwszym zakresem przychodzi zwykle w ciągu jednego dnia roboczego. Więcej informacji znajdziesz na stronie o mnie.





