---
title: "Senior Software Engineer · lead développeur PHP Symfony - José DA COSTA"
description: "Lead Développeur PHP Symfony"
locale: "fr"
canonical: "https://portfolio.josedacosta.info/fr/parcours/senior-software-engineer-lead-developpeur-php-symfony"
source: "https://portfolio.josedacosta.info/fr/parcours/senior-software-engineer-lead-developpeur-php-symfony.md"
html_source: "https://portfolio.josedacosta.info/fr/parcours/senior-software-engineer-lead-developpeur-php-symfony"
author: "José DA COSTA"
type: "journey"
slug: "senior-software-engineer-lead-developpeur-php-symfony"
generated_at: "2026-05-26T15:38:35.790Z"
---

# Senior Software Engineer · lead développeur PHP Symfony

**Organisation:** Medialeads  
**Période:** octobre 2013 - novembre 2016  
**Type:** experience  
**Statut:** CDI  
**Responsabilité:** Lead Développeur PHP Symfony

## Vision de l'entreprise

L'environnement startup/PME familiale m'a donné une **autonomie totale** et une **vision produit de bout en bout**. On construisait des marketplaces complètes de A a Z, de l'architecture backend jusqu'au SEO. C'est chez Medialeads que j'ai acquis ma **maturité technique** : piloter la **migration de Solr vers Elasticsearch pour des millions de produits**, concevoir des **API REST avec authentification JWT**, bâtir des **architectures multi-bundle réutilisables** entre projets. L'équipe était réduite (4 a 10 développeurs), ce qui impliquait de **maîtriser toute la chaine** - infrastructure Proxmox, base PostgreSQL, backend Symfony, frontend AngularJS, SEO, déploiements. La participation réguliere aux meetups de l'AFUP Bordeaux (Association Française des Utilisateurs de PHP) a enrichi ma pratique et m'a connecté à la communauté PHP locale. Ce que je retiens : **la polyvalence forgée dans une petite structure ou chaque développeur porté plusieurs casquettes** est un **atout que les grosses organisations ne peuvent pas offrir**.

## Présentation

Développeur senior chez Medialeads. Développement full-stack Symfony sur ERP/PIM/CRM/Marketplace, migration Solr vers Elasticsearch et APIs REST.

- ERP/PIM/CRM/Marketplace full-stack en Symfony
- Migration moteur de recherche Solr vers Elasticsearch
- Conception et développement d'APIs REST

## Compétences associées (11)

- **[Leadership & Management d'Équipe](https://portfolio.josedacosta.info/fr/competences/leadership-management-equipe.md)** (confiance 4/5) _(humaine)_: Encadrement de développeurs juniors et intermédiaires, revue de code systématique, pair programming, définition des standards techniques.
- **[Pilotage Projet & Méthodes Agiles](https://portfolio.josedacosta.info/fr/competences/pilotage-projet-methodes-agiles.md)** (confiance 4/5) _(humaine)_: Coordination avec le Project Manager pour la planification technique, estimations de charge, priorisation des tâches et suivi des livrables sur 10+ projets simultanés. - Interface directe avec la direction et les clients de l'écosystème (fournisseurs B2B, revendeurs). Traduction des besoins métier en spécifications techniques.
- **[Résolution de Problèmes & Adaptabilité](https://portfolio.josedacosta.info/fr/competences/resolution-de-problemes-adaptabilite.md)** (confiance 5/5) _(humaine)_: Montée en compétences sur Elasticsearch, PostgreSQL full-text search, AngularJS et Docker dans un contexte multi-projets. - Pilotage de la migration Solr vers Elasticsearch pour des millions de produits, résolution de problématiques de performance a grande échelle.
- **[Communication & Collaboration](https://portfolio.josedacosta.info/fr/competences/pedagogie-communication-collaboration.md)** (confiance 4/5) _(humaine)_: Administration du wiki technique interne DokuWiki, documentation des projets, serveurs, procédures de déploiement et configurations. - Collaboration avec le Project Manager pour transformer les besoins fonctionnels en spécifications techniques, définition des conventions d'équipe.
- **[Architecture Logicielle & Système](https://portfolio.josedacosta.info/fr/competences/architecture-logicielle-systeme.md)** (confiance 5/5) _(technique)_: Architecture multi-bundle réutilisable (CoreBundle, ApiBundle, PostgreSearchBundle) pour l'écosystème de plateformes B2B interconnectées.. Repository abstrait, Controller abstrait, JsonDecoder custom, traits Doctrine réutilisables (CreatedUpdatedAt, SoftDeletable, Localized, Sortable). - APIs REST avec FOSRestBundle, authentification JWT RSA 4096 bits, documentation Swagger/NelmioApiDoc, architecture HATEOAS.. Application des design patterns GoF dans l'architecture Symfony multi-bundle : Factory, Repository, Strategy, Observer.
- **[Développement Fullstack](https://portfolio.josedacosta.info/fr/competences/developpement-fullstack.md)** (confiance 5/5) _(technique)_: Dev full-stack Symfony 2/3 de plateformes ERP, PIM, CRM et Marketplace. Frontend AngularJS (Bootstrap 3, Bower, Grunt) connecté àux APIs REST.. Scripts de déploiement, crontab pour la synchronisation automatique des flux fournisseurs et les mises à jour de données produits.
- **[DevOps, Cloud & Industrialisation Production](https://portfolio.josedacosta.info/fr/competences/devops-cloud-industrialisation-production.md)** (confiance 5/5) _(technique)_: Administration serveurs dédiés OVH, virtualisation Proxmox LXC, migration progressive des déploiements SVN vers Git/GitHub., Tests unitaires PHPUnit, tests fonctionnels Symfony, revue de code systématique des développeurs juniors et intermédiaires. - Architecture et mise en place de la virtualisation Proxmox LXC, optimisation des environnements de dev et de déploiement sur serveurs OVH., Monitoring des clusters Elasticsearch, surveillance des performances applicatives et des flux de synchronisation fournisseurs., Déploiements sur serveurs de production et de recette OVH, migration progressive de SVN vers Git/GitHub.
- **[Données, IA & Machine Learning](https://portfolio.josedacosta.info/fr/competences/donnees-ia-machine-learning.md)** (confiance 4/5) _(technique)_: PostgreSQL avec recherche full-text native, pilotage de la migration Solr vers Elasticsearch pour des millions de produits indexés.
- **[Sécurité Applicative & Conformité](https://portfolio.josedacosta.info/fr/competences/securite-applicative-conformite.md)** (confiance 3/5) _(technique)_: Authentification JWT RSA 4096 bits, sécurisation des APIs REST et des extranets fournisseurs, gestion des accès.
- **[Innovation & Veille Technologique](https://portfolio.josedacosta.info/fr/competences/innovation-veille-technologique.md)** (confiance 3/5) _(humaine)_: Participation réguliere aux meetups AFUP Bordeaux, veille active sur l'écosystème PHP/Symfony, Elasticsearch et les pratiques DevOps.
- **[Polyvalence Tech & Terrain](https://portfolio.josedacosta.info/fr/competences/polyvalence-tech-terrain.md)** (confiance 3/5) _(technique)_: Administration serveurs Linux Debian sur OVH, configuration Apache/Nginx, gestion des certificats et des accès.

## Missions principales

- Développement **full-stack de plateformes ERP, PIM, CRM et Marketplace** sur mesure avec **Symfony v2/v3**, generant les vitrines digitales des clients (Sommet de l'Elevage, Medical Place, Rusty Bobby, Groupe Plaisirs du Vin)
- Pilotage de la **migration d'Apache Solr vers Elasticsearch** pour l'indexation de **plusieurs millions de produits**, avec configuration de clusters et optimisation des requêtes de recherche
- Conception et maintenance d'**API REST** (FOSRestBundle + JWT RSA 4096 bits + Swagger/NelmioApiDoc + HATEOAS) pour l'interconnexion des plateformes de l'écosystème
- Architecture multi-bundle réutilisable avec Symfony : CoreBundle (entités Doctrine partagées), ApiBundle (API REST), PostgreSearchBundle (recherche full-text PostgreSQL native)
- Mise en place de **patterns d'architecture logicielle** : Repository abstrait, Controller abstrait, JsonDecoder custom, traits Doctrine réutilisables (CreatedUpdatedAt, SoftDeletable, Localized, Sortable)
- Architecture et mise en place de la **virtualisation avec Proxmox LXC**, optimisant les environnements de développement et de déploiement sur serveurs dédiés OVH
- Développement de **frontends AngularJS v1** (Bootstrap 3, Bower, Grunt, Compass/SASS) connectes aux API REST documentées
- Revue et validation du code des autres ingénieurs, **accompagnement des développeurs juniors et intermédiaires**, pair programming, définition des standards techniques de l'équipe
- Pilotage de la **stratégie SEO** et des **campagnes Google AdWords (SEA)**, collaboration avec l'agence Universem (Belgique) pour les backlinks et le référencement
- Administration du wiki technique interne (DokuWiki) : documentation des projets, serveurs, procédures de déploiement et configurations techniques
- Administration des serveurs de production et de recette (OVH), gestion des **déploiements SVN puis migration progressive vers Git/GitHub**

## Projets clients phares

#### European Sourcing

**Description:** Plateformé B2B de sourcing pour l'industrie de l'objet publicitaire. Moteur de recherche produits, front revendeur, back fournisseur, extranet, API REST, module d'export, système de flux et auto-mises-a-jour. Plusieurs millions de produits indexés via Elasticsearch.

#### Points clés

- Plusieurs millions de produits indexés dans Elasticsearch
- API REST documentée (Swagger) avec authentification JWT RSA 4096 bits
- Front revendeur + back fournisseur + extranet + module de traduction
- Flux automatiques de synchronisation fournisseurs via crontab

**Name:** European Sourcing

**Type:** Plateformé B2B

#### Tradexpo

**Description:** Marketplace B2B complète construite sur Symfony 2.6, AngularJS et PostgreSQL. Architecture modulaire avec CoreBundle (60+ entités Doctrine), ApiBundle (FOSRestBundle + JWT + Swagger/HATEOAS) et PostgreSearchBundle (recherche full-text native). Gestion multi-locale, multi-devise.

#### Points clés

- 60+ entités Doctrine (Product, Supplier, Order, Brand, Category, Variant..)
- API REST HATEOAS avec documentation Swagger automatique
- Authentification JWT RSA 4096 bits
- Architecture multi-bundle réutilisable entre projets

**Name:** Tradexpo

**Type:** Marketplace B2B

#### My Easy Web

**Description:** Générateur de sites clients (mini-sites/microsites) sur mesure avec personnalisation par nom de domaine ou sous-dossier. Administration centralisée, multi-domaines, moteur Solr intégré, version multilingue (dont meineasyweb.de pour le marché allemand).

**Name:** My Easy Web

**Type:** SaaS / CMS

#### Birds Marketplace

**Description:** Plateformé SaaS modulaire de marketplace B2B gérant commissions, multi-vendeurs et paiements (Stripe/Mangopay). Produit interne visant a industrialiser le savoir-faire Medialeads en solution clé en main pour l'e-commerce B2B.

**Name:** Birds Marketplace

**Type:** Produit SaaS

**Présentation de l'entreprise:** Medialeads est une **filiale technologique du groupe European Sourcing**, créée en 2013 pour structurer le pôle développement logiciel. Installée à Bègles (Boulevard Jean-Jacques Bosc) sous le nom commercial JOVETTE, l'entreprise conçoit et maintient un **écosystème complet de plateformes B2B interconnectées** pour l'industrie de l'objet publicitaire et du sourcing professionnel.

## Objectifs globaux du poste

- Industrialiser le savoir-faire marketplace B2B en solutions réutilisables et modulaires
- Migrer l'infrastructure de recherche de Solr vers Elasticsearch pour des millions de produits
- Monter en compétences sur les architectures API REST et les patterns d'architecture logicielle
- Structurer les pratiques de l'équipe : code reviews, documentation, standards techniques

## Positionnement

Au sein de Medialeads, j'étais positionné comme **lead développeur PHP Symfony et référent technique de l'équipe**. Mon périmètre couvrait l'ensemble de l'écosystème de projets : European Sourcing, Tradexpo, My Easy Web, Birds Marketplace et les portails clients.

Je travaillais en lien direct avec le Project Manager pour **transformer les besoins fonctionnels en spécifications techniques**.

Je supervisais les développeurs juniors et intermédiaires, je menais les **code reviews** et je définissais les **conventions techniques de l'équipe**. Mon autonomie était totale sur les choix d'architecture, les technologies et les déploiements.

**Leadership d'équipe:** Accompagnement des développeurs juniors et intermédiaires au quotidien : **revue de code systématique**, pair programming, définition des **standards techniques et des conventions de nommage**. Diffusion des **bonnes pratiques Symfony et des normes PSR** au sein de l'équipe. Collaboration étroite avec le Project Manager pour la **planification technique et les estimations de charge**. Participation active aux **meetups AFUP Bordeaux** pour rester connecté àux évolutions de l'écosystème PHP.

## Chiffres clés

- **2013** - Fondée
- **4-10** - Développeurs
- **10+** - Plateformes
- **B2B** - Objet publicitaire
- **Millions** - Produits indexés (Elasticsearch)
- **40+** - Sites clients (MyEasyWeb)
- **254+** - Fournisseurs (Pipeline de données)
- **7** - Langues (Traduction i18n)

## Décisions techniques structurantes

**Migration Solr vers Elasticsearch**
- Probleme: Performance et scalabilite pour des millions de produits indexes. Solr ne supportait plus la charge ni les requetes complexes de faceting.
- Resultat: Temps de recherche reduit, clustering operationnel, faceting avance sur le catalogue B2B.

**Architecture multi-bundle Symfony**
- Probleme: Réutilisabilité du code entre 10+ projets de l'écosystème. Chaque projet repartait de zéro sans socle commun.
- Resultat: CoreBundle (entites partagees), ApiBundle (API REST), PostgreSearchBundle (full-text) - mutualises entre tous les projets.

**Authentification JWT RSA 4096 bits**
- Probleme: Sécurisation des API inter-plateformes. Les sessions classiques ne fonctionnaient pas pour des appels machine-to-machine entre les services.
- Resultat: Authentification stateless entre tous les services de l'écosystème, documentation Swagger automatique des endpoints sécurisés.

**Migration SVN vers Git/GitHub**
- Probleme: Collaboration moderne et branching. SVN ne permettait ni les feature branches ni les code reviews avant merge.
- Resultat: Migration progressive sans rupture de production, adoption des pull requests et des code reviews systematiques.

## Écosystème complet de projets

Au-delà des 4 projets principaux, Medialeads maintenait un écosystème de plateformes interconnectées pour l'industrie de l'objet publicitaire.

- **Data Leads** _(Données)_: Plateforme de gestion de données et leads B2B
- **European Tool** _(Export)_: Export de catalogues produits vers PrestaShop (CSV + Web Services)
- **Gourmet Online** _(Marketplace)_: Marketplace dédiée au secteur gastronomique et food
- **Tendance Objet** _(Media)_: Portail d'actualites et tendances de l'objet publicitaire
- **Kadobjet** _(Portail)_: Portail de l'objet publicitaire
- **Omyague** _(E-commerce)_: Plateforme cadeaux d'affaires
- **C!Print** _(Impression)_: Plateforme pour le secteur de l'impression professionnelle
- **Offres Auto** _(Automatisation)_: Système d'offres automatisées pour les revendeurs

Tous ces projets partagent le même socle technique : Symfony, Doctrine ORM, PostgreSQL, et les bundles reutilisables (CoreBundle, ApiBundle, PostgreSearchBundle).

## Leadership d'équipe

- **Code reviews systematiques**: Revue de chaque pull request avant merge, feedback pédagogique aux développeurs juniors et intermédiaires.
- **Pair programming**: Sessions regulieres avec les juniors sur les parties complexes : architecture Doctrine, requetes Elasticsearch, API REST.
- **Standards techniques**: Definition des conventions de nommage, normes PSR, patterns Symfony (Repository, Controller abstrait, traits Doctrine).
- **AFUP Bordeaux**: Participation régulière aux meetups de l'Association Française des Utilisateurs de PHP pour alimenter la veille technique et partager les retours avec l'équipe.
- **Formation Symfony (octobre 2014)**: Formation Symfony 2 de 3 jours en presentiel couvrant les fondamentaux et les bonnes pratiques du framework.

## Répartition du temps

**Par projet:**
- European Sourcing 50%
- MyEasyWeb 25%
- Tradexpo 10%
- Birds Marketplace 5%
- SEO / SEA 10%
- Infra / Admin 5%

**Par activité:**
- Développement 40%
- Architecture 20%
- Code review / Mentorat 20%
- Coordination / SEO-SEA 20%

## SEO et campagnes SEA

En PME, le Senior Full-Stack touche aussi au marketing digital. Gestion du référencement naturel et des campagnes publicitaires pour l'écosystème de plateformes.

- **Google AdWords (SEA)**: Creation et gestion de campagnes publicitaires pour European Sourcing et les portails clients. Gestion de listes de mots-cles strategiques (objet publicitaire, cadeau publicitaire, objet promotionnel).
- **Referencement naturel (SEO)**: Optimisation on-page et technique pour l'ensemble des plateformes de l'écosystème. Gestion des synonymes et variantes de mots-clés en français.
- **Agence Universem (Belgique)**: Collaboration avec l'agence SEO Universem pour la strategie de backlinks et le referencement de TendanceObjet.com.
- **Google Analytics**: Suivi des performances de trafic, analyse des conversions et reporting pour orienter les decisions marketing et produit.

## Stack technique

- **Backend**: PHP 5.4+, Symfony 2.6/3.x, Doctrine ORM, FOSRestBundle, JWT (LexikJWT)
- **Bases de données**: PostgreSQL, Doctrine DBAL, Doctrine Migrations
- **Recherche & Indexation**: Elasticsearch, Apache Solr, PostgreSQL Full-Text
- **Frontend**: AngularJS 1.x, Bootstrap 3, Bower, Grunt, SASS/Compass
- **API & Documentation**: Swagger (NelmioApiDoc), HATEOAS, REST
- **Infrastructure**: Proxmox LXC, OVH, Apache2, Memcached, SVN, Git

## Réalisations liées

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

Full interactive version with timeline navigation: https://portfolio.josedacosta.info/fr/parcours/senior-software-engineer-lead-developpeur-php-symfony
