Backend
- PHP 5.6, 7.3, 8.3
- REST API
- MySQL / PostgreSQL
- Laravel / Node.js
Frontend
- Blade / Twig
- Vue3
- Tailwind CSS
- Bootstrap 5+
Narzędzia i jakość
- Git / GitHub / GitHubActions
- Docker
- Google Analytics / Google Search Console
- SENUTO / Ahrefs
- VS Code
- Claude Code
- n8n
Umiejętności w praktyce
- Analiza potrzeb biznesowych i dobór technologii
- Automatyzacja procesów z wykorzystaniem AI
- Refaktoryzacja legacy code
- Współpraca z zespołami z różnych dziedzin
- SEO + Wyszukiwarka Google
Kim jestem?
Jestem programistą samoukiem. Na początku swojej ścieżki zawodowej usłyszałem coś, czego bardzo nie lubię, że “nie stać mnie na więcej”. To mnie zmotywowało do szybszego rozwoju i zmiany pracy. Codziennie nieustannie się rozwijam i dążę do ciągłego doskonalenia swoich umiejętności i poszerzania wiedzy. Przeszedłem od ciężkiej pracy fizycznej na akord, przez specjalistę SEO, aż do przejścia do sektora IT, gdzie rozwijam się jako PHP Developer.
Portfolio
Morning Hub
Personalny dashboard produktywności agregujący dane z wielu źródeł w jednym miejscu. Integruje ClickUp API (multi-workspace), Google Calendar (OAuth 2.0) i czytnik RSS. Bloki rutyny porannej są konfigurowalne i ładowane leniwie (Inertia deferred props), żeby nie blokować interfejsu podczas pobierania danych z zewnętrznych API. Tokeny API przechowywane szyfrowane w bazie. Logowanie przez e-mail lub Google OAuth z opcjonalnym 2FA (TOTP).
Jeżyc Jadło
Interaktywna mapa gastronomiczna dzielnicy Jeżyce w Poznaniu z aktualnym statusem lokali (otwarte / zamykające się / zamknięte). Godziny otwarcia pobierane z Google Places API i odświeżane automatycznie co dobę — z możliwością ręcznego nadpisania przez admina. Status lokali przeliczany co 5 minut przez scheduled job. Import lokali z OpenStreetMap (Overpass API) z filtrowaniem do granic dzielnicy algorytmem ray-casting. SSR przez Inertia.js dla lepszego SEO, JSON-LD structured data, mapa renderowana przez MapLibre GL. System zaproszeń (invite-only registration), recenzje użytkowników z moderacją.
RawChart
Mikroserwis do generowania wykresów w trzech formatach z jednego API: JSON (dane do renderowania po stronie klienta), PNG (zrzut przez Puppeteer + headless Chrome, rozwiązuje problem renderowania wykresów w PDF) i Embed (standalone HTML do osadzenia przez iframe). Dane wysyłane raz, format wybiera konsument. Uwierzytelnianie przez klucze API z osobnymi tokenami do odczytu, rate limiting per IP, cache Redis z graceful degradation, dokumentacja Swagger/OpenAPI.
Kolejna Behawiorystka
Strona wizytówkowa dla behawiorystki zwierzęcej. Prezentuje ofertę, podejście do pracy i dane kontaktowe w responsywnym, estetycznym układzie.
Doświadczenie zawodowe
Regular PHP Developer - Widoczni
Od: 2024/01
Jako Regular praktycznie przejąłem odpowiedzialność za zmiany w projekcie Panelu Klienta. Prowadzę juniorów — nie tylko w zakresie onboardingu, ale też wdrożenia do projektów i wsparcia merytorycznego na co dzień. Rozwijam i rozbudowuję moduły firmowego CMS z wykorzystaniem pakietów Symfony, dbając o jakość kodu, stabilność i skalowalność rozwiązań.
Junior PHP Developer - Widoczni
Od: 2023/06 - 2023/12
Dołączyłem do projektu Panelu Klienta (Laravel 8) i zautomatyzowałem generowanie blisko 1000 raportów miesięcznie, które wcześniej powstawały ręcznie. System pobierał dane z zewnętrznych API (GSC, GA, SENUTO) i wewnętrznych narzędzi — obejmował fabrykę raportów, proces wysyłki i wizualizację danych (Chart.js). Przeprowadziłem też refaktoryzację modułów z PHP 5.6 do PHP 7.3 oraz budowę raportów wewnętrznych (DataTables).
Specjalista SEO - Widoczni
Od: 2020/09 - 2023/05
Odpowiadałem za analizę serwisów klientów pod kątem widoczności w wyszukiwarkach, przygotowanie i wdrażanie audytów technicznych SEO na różnych CMS (WordPress, Shoper, Shopify i inne). Stworzyłem wtyczkę do przeglądarki (JavaScript), która automatyzowała pracę zespołu i była przepustką do działu IT.