Skip to content

Michał Sawicki - Full-Stack Developer

Profile

Full-Stack Developer with 5+ years in the JavaScript/TypeScript ecosystem - deep frontend roots in React and Next.js, now shipping end-to-end products: type-safe APIs (tRPC, NestJS), PostgreSQL/MySQL data models, payment and third-party integrations, and the CI/CD and Docker infrastructure that keeps them running. Owning features from database to UI and working directly with clients and international stakeholders.

Work Experience

Freelance Full-Stack Developer

Self-employedMar 2026 – Present
  • Modular House Manufacturer - Website, Configurator & Admin Panel

    • Extended the online house configurator and its admin panel end-to-end (Next.js, tRPC, Drizzle ORM, PostgreSQL) with new configuration fields (financing, building plot, lead time), side-by-side configuration comparison, and richer generated PDF offers.
    • Automated lead handling by routing every website form to n8n workflows under a documented payload contract, alongside MJML email templates, MailerLite and Firestore.
    • Took over and extended a multilingual (PL/DE/EN) Next.js marketing site driven by Prismic CMS, adding new Slice Machine slices (reviews and article carousels, CMS-driven footer, catalog) and pages (reviews, localized 404 with SEO).
    • Implemented per-locale analytics with Google Tag Manager and Meta Pixel, pushing conversion events directly to the dataLayer.
    • Delivered a full company rebrand across the website, admin panel, email/PDF templates, domains and redirects, including an SMTP migration.
    • Added a Jest suite validating MJML email templates in every language and a Playwright e2e test for configuration submission; updated an AWS Lambda statistics job for the new fields.
  • GraMuzyka - Concert Ticketing Platform & CRM (opens in a new tab)

    • Built a code-first internal CRM on Twenty (TypeScript, NestJS, PostgreSQL) replacing Zoho CRM - modeling venues, a kanban reservation pipeline, performer engagements and contract data, and concert formats - and migrated the existing Zoho data into it.
    • Made the CRM the single source of truth for cities and venues, synced to WordPress through a webhook ping + pull feed API, with a manual "sync now" action.
    • Customized the WooCommerce + Tickera ticket sales flow for a concert producer touring ~11 Polish cities with 60-80 events a year: streamlined checkout, localized seat-map picker, imoje payment notification webhooks, stock restoration on refunds, and Apple Wallet / Google Wallet ticket passes.
    • Integrated marketing tooling: Omnisend newsletter, waitlists for announced events and checkout consents (with a retry queue), server-side Meta Conversions API alongside Meta Pixel, and Fluent Forms.
    • Rebuilt gramuzyka.com as a custom WordPress theme (PHP, MySQL) from a client prototype: 50+ native, server-rendered Gutenberg blocks replacing a legacy Kadence/Elementor setup.
    • Set up safe release workflows: rsync-over-SSH deploys with staging/production environments, git-tagged releases and one-command rollback for WordPress, and a plan → review → publish pipeline with GitHub Actions CI and unit/integration tests for the CRM.
    • Self-hosted the client's infrastructure on a Linux VPS: Twenty CRM in Docker, a Mailcow mail server delivering ticket confirmations, and Vaultwarden as the team's password manager.

Frontend Developer

  • Digital Workforce Management Platform

    • Shipped end-to-end product flows in a cross-functional Agile team (10+ members), aligning API contracts with the BFF and backend teams.
    • Built and maintained a React SPA with TypeScript, Zustand, shared i18n, and an internal design system.
    • Implemented WCAG/ARIA accessibility improvements following an accessibility audit (semantic markup, keyboard navigation, focus management, screen-reader support).
    • Improved performance via locale-based code splitting and lazy-loaded translation chunks, reducing initial bundle size by ~200-300 KB.
    • Increased quality through unit/integration tests (Vitest, React Testing Library) and ongoing SonarQube-driven refactoring and coverage improvements.

Software Developer

Pagepro (opens in a new tab)Jul 2022 – Nov 2023
  • Online Learning Platform

    • Cut the platform's highest recurring hosting expense by ~30% by redesigning image delivery: replaced Vercel image optimization with pre-generated image sizes served from AWS S3.
    • Built and improved features in a Next.js application using a mix of SSR/ISR and client-side rendering, with a GraphQL data layer on top of a Strapi headless CMS.
    • Maintained and stabilized a production e-learning platform with several thousand users, focusing on bug fixing, troubleshooting, and keeping the application reliable over time.
    • Worked in a direct client-facing setup with close 1:1 collaboration (client + PM), owning tasks end-to-end from estimation and implementation to production delivery and post-release support.
  • Software Development Company Website

    • Automated Cloudflare cache invalidation on publish (API-triggered purge + SSG rebuild) to keep content fresh, and contributed to PageSpeed/Core Web Vitals optimizations (~10-15% improvement).
    • Built the site with Next.js using SSG and integrated Storyblok as a headless CMS (dynamic blocks/components + live preview) to enable non-technical content updates.
    • Implemented SEO improvements requested by marketing, including structured data, sitemap.xml, and robots.txt configuration.
    • Delivered new features and resolved issues across a multi-page company website, working closely with the marketing team to support content-driven needs.
  • Various Projects

    • Automated content workflows by integrating AI-assisted translation (DeepL API) into a Sanity CMS setup, streamlining localization and reducing manual content overhead.
    • Modernized and maintained frontend applications by leading a major Ant Design upgrade (v3 → v5), improving UI consistency and keeping dependencies current.
    • Built interactive marketing experiences in JavaScript, including a lightweight Three.js arcade-style mini-game to boost engagement.
    • Contributed to a developer documentation application using Docusaurus, improving accessibility of technical content for internal teams and end users.

Frontend Developer

LBPro (opens in a new tab)Apr 2021 – May 2022
  • Parking Lot Management System

    • Built and shipped features in React with Redux on top of REST APIs, aligning API contracts with the backend team within a cross-functional product team.
    • Implemented core "parking manager" workflows, including UI for configuring pricing, parking rules, and managing parking spaces.
    • Improved UX and reliability of critical admin flows by handling validation, edge cases, and user-friendly error/loading states across API-driven screens.
    • Supported performance and maintainability through iterative refactoring, bug fixing, and close collaboration with teammates during delivery (code reviews).

Quality Assurance

LBPro (opens in a new tab)Sep 2020 – Mar 2021
  • Parking Lot Management System

    • Performed manual and functional testing for web application features, verifying requirements and supporting release readiness in collaboration with developers, PM and BA.
    • Maintained test documentation and reported defects with clear reproduction steps, expected vs. actual results, and supporting evidence to speed up fixes.
    • Created basic API checks in Postman to validate REST endpoints and improve feedback quality during development and bugfixing.

Skills

Languages & Core

TypeScript, JavaScript (ES6+), Node.js, PHP, SQL, HTML5, CSS3

Frontend

React, Next.js (App Router, CSR, SSR, SSG, ISR), Tailwind CSS, State Management (Redux, Zustand), Data Fetching (React Query), Schema Validation (Zod), Storybook, Ant Design, Design Systems, Accessibility (WCAG, ARIA), Internationalization (i18n), Performance Optimization (Core Web Vitals)

Backend & APIs

NestJS, Express, REST APIs, GraphQL, tRPC, Webhooks, Payment Integrations (imoje, WooCommerce), Third-party APIs (Meta Conversions API, Omnisend, MailerLite, DeepL)

Databases & CMS

PostgreSQL, MySQL, Drizzle ORM, Firebase (Firestore), WordPress (Gutenberg, WooCommerce), Twenty CRM, Headless CMS (Prismic, Strapi, Storyblok, Sanity)

Cloud, DevOps & Infrastructure

AWS (S3, CloudFront, Lambda), Vercel, Cloudflare, Docker, Docker Compose, Linux VPS, GitHub Actions, GitLab CI/CD, rsync/SSH Deployments, Staging/Production Environments, Self-hosting (Mailcow, Vaultwarden)

Testing & Quality

Jest, Vitest, React Testing Library (RTL), Playwright, MSW (Mock Service Worker), Postman, SonarQube, Sentry

Automation & Tools

Git, GitHub, n8n, MJML, Google Tag Manager, Hotjar, ESLint, Prettier

Languages

Polish (Native), English (Upper-Intermediate, B2)

Contact