Software developer for web and e-commerce systems

Software developer for web and e-commerce systems

5.00/5 - (17 votes)
13 min read
Guide

#Who does the work

WPPoland is one senior software developer, Mariusz Szatkowski, working on the web and e-commerce side of software: the server code, the integrations between systems and the front ends that sit on top of them. The work has been WordPress-anchored since 2006 and has grown outward from there into WooCommerce, TypeScript and Node.js, headless front ends in Astro and Next.js, and edge code on Cloudflare Workers.

That is a narrower definition than “software developer” in general, and it is deliberate. There is no mobile team here, no design department and no bench of juniors. What you get is the person who writes the code, reads your existing code, and answers for it.

#What a web and e-commerce software developer builds

Most requests fall into five kinds of work. They overlap, because real systems do.

  • Integrations between systems. A WooCommerce store that has to agree with an ERP, a wholesaler’s price feed, an accounting package or a warehouse. The hard part is rarely the API call; it is deciding which system is the source of truth for stock, prices and order status, and what happens when two of them disagree at two in the morning.
  • Headless and edge front ends. Astro or Next.js on top of WordPress or WooCommerce, deployed to Cloudflare Workers or Pages. Worth it when the content model is stable and speed or security matters more than the editor’s visual builder. Not worth it for a brochure site that changes twice a year.
  • Store engineering. Checkout logic, payment and shipping integrations, performance work measured against field data rather than a lab score, and the plugin code that holds a store’s business rules.
  • Custom WordPress software. Plugins with a real data model, background jobs, REST and WP-CLI interfaces, and admin screens that editors can use without a manual.
  • AI and MCP integrations. Connecting a site or store to AI agents in a way that is read-only by default, logged and reversible. The public WooCommerce MCP server described below is an example of that approach.

#The stack, and where each part earns its place

A stack is a set of trade-offs, not a badge collection. This is the working set and the reason each part is in it.

LayerToolPicked whenNot picked when
ServerPHP 8 on WordPressThe system needs editors, users, a plugin ecosystem and cheap hostingThe workload is a long-running service with no content model
CommerceWooCommerceCatalogue, checkout and order data must stay in your own databaseA hosted platform’s limits are acceptable and nobody wants to run servers
Scripting and servicesTypeScript on Node.jsIntegration workers, CLI tools, MCP servers, anything with a typed contractA ten-line job that WP-CLI already does
Data servicesKotlin and Spring BootLong-running imports and identity resolution over millions of records, with a queue and typed domain modelThe client’s team only maintains PHP
Local AIOllama via Spring AIClassification where client data must never leave the premisesA task that plain rules or a lookup table already solve
Front endAstroContent-heavy pages where most of the page is staticThe interface is a dense, stateful application
Front endNext.jsApplication-like front ends with a lot of client stateThe site is mostly documents
EdgeCloudflare Workers and PagesCaching, redirects, small APIs and static builds close to the visitorThe job needs a database connection held open for minutes
ToolingPythonData checks, document analysis, one-off migrationsAnything the client’s team will maintain in PHP

The language matters less than the boundaries. A good piece of software here is one where you can say which system owns which data, which code runs where, and how to undo last Tuesday’s release.

#Public proof you can check before you write

Claims about skill are cheap. These can be verified without a call.

  • wppoland/woocommerce-mcp: a read-only Model Context Protocol server for WordPress and WooCommerce, written in TypeScript, MIT licence. It exposes five tools (products, a single product, orders, a sales report and public post search) and nothing that can change the store. Read-only by default is the design decision worth looking at.
  • wppoland/hidden-text-detector: a Python tool that finds hidden text and prompt injection in PDF and DOCX files, such as white-on-white text, sub-legible fonts, text placed off the page and invisible Unicode characters. It exists because contracts and requests for quotation now arrive with instructions meant for an AI reader rather than a human one.
  • Plogins and the wordpress.org profile motylanogha: Plogins is a WooCommerce extension suite of 45 plugins with free and pro tiers, built on PHP 8.1 with PHPStan, PHPCS and automated releases to wordpress.org and Freemius. 21 plugins in the official directory list the profile (checked on 26 September 2026), including the Polish store compliance plugin Polski (GPSR, Omnibus, GDPR) and the community events plugin GatherPress.
  • This website. wppoland.com is an Astro 7 build on Cloudflare Pages with six languages and about 13 600 prerendered pages. Every change passes about fifty automated quality checks before release, from broken links and schema conflicts to a sitemap check that fails when a page marked for indexing is missing from every sitemap. HTML minification was moved onto worker threads in September 2026 and dropped from 910 seconds to 199 seconds on the same 13 610 files, with byte-identical output.

#Track record

Twenty years of web work, most of it inside other people’s systems. The roles below are public on LinkedIn; client names inside those engagements stay confidential.

PeriodRoleWhat it involved
Since Oct 2025Full-stack engineer (contract), WP-Stars, ViennaA subscription media and commerce platform: a Composer monorepo describing the whole WordPress application, CI with two independent release gates, Stripe subscription flows, and a Kotlin and Spring Boot service consolidating ERP, CleverReach and address data into Mautic, with a local LLM (Ollama via Spring AI) as a constrained classifier running on-premise over millions of records
Since Oct 2025Co-organiser, CMSConf, GdyniaA conference about content management systems, organised on site in Gdynia
Since Jan 2021WordPress, WooCommerce and PHP developer (contract), Equiqo, BerlinCustom WordPress, WooCommerce, HubSpot and Shopify development on the Roots stack (Bedrock, Sage), performance and structured data work
2020WordPress developer, Itineris, Ipswich (UK)Custom WordPress on Sage and Bedrock, CircleCI, performance and SEO
2019 to 2020WordPress developer (freelance), what., ZurichCustom WordPress, performance and structured data
2016 to 2019WordPress developer and team pilot, AirHelpMultilingual, AMP and performance work on a high-traffic consumer site, liaison between departments
2007 to 2015Web developer and internet marketing specialist, Vector Group, GdyniaWeb development, B2B commerce sites and search marketing
Since 2007WPPolandThe brand under which all independent work runs

#Typical engagements

The client work itself is under NDA, so the case studies are anonymised and say so. Each one describes the problem, the approach and what could and could not be measured.

For stack-specific detail, the service pages go deeper: WordPress developer, WooCommerce developer, PHP developer, Astro developer, Next.js developer, Cloudflare edge and MCP server development.

#Freelancer, agency or software house

The honest answer depends on the size of the problem and on what happens after launch. A single senior developer is not always the right choice.

SituationSenior freelancerAgencySoftware house
An integration or rescue with a clear owner on your sideStrong fit: one person holds the whole problemOften slower to startUsually too heavy
A new product that needs design, front end and back end at onceOnly with your own designerStrong fitStrong fit
Six or more developers needed within a monthNot a fitPossibleStrong fit
Long-term maintenance of a WordPress or WooCommerce systemStrong fit, with a written continuity planStrong fitRarely their focus
A mobile appNot a fit hereDepends on the agencyStrong fit
You need to talk to the person who wrote the codeAlwaysSometimesRarely

The real risk with a freelancer is continuity: illness, holidays, or the day they stop answering. Ask for it to be handled in writing. Here that means code in your repository from the first commit, documentation next to the code, credentials held by you, and a handover procedure that another developer could follow.

#How to evaluate any software developer

Whoever you hire, these questions separate people who ship from people who present.

  1. Where does the code live? It should be in your repository, under your organisation, from the first day. A developer who keeps the code until the invoice is paid is holding it hostage.
  2. How is a change tested before it reaches production? Look for a staging environment, automated checks and a named person who approves releases. “I test it on the live site” is a warning.
  3. How is a release undone? Ask for the rollback path, not the release path. Anyone can deploy; fewer people have rehearsed going back.
  4. What was measured before the work started? Performance, error rates and conversion claims mean nothing without a baseline taken the same way.
  5. What will you not do? A developer with no stated limits either has not thought about them or will discover them on your budget.
  6. Can I read something you wrote? Public code, a technical article or a design document. Style shows up quickly: whether the author names trade-offs or only benefits.

#Working on code someone else wrote

Most engagements start inside an existing system, not on an empty repository. The first week is spent reading, not rewriting.

  • Map before touching. Which plugins and services hold business logic, which cron jobs and webhooks run, which data lives outside the database (files, caches, third-party dashboards). The map goes into the repository as a short document.
  • Reproduce the problem on a copy. A staging copy with production-like data, anonymised where it holds customer records, so that a fix can be proven before it ships.
  • Keep what works. A rewrite is the most expensive way to fix a system and the easiest to recommend. Code that is ugly but correct and covered by a test stays; code that is wrong gets replaced in small, reviewable steps.
  • Leave it more readable. Every change comes with the context a stranger would need: why it was made, what was measured and how to undo it.

The same rule applies in reverse. If another developer inherits the work later, they should be able to continue from the documentation in the repository without calling anyone.

#Security and the data you hand over

A developer with access to your servers and databases holds real risk, so the handling is agreed in writing before access is granted.

  • Credentials stay yours. Access is created per person in your systems and revoked at the end of the engagement; no shared admin passwords sent by email.
  • Production data is copied only when needed, kept encrypted on the developer’s machine, anonymised for staging where it holds personal data, and deleted when the work ends. Under the GDPR this is data processing, so a data processing agreement is part of the paperwork, not an afterthought.
  • Changes to production are traceable. Every release maps to a commit, and every commit to a reason.
  • Incoming documents are checked. Contracts and requests for quotation are scanned for hidden text and prompt injection before anyone, human or AI, acts on them. That is what the hidden-text-detector mentioned above is for.

#How an engagement runs

The process is written down so that nobody has to remember it.

  1. Brief in writing. The system, the problem, the deadline, existing repositories and hosting, and who decides on your side.
  2. Scope with assumptions. What is included, what is excluded and what has to be true for the estimate to hold. Design, wireframes and content come from the client and are listed as such.
  3. Baseline. Access, a staging copy and measurements before any change, so that “better” has a number attached.
  4. Weekly iterations. Commits you can review, a demo on staging every week, and decisions recorded in the repository rather than in a chat thread.
  5. Release and handover. A rehearsed rollback, documentation and, if your team takes over, a handover session with the person who wrote the code.

Payment terms are part of the written scope, with dates rather than “on completion”. Work starts once the agreed deposit has arrived.

#What is not on offer

Being clear about limits saves both sides a month.

  • Graphic design, wireframes and UX design. The layout is provided by the client, often as a simple spreadsheet mapping elements to each view. The implementation into a working, responsive interface is the job.
  • Native mobile apps. iOS and Android are a different discipline and are better served by a specialist.
  • 24/7 on-call support. Monitoring and fast response in working hours, yes; a pager at three in the morning, no.
  • Pretending to be a team. One person means one calendar. Large parallel workloads belong with an agency or a software house.

#Where the work happens

Gdynia, on the Polish Baltic coast, in Central European Time. Clients are mostly in Poland, Germany, Austria, Switzerland, the Nordics and the rest of the EU, and work is remote with weekly demos. Outside client work, Mariusz has been part of the WordCamp Europe organising team since 2024 on the budget track, for the 2025 edition in Basel and the 2026 edition in Krakow, and co-organises CMSConf in Gdynia.

If the problem you have is a web or e-commerce system that has to work reliably and be understood by the next person who opens it, describe it in writing. A reply with questions or a first scope usually follows within one working day. More background is on the about page.

Related cluster

Explore other WordPress services and knowledge base

Strengthen your business with professional technical support in key areas of the WordPress ecosystem.

Recommendations from LinkedIn

Recommendations and reviews of working with WPPoland

Selected recommendations from WordPress, WordCamp and e-commerce leaders - with a focus on delivery on time, technical depth, and a business-driven approach to WordPress development.

Karolina Czapla

Karolina Czapla

Marketing Strategist, Performance & Digital Strategy

“Working with Mariusz on WordCamp has shown me how rare it is to combine deep technical skill with genuine leadership. He plans, coordinates and delivers with precision, while giving the team space to grow and contribute....”

Co‑organiser, WordCamp Gdynia 2024 & 2025

Anna Kamińska

Anna Kamińska

Talent Acquisition Specialist / HR People Partner

“Mariusz's portfolio speaks for itself. It reflects his precision, versatility and sense of responsibility. You can trust him to guide a project from idea to delivery, keep stakeholders informed and make sure things are d...”

Worked on the same team

Sarah‑Luisa Kwolek

Sarah‑Luisa Kwolek

IT Project Management & Product Owner, Web/App

“For over two years I could always rely on Mariusz to handle WordPress tasks calmly and professionally, from styling and templating to third‑party integrations. He brings steadiness to the team and keeps the frontend side...”

Mariusz was her client for WordPress work

Argert Boja

Argert Boja

Senior Full‑Stack Developer

“Mariusz is the teammate everyone hopes for: strong full‑stack WordPress skills, clear explanations and a positive attitude even under pressure. He moves easily between custom plugins, performance work and Gutenberg layou...”

Worked alongside Mariusz on WordPress projects

Varun Patil

Varun Patil

Growth & CRM Lead

“Beyond development, Mariusz understands SEO, analytics and growth. He talks directly with stakeholders, asks the right questions and ships solutions that move business metrics, from AMP to tracking to performance.”

Managed Mariusz on growth initiatives

Rafał Osiński

Rafał Osiński

Founder @ EasyTrips.pl, Senior WordPress Dev

“I've known Mariusz through the WordPress community for many years. He's reliable, deeply involved and consistently shows up, at meetups, WordCamps and in projects. If you care about long‑term collaboration and someone wh...”

WordPress community co‑organiser

Daniel Blossfeld

Daniel Blossfeld

Process Optimization & Digitalization Consultant

“I had the pleasure of working with Mariusz for almost three years. During that time, his WordPress development skills proved invaluable across a range of projects, from website builds to online member areas and even Shop...”

Mariusz was his client for WordPress work

Natalie Wiszczor

Natalie Wiszczor

CRM & E-Mail Marketing Manager

“I had the great pleasure of working with Mariusz for over 4 years in the technical field. During this time, he proved to be a competent and reliable colleague. What stood out in particular was his friendly nature and his...”

Worked with Mariusz on different teams

Mark Chalklen

Mark Chalklen

Head of Design & Build at Itineris Limited

“Mariusz is a great member of the team, always happy to get stuck into any task and happy to learn new things. A great communicator and all round nice guy to work with. Hard to beat on our weekly Strava leader board thoug...”

Managed Mariusz directly

Jessica Di Pasquale

Jessica Di Pasquale

Leading SEO initiatives with data-driven growth strategies.

“Mariusz is a very skilled, patient and expert guy. Always ready to help and to fix errors, I really appreciated working with him. He is such a great colleague!”

Managed Mariusz directly

Biki John

Biki John

Content Marketing Aficionado & SEO Enthusiast

“It was great to work with Mariusz. I really appreciated his extensive knowledge of WordPress and how that came in handy whenever I needed support navigating the CMS. I commend Mariusz totally for his patience, good natur...”

Worked with Mariusz on different teams

Rafal Borowiec

Rafal Borowiec

Software Developer, Consultant, Manager and Lecturer

“I had an opportunity to work with Mariusz for 7 months. He excels in technical optimization for search engines (SEO). Mariusz has also strong expertise in AMP development, GTM, and GA. Mariusz feels very comfortable with...”

Managed Mariusz directly

Belinda Koch

Belinda Koch

Web-Tracking Analyst at TUI

“Mariusz is a great person to work with. He is extremely motivated to learn new things and share his knowledge, and is very knowledgeable on a wide range of topics. We worked together on digital analytics and tracking top...”

Worked with Mariusz on digital analytics and tracking topics

Ali Nezamolmaleki

Ali Nezamolmaleki

Growth, SEO, Analytical thinking, AMP

“Mariusz is an extremely talented person in his field of work. He is always capable of giving a new perspective to solve problems and to think out of the box in situations where everything seems to be locked. Working with...”

Worked with Mariusz on the same team

Karol Jakubcewicz

Karol Jakubcewicz

Front-end / JavaScript Developer

“Mariusz is an incredibly experienced WordPress developer and SEO/SEM specialist I've had the pleasure to work with for almost two years. As a pilot of the team responsible for AirHelp's website development, he's been one...”

Worked with Mariusz on the same team

Paweł Lewczuk

Paweł Lewczuk

Front-end developer, WordPress developer

“I collaborated with Mariusz on several projects and our cooperation was always exemplary. I believe there are many more joint projects ahead of us. Highly recommended!”

Mariusz was Paweł's client

Przemek Wroblewski

Przemek Wroblewski

Software Developer with 20+ years of experience

“I found Mariusz as someone with great expertise and profound knowledge of frontend solutions. Powerful, knowledgeable and accountable WordPress developer. Has an easiness to build interpersonal relations with others. He ...”

Worked with Mariusz on different teams

Service FAQ

Frequently asked questions

Questions about scope, delivery, pricing, and execution quality.

SEO-readyGEO-readyAEO-ready6 Q&A
What kind of software developer is WPPoland?#
A web and e-commerce software developer. The work is server-side and integration-heavy: PHP and WordPress, WooCommerce, TypeScript on Node.js, Astro and Next.js front ends, and Cloudflare Workers at the edge. It is one senior person, not a software house, so there are no mobile apps and no design department.
Can I check the code before hiring?#
Yes. Two projects are public on GitHub: wppoland/woocommerce-mcp, a read-only MCP server for WooCommerce in TypeScript under the MIT licence, and wppoland/hidden-text-detector, a Python tool that finds hidden text and prompt injection in PDF and DOCX files. The wordpress.org profile motylanogha lists the plugins worked on.
Who owns the code?#
You do. Work is committed to your repository from the first day, under your account, with no licence held back. If there is no repository yet, one is created in your organisation, not in a personal account.
Is it a fixed price or hourly?#
Either, depending on how well the scope is known. A defined scope gets a fixed price with written assumptions; open-ended work runs as time and materials against an agreed cap. Prices follow the scope, so there is no price list on this page.
What do you not take on?#
Graphic design, wireframes and UX design (the layout comes from the client), native mobile apps, 24/7 on-call support, and projects that need a team of five on day one. Those are better served by an agency or a software house, and the decision table on this page says when.
Where are you based and which time zone do you work in?#
Gdynia, Poland, in Central European Time. Clients are mostly in Poland, the German-speaking countries, the Nordics and the rest of the EU. Work is remote, with weekly demos on staging.

Need an FAQ tailored to your industry and market? We can build one aligned with your business goals.

Let’s discuss

Related Articles