Senior Fullstack Engineer on the 6-person Econnect team, building and modernizing a 3-tier e-commerce platform (Laminas API, Slim middleware, Nuxt 3 frontend) used by ~6,000 merchants including Amazon, Sony, Aldi, and Aliexpress.
Built the new Merchant Portal from scratch in Nuxt 3, replacing a legacy AngularJS app (~24 pages of tables, charts, and data exports). Implemented all layouts (authenticated/guest), i18n, and a reusable MTable component handling filtering, sorting, pagination, and PDF/CSV/XLSX export.
Implemented the Auth module (MFA + Sendgrid email), Customers module (20+ endpoints), and Product Manager module (20+ endpoints) on the new Laminas/PHP 8.3 backend. Wrote unit tests for all modules and enforced OpenAPI attribute documentation on every handler and DTO.
Created a typed TypeScript API client auto-generated from OpenAPI specs via @hey-api/openapi-ts, published to private Artifactory. Set up GitHub Actions to rebuild the client automatically on every API spec change.
Defined the backend architecture through 11 ADRs covering code standards, database interaction patterns, naming conventions, and module boundaries enforced via Deptrac. Configured CI with PHPStan, Psalm, SonarQube, and git hooks (commitlint, pre-commit linting, pre-push tests).
Replaced manual Windows/XAMPP setups with WSL + DDEV + Docker, reducing new developer environment setup from 1-2 days to 1-2 hours. Trained the team of 6 and delivered a 2-hour workshop for another department.
Contributed a bug fix to the DDEV open source project (github.com/ddev/ddev/pull/6809).
Led a team of 4 developers building B2B e-commerce websites on Magento 2 for clients including Elektrototaalmarkt, a Dutch electronics retailer.
Promoted to Tech Lead after 9 months. Took ownership of architecture decisions, code reviews, and client-facing technical discussions.
Delivered two Magento 2 B2B projects with custom ERP integrations, multi-store configurations, and tiered B2B pricing. Managed day-to-day technical direction and weekly sprint planning.
Built backend modules and frontend pages for Paperchase's headless e-commerce site (VueStorefront + Magento 2) and maintained multi-store Magento 2 websites for NL/BE/DE markets.
Integrated Klevu Search into the Paperchase storefront and built a custom Magento 2 module for Treasury API integration, enabling the loyalty rewards system. Implemented the User Account page and Product Detail Page on the VueStorefront frontend.
Contributed a bug fix to the Vue Storefront open source project (github.com/vuestorefront/vue-storefront/pull/4533).
Managed and maintained multiple Magento 2 multistore websites across NL, BE, and DE markets, handling bug fixes, performance tuning, and feature requests over 1.5 years.
Designed a structured mentorship curriculum for interns. Conducted regular code reviews and solution discussions; 4 out of 7 mentees progressed to working on real client projects.
A curated, ready-to-use stack of PHP code quality tools: PHPStan, Psalm, ECS, Rector, and Git hooks with conventional commits — all pre-configured on top of DDEV for consistent local development.
Pre-configured PHPStan, Psalm, ECS, and Rector with sensible defaults. Includes Git hooks for conventional commits and branch naming validation.
Ships with an OpenAPI starter spec and ReDoc visualization for API documentation. Includes Nginx configuration for Xdebug support.
Ansible playbooks for automated setup of Debian-based Linux and macOS developer workstations. Installs and configures Zsh, Docker, Git, VS Code, CLI utilities, and Homebrew.
Cross-platform support for Ubuntu, Debian, Linux Mint, and macOS. Uses Homebrew on both platforms for consistent package management.
Configures a productive terminal environment with Zsh, Powerlevel10k, and the Antidote plugin manager.
Personal portfolio and resume site built with Nuxt 3, Tailwind CSS, and Nuxt UI Pro. Supports 3 languages (EN, Serbian Cyrillic, Serbian Latin) with i18n, generates a PDF resume, and is deployed to Cloudflare Pages.