From code to project responsibility

I have been programming professionally for over 15 years and working as a freelancer since 2013. Over time I moved from development into technical leadership without giving up hands-on coding.

My main focus is web applications, APIs and portals built with PHP, Symfony, Laravel and API Platform, paired with Vue and TypeScript. I also work with Node, React, Nuxt and Directus, as well as WordPress and Magento when the project calls for them.

I directly operate a Linux platform for hosting projects. I do not just advise clients about a provider: I take care of infrastructure, updates, backups and continuity after launch.

My background

Since 2013 · ongoing

Freelance · FullBL

Collaborations with agencies and clients on SaaS products, business applications, websites and e-commerce, alongside open-source contributions. PHP with Symfony, Laravel, WordPress and Magento; TypeScript with Vue.js and React.

  1. 2016–2019

    Facile.it · Team Lead

    Led a back-end team working on the contact-centre platform and REST services with Symfony, MySQL, Node.js, MongoDB, Docker, Agile workflows, automated tests and Kubernetes releases.

  2. 2015–2016

    MySecretCase · Lead Developer

    Lead developer for the Magento e-commerce platform, several WordPress blogs, and the Nginx infrastructure with test environments.

  3. 2013–2015

    Marzapane.de · Developer

    Developed a subscription-box platform, integrated Stripe payments and managed its Nginx infrastructure.

  4. 2010–2013

    Internodo · Web Developer

    Built interfaces and management tools for telephony, IT and home-automation services, including Asterisk integrations, e-commerce and PHP/JavaScript websites.

  5. 2008–2009

    AX Professional · Apprentice Developer

    First professional role using VB.NET, ASP.NET, Access, SQL and MySQL alongside help-desk work.

How I work

One point of contact, from start to continuity

I cover discovery, quoting, development, launch and maintenance, with clear responsibilities.

Decisions explained

I share the reasoning behind technical decisions. In a team, I use reviews and pairing to help junior developers grow as well.

Part of the team, without ego

I can own a complete project or fit into existing processes, tools and conventions.

Core technologies

I choose tools based on the problem, with deep specialisation in the PHP ecosystem.