---
title: "Gerador de sites e-commerce com CMS de personalização (MyEasyWeb)"
description: "Plataforma SaaS multi-tenant gerando sites e-commerce personalizados para 400+ revendedores no mercado europeu de produtos promocionais - 108K linhas de codigo, 7 idiomas, 32 moedas, 1.506 commits em ~3 anos."
locale: "pt"
canonical: "https://portfolio.josedacosta.info/pt/realizacoes/generateur-sites-ecommerce-avec-cms"
source: "https://portfolio.josedacosta.info/pt/realizacoes/generateur-sites-ecommerce-avec-cms.md"
html_source: "https://portfolio.josedacosta.info/pt/realizacoes/generateur-sites-ecommerce-avec-cms"
author: "José DA COSTA"
date: "2012"
type: "achievement"
slug: "generateur-sites-ecommerce-avec-cms"
tags: ["PHP 5.3+", "Symfony 2.4", "Symfony 3.1", "Silex 2.0", "MySQL", "Doctrine ORM", "Apache Solr", "ElasticSearch", "Memcached", "Twig", "Amazon SES", "jQuery", "REST API (FOS)"]
generated_at: "2026-04-23T15:46:45.347Z"
---

# Gerador de sites e-commerce com CMS de personalização (MyEasyWeb)

Plataforma SaaS multi-tenant gerando sites e-commerce personalizados para 400+ revendedores no mercado europeu de produtos promocionais - 108K linhas de codigo, 7 idiomas, 32 moedas, 1.506 commits em ~3 anos.

**Date:** 2013 - 2016  
**Duration:** ~3 anos  
**Role:** Senior Software Engineer  
**Technologies:** PHP 5.3+, Symfony 2.4, Symfony 3.1, Silex 2.0, MySQL, Doctrine ORM, Apache Solr, ElasticSearch, Memcached, Twig, Amazon SES, jQuery, REST API (FOS)

### Key Metrics

- Linhas de codigo: **-** - PHP, CSS, JS, Twig em 3 aplicacoes
- Sites clientes: **-** - Sites de revendedores ativos com dominios proprios
- Idiomas: **-** - FR, EN, ES, DE, IT, NL, PT
- Moedas: **-** - Taxas de cambio BCE, atualizacao automatica

## Visao geral do projeto

_O que e o MyEasyWeb e por que ele existe_

- MyEasyWeb e uma **plataforma SaaS multi-tenant** que gera sites e-commerce white-label para revendedores de produtos promocionais. Desenvolvida pela **Medialeads** para a **European Sourcing**, lider europeia em bancos de dados de produtos promocionais, a plataforma permite que cada revendedor (distribuidor) tenha seu proprio site personalizado - com seu logo, cores, dominio e catalogo configurado - alimentado automaticamente pelo banco de dados centralizado da European Sourcing com mais de **520.000 produtos** de 800+ fornecedores.
- O sistema e composto por **tres aplicacoes distintas**: o front-end principal e back-office do revendedor (myeasyweb.net, Symfony 2.4), um back-office de administracao interna para a equipe European Sourcing (bo.myeasyweb.pro, Symfony 3.1), e um site vitrine/motor de busca de produtos (myeasyweb.pro, Silex 2.0). Cada site de revendedor e identificado pelo seu dominio, e a aplicacao carrega dinamicamente a configuracao correspondente (tema, idiomas, fornecedores, margens) em cada requisicao.
- Dashboard com pedidos recentes, contatos, produtos e estatisticas de newsletter
- Personalizacao completa do site: temas, cores, fontes, logos, imagens de cabecalho, CSS customizado
- Catalogo de produtos com busca full-text Solr/ElasticSearch e filtragem por fornecedor
- Sistema de orcamentos online com valores minimos configuraveis e notificacoes por email (Amazon SES)
- Sistema publicitario completo: slideshows, banners, skyscrapers, anuncios por categoria
- Paineis de estatisticas: orcamentos, contatos, visualizacoes de produtos, buscas
- Páginas corporativas, menus personalizados e módulo de downloads para conteúdo editorial livre
- SEO avançado: categorias SEO personalizadas, metadados, sitemap XML e integração Google Analytics
- Internacionalização: 7 idiomas (FR, EN, ES, DE, IT, NL, PT) e 32 moedas com taxas ECB automatizadas

**App1 Name:** myeasyweb.net

**App1 Desc:** Aplicacao principal: front catalogo publico + back-office do revendedor (Symfony 2.4)

**App2 Name:** bo.myeasyweb.pro

**App2 Desc:** Back-office de administracao interna para a equipe European Sourcing (Symfony 3.1)

**App3 Name:** myeasyweb.pro

**App3 Desc:** Site vitrine e motor de busca de produtos (Silex 2.0)

## Objetivos, contexto e riscos

_Visao estrategica e desafios da plataforma_

### Obj Turnkey

Sites profissionais para revendedores sem habilidades tecnicas

### Obj Multi Lang

FR, EN, ES, DE, IT, NL, PT

### Obj Currency

Taxas de cambio BCE, atualizacao diaria automatica

### Obj Catalog

Banco de dados centralizado de 800+ fornecedores

### Obj Custom

Branding totalmente personalizavel por revendedor

**Objectives Intro:** O MyEasyWeb foi construido com um objetivo claro de monetizacao B2B: oferecer a cada revendedor de produtos promocionais na Europa um site pronto conectado ao banco de dados European Sourcing, gerando receita recorrente e fixando os revendedores no ecossistema.

**Obj Turnkey Label:** Sites prontos

**Obj Turnkey Value:** 400+ ativos

**Obj Multi Lang Label:** Multi-idioma

**Obj Multi Lang Value:** 7 idiomas

**Obj Currency Label:** Multi-moeda

**Obj Currency Value:** 32 moedas

**Obj Catalog Label:** Catalogo de produtos

**Obj Catalog Value:** 520K+ produtos

**Obj Custom Label:** Personalizacao

**Obj Custom Value:** 3 temas

**Context Text:** O projeto esta inserido em um **ecossistema maior** na Medialeads/European Sourcing, que inclui o marketplace European Sourcing, a extranet de revendedores, ferramentas de traducao, pipelines de importacao de dados e outros produtos B2B. A infraestrutura existente ja contava com um **banco de dados MySQL centralizado**, um **motor de busca Apache Solr** e um sistema de API interno. O desenvolvimento comecou com **SVN** antes de migrar para o **GitHub** em 2016.

**Stakes Text:** O MyEasyWeb impacta diretamente o **modelo de receita** da European Sourcing: cada site de revendedor gera volume de negocios para os fornecedores da plataforma. Alem da receita, a plataforma serve como **ferramenta de retencao** - ao fornecer um site profissional gratuito, a European Sourcing mantem seus revendedores no ecossistema.

**Risk1 Title:** Complexidade multi-tenant

**Risk1 Desc:** 400+ sites pilotados a partir de um codigo unico com personalizacao por tenant - um padrao coerente com as praticas SaaS da decada 2008-2014.

**Risk2 Title:** Hash de senhas (estado da arte 2012)

**Risk2 Desc:** Era o estado da arte do ecossistema PHP do inicio dos anos 2010 - reflexo das restricoes tecnicas da epoca. Os padroes modernos (bcrypt, argon2) se generalizaram desde entao.

**Risk3 Title:** Concentracao do motor de busca

**Risk3 Desc:** Instancia Solr unica para a busca de produtos - era o estado da arte na epoca, coerente com as praticas da decada 2008-2014, antes que clusters multi-no e ElasticSearch se tornassem o padrao para alta disponibilidade.

**Risk4 Title:** Esquema de banco compartilhado

**Risk4 Desc:** Acesso entre aplicacoes a um esquema relacional compartilhado - era o estado da arte na epoca, coerente com as arquiteturas pragmaticas da decada 2008-2014, antes da generalizacao de microsservicos e APIs por contexto de negocio.

## Fases de implementacao

_Quatro anos de desenvolvimento, das fundacoes a maturidade_

- Fase 1
- Fase 2
- Fase 3
- Fase 4

**Phase1 Title:** Fundacoes e arquitetura multi-tenant

**Phase1 Period:** 2012 - 2013

**Phase2 Title:** Enriquecimento funcional e escala

**Phase2 Period:** 2014 - 2015

**Phase3 Title:** Modernizacao e novo back-office

**Phase3 Period:** 2016 (T3)

**Phase4 Title:** Site vitrine e busca

**Phase4 Period:** 2016 (T4)

## Atores e interacoes

_Uma equipe de 5 desenvolvedores em 1.506 commits_

- O projeto foi construido dentro da **Medialeads**, uma empresa de software desenvolvendo produtos para a **European Sourcing** - lider europeia em bancos de dados de produtos promocionais. A equipe de **5 desenvolvedores** trabalhou em 3 repositorios, com José Da Costa como **desenvolvedor lead** responsavel por **~65% de todos os commits**.

**Table Developer:** Desenvolvedor

**Table Role:** Funcao

**Table Commits:** Commits

**Table Percent:** %

**Table Scope:** Escopo

**Stakeholders Text:** Alem da equipe tecnica, o projeto envolveu multiplos atores externos: **fornecedores de produtos promocionais** (cujos catalogos alimentavam a plataforma via API European Sourcing), **400+ revendedores** (usuarios diretos do back-office MyEasyWeb), **OVH** (hospedagem em servidores dedicados), **Amazon Web Services** (envio de emails via SES) e **GitHub** (hospedagem de codigo na organizacao medialeads).

## Resultados e entregas

_O que foi alcancado em 4+ anos de desenvolvimento_

### Metric Entities

41 (principal) + 10 (ES) + 10 (BO) + 6 (compartilhado)

### Metric Controllers

44 (principal) + 13 (BO admin)

### Metric Routes

Somente no myeasyweb.net

### Metric Commits

Em 3 repositorios, 5 desenvolvedores

### Metric Themes

Totalmente personalizaveis por revendedor

### Metric Tests

Estatisticas de fornecedores (2012-2015)

- **Arquitetura SaaS multi-tenant** - projeto e manutencao de um codigo unico servindo 400+ sites de marca independentes, um padrao que apliquei a cada projeto SaaS desde entao
- **Expertise PHP full-stack** - dominio profundo do ecossistema Symfony 2.x (Doctrine, Twig, seguranca, traducoes, bundles) sob restricoes de producao reais
- **Integracao de motores de busca** - experiencia pratica com **Apache Solr** e **ElasticSearch** para busca full-text de produtos em catalogos massivos
- **Dominio e-commerce B2B** - compreensao profunda de gestao de catalogos, precificacao/margens, fluxos de orcamentos, sincronizacao de fornecedores e gestao multi-moeda
- **Arquitetura de banco de dados** - trabalho com replicacao MySQL master/slave, cache Memcached e bancos compartilhados entre aplicacoes
- **Lideranca tecnica** - coordenacao do desenvolvimento em 3 repositorios com 4 outros desenvolvedores em workflow por branches, de SVN a Git

**Metric Entities:** Entidades no banco

**Metric Entities Value:** 67

**Metric Controllers:** Controllers

**Metric Controllers Value:** 57

**Metric Routes:** Rotas/Endpoints API

**Metric Routes Value:** 136

**Metric Commits:** Commits totais

**Metric Commits Value:** 1.506

**Metric Themes:** Temas visuais

**Metric Themes Value:** 3 + common

**Metric Tests:** Arquivos de stats

**Metric Tests Value:** 1.355

**For Business:** Para o negocio

**Business Text:** O MyEasyWeb permitiu que a European Sourcing **retivesse sua rede de 400+ revendedores** oferecendo-lhes um site profissional gratuito, personalizado e diretamente conectado ao banco de produtos. Cada site de revendedor **gera indiretamente volume de negocios** para os fornecedores da plataforma.

**For Me:** Para mim pessoalmente

**For Me Text:** Como desenvolvedor lead responsavel por quase dois tercos do codigo, este projeto foi uma experiencia profissional marcante:

## O que veio depois

_Evolucao e legado da plataforma_

**Current Text:** Ao final do meu envolvimento, a plataforma havia atingido uma **maturidade operacional** e demonstrado a viabilidade de abordagens multi-tenant para mercados de nicho B2B - uma arquitetura durável projetada para atravessar várias geracoes tecnologicas.

## Reflexao critica

_Analise honesta com o beneficio da retrospectiva_

- **O multi-tenant e um multiplicador de valor**: um codigo unico servindo 400+ clientes gera ROI muito superior a desenvolvimentos sob medida, desde que a camada de personalizacao esteja bem estruturada
- **A divida tecnica cresce com o sucesso**: quanto mais clientes e funcionalidades, maior o risco de divida CSS/testes/seguranca se a qualidade nao for medida continuamente
- **A documentacao operacional** (wiki com URLs, comandos, crontabs) e tao critica quanto a documentacao arquitetural para a sobrevivencia a longo prazo de um projeto
