---
title: "Senior Software Engineer · Lead PHP Symfony Developer - José DA COSTA"
description: "Lead PHP Symfony Developer"
locale: "en"
canonical: "https://portfolio.josedacosta.info/en/journey/senior-software-engineer-lead-php-symfony-developer"
source: "https://portfolio.josedacosta.info/en/journey/senior-software-engineer-lead-php-symfony-developer.md"
html_source: "https://portfolio.josedacosta.info/en/journey/senior-software-engineer-lead-php-symfony-developer"
author: "José DA COSTA"
type: "journey"
slug: "senior-software-engineer-lead-php-symfony-developer"
generated_at: "2026-04-23T15:43:58.357Z"
---

# Senior Software Engineer · Lead PHP Symfony Developer

**Organization:** Medialeads  
**Period:** 2013-10-01 - 2016-11-10  
**Type:** experience  
**Status:** Permanent contract (CDI)  
**Responsibility:** Lead PHP Symfony Developer

## Company vision

The startup/family SME environment gave me **full autonomy** and an **end-to-end product vision**. We built complete marketplaces from scratch, from backend architecture to SEO. Medialeads is where I gained my **technical maturity**: leading the **migration from Solr to Elasticsearch for millions of products**, designing **REST APIs with JWT authentication**, building **multi-bundle architectures reusable across projects**. The team was small (4-10 developers), which meant **mastering the entire chain** - Proxmox infrastructure, PostgreSQL database, Symfony backend, AngularJS frontend, SEO, deployments. Regular participation in AFUP Bordeaux meetups (French PHP Users Association) enriched my practice and connected me to the local PHP community. What I take away: **the versatility forged in a small structure where every developer wears multiple hats is an asset that larger organizations cannot offer**.

## Overview

Senior full-stack developer at Medialeads, the tech arm of European Sourcing. Built complete ERP/PIM/CRM/Marketplace platforms with Symfony, led the Solr-to-Elasticsearch migration for millions of products.

- Migrated search from Apache Solr to Elasticsearch at scale
- Designed REST APIs with JWT RSA 4096-bit authentication
- Mentored junior devs and defined team technical standards

## Competencies (23)

- **Fullstack Development** (confidence 4/5) _(technical)_: Fullstack Symfony 2/3 development of ERP, PIM, CRM, and Marketplace platforms. AngularJS frontend connected to REST APIs.
- **System Architecture** (confidence 4/5) _(technical)_: Reusable multi-bundle architecture across projects. CoreBundle, ApiBundle, PostgreSearchBundle.
- **DevOps and CI/CD** (confidence 3/5) _(technical)_: Dedicated OVH server administration, Proxmox LXC virtualization, SVN-to-Git deployments.
- **Software Architecture Patterns** (confidence 4/5) _(technical)_: Abstract Repository, Abstract Controller, Doctrine traits (CreatedUpdatedAt, SoftDeletable, Localized, Sortable).
- **REST API Design** (confidence 4/5) _(technical)_: REST APIs with FOSRestBundle + JWT RSA 4096-bit + Swagger/NelmioApiDoc + HATEOAS.
- **GoF Design Patterns** (confidence 3/5) _(technical)_: Applying GoF design patterns in Symfony architecture: Factory, Repository, Strategy.
- **Web Application Security (OWASP)** (confidence 3/5) _(technical)_: JWT RSA 4096-bit authentication, REST API security hardening, access management.
- **Testing Strategy and Quality** (confidence 3/5) _(technical)_: PHPUnit unit tests, Symfony functional tests, systematic code review.
- **Databases** (confidence 4/5) _(technical)_: PostgreSQL, Elasticsearch, Solr-to-Elasticsearch migration for millions of indexed products.
- **Virtualization and Cloud Computing** (confidence 3/5) _(technical)_: Proxmox LXC virtualization, container and environment management on dedicated servers.
- **Scripting and Automation** (confidence 3/5) _(technical)_: Deployment scripts, crontab for automatic supplier feed synchronization.
- **System Administration** (confidence 3/5) _(technical)_: Linux server administration (Debian), Apache/Nginx configuration, certificate management.
- **Monitoring and Supervision** (confidence 3/5) _(technical)_: Monitoring Elasticsearch clusters and application performance.
- **Service Deployment and Business Continuity** (confidence 3/5) _(technical)_: Progressive SVN-to-Git/GitHub migration, deployments on OVH production servers.
- **Technical Documentation** (confidence 3/5) _(technical)_: Managing the internal DokuWiki technical wiki, documenting projects and procedures.
- **Technology Watch** (confidence 3/5) _(technical)_: Attending AFUP Bordeaux meetups, monitoring the PHP/Symfony ecosystem.
- **Leadership and Team Management** (confidence 3/5) _(soft)_: Mentoring junior and mid-level developers, code review, pair programming.
- **Communication and Collaboration** (confidence 3/5) _(soft)_: Collaboration with the Project Manager, defining the team's technical standards.
- **Adaptability and Learning Agility** (confidence 4/5) _(soft)_: Ramping up on Elasticsearch, PostgreSQL, and AngularJS in a multi-project context.
- **Problem Solving** (confidence 4/5) _(soft)_: Solr-to-Elasticsearch migration, solving large-scale performance issues.
- **Project Management** (confidence 4/5) _(soft)_: Coordination with the Project Manager on technical planning, effort estimation, task prioritization, and delivery tracking across 10+ concurrent projects.
- **Stakeholder Management** (confidence 4/5) _(soft)_: Direct interface with management and ecosystem clients (B2B suppliers, resellers). Translating business needs into technical specifications.
- **Mentoring & Knowledge Transfer** (confidence 4/5) _(soft)_: 20 to 30% of time dedicated to ramping up junior and mid-level developers: educational code reviews, pair programming, sharing Symfony and PSR best practices.

## Missions

- **Full-stack development of custom ERP, PIM, CRM and Marketplace platforms** using **Symfony v2/v3**, generating digital storefronts for clients (Sommet de l'Elevage, Medical Place, Rusty Bobby, Groupe Plaisirs du Vin)
- Led the **migration from Apache Solr to Elasticsearch** for indexing **millions of products**, with cluster configuration and search query optimization
- Designed and maintained **REST APIs** (FOSRestBundle + JWT RSA 4096-bit + Swagger/NelmioApiDoc + HATEOAS) for interconnecting the platform ecosystem
- Reusable multi-bundle architecture with Symfony: CoreBundle (shared Doctrine entities), ApiBundle (REST API), PostgreSearchBundle (native PostgreSQL full-text search)
- Implemented **software architecture patterns**: abstract Repository, abstract Controller, custom JsonDecoder, reusable Doctrine traits (CreatedUpdatedAt, SoftDeletable, Localized, Sortable)
- Architected and deployed **Proxmox LXC virtualization**, optimizing development and deployment environments on dedicated OVH servers
- Developed **AngularJS v1 frontends** (Bootstrap 3, Bower, Grunt, Compass/SASS) connected to documented REST APIs
- Code review and validation for other engineers, **mentoring junior and mid-level developers**, pair programming, defining team technical standards
- Led **SEO strategy** and **Google AdWords (SEA) campaigns**, collaborated with Universem agency (Belgium) for backlinks and search rankings
- Administered the internal technical wiki (DokuWiki): documenting projects, servers, deployment procedures and technical configurations
- Managed production and staging servers (OVH), handled **SVN deployments then progressive migration to Git/GitHub**

## Client Projects

#### European Sourcing

**Description:** B2B sourcing platform for the promotional products industry. Product search engine, reseller frontend, supplier backend, extranet, REST API, export module, automated feeds and sync system. Millions of products indexed via Elasticsearch.

#### Highlights

- Millions of products indexed in Elasticsearch
- Documented REST API (Swagger) with JWT RSA 4096-bit authentication
- Reseller frontend + supplier backend + extranet + translation module
- Automated supplier sync feeds via crontab

**Name:** European Sourcing

**Type:** B2B Platform

#### Tradexpo

**Description:** Full B2B marketplace built on Symfony 2.6, AngularJS and PostgreSQL. Modular architecture with CoreBundle (60+ Doctrine entities), ApiBundle (FOSRestBundle + JWT + Swagger/HATEOAS) and PostgreSearchBundle (native full-text search). Multi-locale, multi-currency support.

#### Highlights

- 60+ Doctrine entities (Product, Supplier, Order, Brand, Category, Variant..)
- HATEOAS REST API with automatic Swagger documentation
- JWT RSA 4096-bit authentication
- Multi-bundle architecture reusable across projects

**Name:** Tradexpo

**Type:** B2B Marketplace

#### My Easy Web

**Description:** Custom client site generator (mini-sites/microsites) with domain name or subfolder customization. Centralized admin, multi-domain, integrated Solr engine, multilingual version (including meineasyweb.de for the German market).

**Name:** My Easy Web

**Type:** SaaS / CMS

#### Birds Marketplace

**Description:** Modular SaaS marketplace platform handling commissions, multi-vendor management and payments (Stripe/Mangopay). Internal product aimed at packaging Medialeads expertise into a turnkey B2B e-commerce solution.

**Name:** Birds Marketplace

**Type:** SaaS Product

**Company Presentation:** Medialeads is a **technology subsidiary of the European Sourcing group**, created in 2013 to structure the software development division. Located in Begles (Boulevard Jean-Jacques Bosc) under the trade name JOVETTE, the company designs and maintains a **complete ecosystem of interconnected B2B platforms** for the promotional products industry and professional sourcing.

## Objectives

- Package B2B marketplace expertise into reusable and modular solutions
- Migrate search infrastructure from Solr to Elasticsearch for millions of products
- Level up on REST API architectures and software architecture patterns
- Structure team practices: code reviews, documentation, technical standards

## Positioning

Within Medialeads, I was positioned as **lead PHP Symfony developer and technical reference for the team**. My scope covered the entire project ecosystem: European Sourcing, Tradexpo, My Easy Web, Birds Marketplace and client portals.

I worked directly with the Project Manager to **translate functional requirements into technical specifications**.

I supervised junior and mid-level developers, led **code reviews** and defined the team's **technical conventions**. I had full autonomy over architecture decisions, technology choices and deployments.

**Team Leadership:** Day-to-day mentoring of junior and mid-level developers: **systematic code reviews**, pair programming, defining **technical standards and naming conventions**. Spreading **Symfony best practices and PSR standards** across the team. Close collaboration with the Project Manager for **technical planning and effort estimation**. Active participation in **AFUP Bordeaux meetups** to stay connected with PHP ecosystem developments.

## Related achievements

- [generateur-sites-ecommerce-avec-cms](https://portfolio.josedacosta.info/en/achievements/generateur-sites-ecommerce-avec-cms.md)
- [supplier-backoffice-european-sourcing](https://portfolio.josedacosta.info/en/achievements/supplier-backoffice-european-sourcing.md)
- [flux-synchronisation-fournisseurs](https://portfolio.josedacosta.info/en/achievements/flux-synchronisation-fournisseurs.md)
- [import-european-sourcing](https://portfolio.josedacosta.info/en/achievements/import-european-sourcing.md)
- [export-donnees-produits-b2b](https://portfolio.josedacosta.info/en/achievements/export-donnees-produits-b2b.md)
- [plateforme-gestion-traductions-multilingues](https://portfolio.josedacosta.info/en/achievements/plateforme-gestion-traductions-multilingues.md)

Full interactive version with timeline navigation: https://portfolio.josedacosta.info/en/journey/senior-software-engineer-lead-php-symfony-developer
