Contact
Vamos trabalhar juntos
EuropeanTool - Plataforma B2B de Produtos Promocionais

EuropeanTool - Plataforma B2B de Produtos Promocionais

Ecossistema de 30+ aplicacoes interconectadas automatizando toda a cadeia de suprimentos B2B de produtos promocionais - da importacao de catalogos de fornecedores a distribuicao e-commerce para revendedores em 7 idiomas europeus.

2009 - 2016
~7 anos
Software Engineer depois Senior Software Engineer
PHP 5.xMySQLmynd-frameworkZend Framework 1Symfony 2.xPrestaShop 1.4/1.5Bootstrap 2jQueryExtJSPhoneGap/CordovaApacheSVNGitDockerOVH Dedicated

Linhas de codigo PHP

13,843

Plataforma de exportacao apenas

Subprojetos

30+

Aplicacoes interconectadas

Fornecedores conectados

250+

Fabricantes europeus

Idiomas suportados

7

Idiomas europeus

Apresentacao

Definicao e escopo do projeto

EuropeanTool e o nome interno da plataforma de ferramentas e servicos digitais desenvolvida para a European Sourcing, uma empresa B2B especializada em produtos promocionais na Europa. Este projeto nao e uma aplicacao unica, mas um ecossistema completo de mais de 30 aplicacoes interconectadas cobrindo toda a cadeia de valor: gestao de catalogo de produtos, exportacao de dados para lojas e-commerce de revendedores, automacao de fluxos de fornecedores, backoffice de fornecedores, traducao, estatisticas, busca de produtos, aplicacoes moveis e criacao de sites e-commerce prontos para revendedores.

A European Sourcing atua como intermediaria B2B conectando centenas de fornecedores europeus de produtos promocionais com milhares de revendedores. A plataforma EuropeanTool foi projetada para automatizar e industrializar esse processo: centralizar catalogos de fornecedores, normaliza-los, traduzi-los em 7 idiomas e redistribui-los em massa para as lojas e-commerce dos revendedores.

Dominio de negocio

Produtos promocionais e brindes corporativos - sourcing B2B europeu (brindes, merchandising, itens personalizados)

Usuarios-alvo

Revendedores B2B (distribuidores importando catalogos para suas lojas PrestaShop ou usando sites MyEasyWeb prontos), fornecedores europeus (fabricantes alimentando catalogos via extranet ou fluxos automaticos) e a equipe interna da European Sourcing

Escopo funcional
Catalogo de produtos (7 idiomas)
Exportacao CSV & WebService
Modulos PrestaShop B2B
Fluxos automatizados de fornecedores
Backoffice de fornecedores
Sites prontos MyEasyWeb
Plataforma de traducao
Motor de busca de produtos
Estatisticas & Analitica
Platform Architecture
EuropeanTool ecosystem architecture - from suppliers to resellers

Objetivos, Contexto, Desafios & Riscos

Visao estrategica e restricoes

Objetivos
  • Centralizar e normalizar catalogos de 250+ fornecedores europeus em um banco de dados multiligue unico
  • Automatizar a redistribuicao de catalogos para lojas e-commerce de revendedores (CSV e WebService PrestaShop)
  • Fornecer sites e-commerce prontos (MyEasyWeb) para revendedores sem lojas proprias
  • Automatizar fluxos de importacao de dados de fornecedores (precos, estoque, imagens, marcacoes)
  • Entregar um ecossistema completo de ferramentas internas para gerenciar, traduzir e analisar o catalogo
Contexto

O projeto foi construido progressivamente desde 2009, partindo de ferramentas PHP procedurais e um framework customizado (mynd-framework), evoluindo para arquiteturas mais modernas (Zend Framework 1, depois Symfony 2.x para subprojetos mais recentes). A infraestrutura era hospedada em servidores dedicados OVH.

A equipe tecnica era pequena (dominada por um desenvolvedor principal) com contribuidores incluindo Thomas C. (backend/mobile), ED (modulos PrestaShop) e varios outros para tarefas especializadas. O projeto operava em um ambiente multilingue (7 idiomas europeus), uma arquitetura multi-tenant (cada revendedor tem seu proprio site/exportacao), e gerenciava volumes significativos de dados (banco de dados de 15 GB, centenas de fornecedores, milhares de produtos).

Desafios de negocio

Receita recorrente

A plataforma e o coracao do negocio da European Sourcing. Cada revendedor conectado gera uma assinatura recorrente. A qualidade da sincronizacao de catalogos impacta diretamente a satisfacao e retencao de clientes.

Posicionamento europeu

A European Sourcing e posicionada como ator paneuropeu (FR, EN, DE, IT, ES, NL, PT), necessitando de infraestrutura robusta de traducao e localizacao.

Vantagem competitiva

A automacao de fluxos (importacao fornecedor → normalizacao → exportacao revendedor) e o principal diferencial competitivo. Processar centenas de fornecedores e enviar dados quase em tempo real para milhares de lojas PrestaShop.

Riscos identificados

Dependencia do PrestaShop

Ecossistema fortemente acoplado ao PrestaShop (modulos, API WebService, formatos de importacao CSV). Uma evolucao major do PrestaShop ou migracao dos revendedores para Shopify/WooCommerce exigiria adaptacoes significativas.

Divida tecnica

Framework customizado (mynd-framework) sem manutencao, Zend Framework 1 em fim de vida, hash MD5 sem salt, jQuery/Bootstrap 2 obsoletos.

Risco de pessoa-chave (bus factor)

O desenvolvedor "jose" e autor de ~72% dos arquivos SVN. A perda dessa expertise representaria um risco major para todo o ecossistema.

Vulnerabilidades de seguranca

Hash MD5 sem salt, sem protecao CSRF visivel, sem rate limiting identificado, credenciais no codigo-fonte.

As etapas - O que eu fiz

Fases cronologicas e contribuicoes pessoais

Crescimento dos subprojetos ao longo do tempo
Project Gantt
Project phases from 2009 to 2019
Phase 1
Fundacoes
2009 - 2012
  • Construcao das primeiras ferramentas internas: gerenciador de catalogo v1 com Open Flash Chart
  • Desenvolvimento do modulo de estatisticas de fornecedores para analise de dados
  • Criacao do sistema de gestao de banners publicitarios (Zend Framework 1 + ExtJS)
  • Construcao de um crawler web para analisar sites de distribuidores
  • Desenvolvimento de ferramenta de analise de cores de produtos com GD/ImageMagick
Phase 2
E-commerce B2B
2012 - 2014
  • Desenvolvimento de 5 modulos PrestaShop customizados transformando lojas padrao em plataformas de cotacao B2B
  • Construcao do prestaprice: importacao em massa de precos especificos via CSV
  • Criacao do prestaquote: transformacao visual carrinho → cotacao via JavaScript
  • Implementacao do prestaquotepayment: metodo de pagamento ficticio "Cotacao pendente"
  • Implantacao rapida para revendedores com workflow adaptado ao B2B (sem pagamento online, precos por quantidade)
Phase 3
Industrializacao das exportacoes
2013 - 2016
  • Arquitetura da plataforma de exportacao (export.europeansourcing.com) no framework customizado mynd-framework
  • Implementacao de dois modos de exportacao: download CSV/ZIP e push WebService PrestaShop
  • Construcao de sistema de filas com cotas e gestao de concorrencia (max 6 exportacoes simultaneas, 3 por IP)
  • Desenvolvimento de deteccao de processos zumbis e limpeza automatica
  • Criacao de 5 scripts CLI para execucao automatizada por cron
Phase 4
Fluxos automatizados de fornecedores
2015 - 2019
  • Desenvolvimento do sistema de fluxos automaticos (flux v1 depois v2) para importacao continua de catalogos
  • Transicao de atualizacoes manuais para importacoes automatizadas por cron
  • Construcao de pipelines de validacao e normalizacao de dados de fornecedores
  • Gestao de 250+ integracoes de fornecedores com formatos de dados variados
Phase 5
Modernizacao & Migracao
2016 - 2019
  • Migracao progressiva de SVN para Git (31 repositorios no GitHub/medialeads)
  • Adocao de Symfony 2.x para novos projetos (omyague, extranet_rebirth, sourcing_rebirth)
  • Refatoracao do extranet (v1 → v2) com sistema avancado de importacao CSV
  • Introducao de Docker para ambiente de staging
  • Campanha exaustiva de arquivamento (441 capturas de tela, dumps SQL completos, backup completo)
Technology Stack Évolution

Os atores - As interacoes

Dinamica de equipe e colaboracao com stakeholders

Equipe & Contribuicoes

O projeto foi desenvolvido por uma pequena equipe tecnica ao longo de 10 anos. A analise dos metadados SVN revela a distribuicao real das contribuicoes em todo o ecossistema. Esses numeros representam o numero de arquivos dos quais cada pessoa e o ultimo autor (last changed author) nas copias de trabalho SVN salvas em agosto de 2019.

ContribuidorArquivosProjetos principais
Jose DA COSTA (jose)32.755+ (~72%)Site, Manager, Export, Crawler, MyGlobal, Traducao
Thomas C. (thomas)2.973+ (~6,5%)WebService, Apps moveis, Estatisticas
ED5 modulosModulos PrestaShop B2B (~2.000 linhas PHP)
Vincent120 (~0,3%)RecherchePublicitaire, DBA MySQL
Steve62 (~0,1%)Plataforma de traducao
Wamania57 (~0,1%)MyGlobal, GraphicSourcing
Fabien~49 (~0,1%)Sistema de links SEO (es_links)

Nota metodologica: Esses numeros refletem o estado das copias de trabalho SVN no momento do backup (agosto de 2019). O `changed_author` do SVN indica a ultima pessoa a modificar cada arquivo, nao o criador original. No entanto, em um ecossistema desse tamanho, os numeros refletem fielmente a distribuicao real do esforco de desenvolvimento.

Stakeholders externos

250+ Fornecedores

Midocean, Sol's, Senator, Xindao, Bic Graphic, Fruit of the Loom, Victorinox, Clipper...

50+ Revendedores

Distribuidores de produtos promocionais (avotrimage.fr, cadonor.fr, ghkconseil.fr...)

OVH

Provedor de hospedagem de servidores dedicados

Dolead

Agencia de gestao de campanhas Google AdWords

PrestaShop

CMS e-commerce alvo para exportacoes e modulos

Modo de trabalho

Nenhuma metodologia Agile/Scrum formalmente identificada. O modo de trabalho parece ser desenvolvimento iterativo orientado por necessidades de negocio, com um desenvolvedor principal operando autonomamente. A comunicacao com stakeholders (fornecedores, revendedores, equipe de marketing) era direta e continua, adaptando prioridades as demandas do mercado e feedback dos clientes.

Os resultados - Para mim, para a empresa

Resultados concretos e impacto mensuravel

Metricas do codigo-fonte
Distribuicao do ecossistema
Database Structure
Data Model (Core Tables)
Core entity-relationship diagram of the europeansourcing database
Resultados para mim

Competencias tecnicas adquiridas

  • Desenvolvimento PHP avancado (POO, MVC, frameworks customizados e padrao)
  • Design de arquitetura de ecossistema multi-aplicativo
  • Integracao de APIs (PrestaShop WebService, API OVH)
  • Desenvolvimento de modulos PrestaShop customizados
  • Gestao de bancos de dados MySQL (schemas complexos, dumps de 15 GB, otimizacao)
  • Desenvolvimento mobile hibrido (PhoneGap/Cordova)
  • Automacao (scripts CLI, cron jobs, crawlers web)
  • Processamento de imagens (GD, ImageMagick)
  • Administracao de sistemas Linux/Apache/OVH
  • SEO tecnico (link building automatizado, meta tags)
  • Internacionalizacao (i18n) e workflows de traducao multilingue

Competencias de dominio & interpessoais

  • Compreensao profunda do dominio B2B de produtos promocionais
  • Design de arquitetura de software distribuida
  • Gestao autonoma de projetos tecnicos por 10 anos
  • Comunicacao com stakeholders (fornecedores, revendedores, equipe de marketing)
  • Documentacao tecnica (campanhas exaustivas de capturas de tela, documentacao de importacao CSV)
Resultados para a empresa

250+

Fornecedores conectados

Fabricantes europeus integrados

50+

Lojas revendedoras

Entrega automatizada de catalogos

15 GB

Tamanho do banco

Anos de dados de catalogo acumulados

7

Idiomas

Cobertura paneuropeia

Entregas principais:

  • Plataforma de exportacao: exportacao CSV multilingue (7 idiomas) com imagens em arquivos ZIP + push WebService para lojas PrestaShop
  • 5 modulos PrestaShop B2B: transformacao completa de lojas e-commerce padrao em plataformas de cotacao B2B
  • Sites prontos (MyEasyWeb): sites e-commerce white-label para revendedores sem loja propria
  • Ferramentas internas: gestao de banners, crawler web, analise de cores, gerador de flyers, troca de links, plataforma de traducao
  • Fluxos automatizados de fornecedores: importacao continua de catalogos de 250+ fornecedores
  • Aplicacao movel: app hibrida iPhone/web para busca de produtos (PhoneGap)
  • Backoffice de administracao: gestao completa de catalogo (v1 + v2) com importacao CSV avancada

Os desdobramentos do projeto

O que aconteceu depois

Futuro imediato: Em agosto de 2019, uma campanha exaustiva de arquivamento foi conduzida - 441 capturas de tela de todas as aplicacoes, dumps SQL completos (15 GB) e backup completo de todos os projetos em um NAS Synology. Isso sugere uma fase de transicao importante (saida de membro-chave, aquisicao ou fim de missao).

Evolucao a medio prazo: A plataforma continuou operando apos o arquivamento. Os ultimos desenvolvimentos conhecidos mostram uma trajetoria clara de modernizacao - migracao de SVN para Git, adocao de Symfony 2.x para novos projetos, introducao de Docker para staging. Essa trajetoria nunca foi totalmente concluida, deixando um estado hibrido entre legado (mynd-framework, ZF1) e moderno (Symfony, Docker).

Hoje (2026): O ecossistema EuropeanTool representa um corpo de trabalho de 10 anos preservado em sua totalidade em um backup NAS. As 441 capturas de tela fornecem uma capsula do tempo visual do estado de cada aplicacao em agosto de 2019. Os dumps SQL completos permitem a reconstrucao total dos dados. Embora a stack tecnologica tenha se tornado datada (PHP 5.x, jQuery, Bootstrap 2), os padroes arquiteturais - fluxos de dados B2B automatizados, sistemas de exportacao multi-tenant, gestao de catalogo multilingue - permanecem conceitos de design relevantes que levo para meus projetos modernos.

O legado deste projeto e visivel em minha abordagem atual de arquitetura: a enfase em automacao, pensamento multi-tenant e design "internacionalizacao primeiro" que agora implemento com stacks modernas (Next.js, TypeScript, PostgreSQL) foi diretamente moldada por esses 10 anos construindo o EuropeanTool.

Meu olhar critico

Analise retrospectiva honesta

O que funcionou bem
  • Cobertura funcional excepcional

    O ecossistema cobria toda a cadeia de valor B2B - da importacao de fornecedores a loja do revendedor - com traducao, estatisticas e marketing. Realizacao notavel para uma equipe pequena.

  • Automacao avancada

    Exportacoes WebService com gestao de filas, cotas, deteccao de zumbis e notificacoes representam engenharia avancada para ferramentas internas.

  • Abordagem multi-tenant pragmatica

    Os modulos PrestaShop transformavam inteligentemente lojas padrao em plataformas B2B via manipulacao DOM JavaScript, evitando fork completo do CMS.

  • Internacionalizacao nativa

    O suporte a 7 idiomas europeus foi integrado desde o design do modelo de dados, nao adicionado como paliativo.

  • Documentacao visual

    441 capturas de tela constituem um patrimonio documental precioso, permitindo entender o estado de todas as aplicacoes em 2019.

O que poderia ter sido melhor
  • Autenticacao obsoleta

    MD5 sem salt para hash de senhas era uma vulnerabilidade critica. Bcrypt ou Argon2 deveriam ter sido adotados.

  • Framework customizado

    Embora funcional, o mynd-framework criava divida de manutencao e documentacao e dificultava o recrutamento. A adocao do Symfony (iniciada em projetos recentes) era a direcao correta.

  • Sem testes automatizados

    Apesar do SimpleTest estar disponivel no framework, nenhum arquivo de teste funcional foi encontrado no codigo da aplicacao.

  • Acoplamento forte ao PrestaShop

    Formato de exportacao, modulos e API WebService eram especificos para PrestaShop 1.4/1.5, tornando a adaptacao a outros CMS custosa.

  • Sem CI/CD

    Deploy aparentemente manual, sem pipeline de integracao continua ou testes automatizados.

O que eu faria diferente
  • Adotar um framework padrao (Symfony, Laravel) desde o inicio em vez de criar o mynd-framework, para facilitar manutencao e recrutamento
  • Construir uma API REST unificada em vez de conexoes diretas ao banco de dados de cada subprojeto
  • Introduzir testes automatizados (unitarios e de integracao) para proteger evolucoes, especialmente nas exportacoes criticas para o negocio
  • Containerizar todo o ecossistema com Docker desde o inicio para facilitar deploy e reprodutibilidade de ambientes
  • Abstrair a camada de exportacao para suportar outros CMS (WooCommerce, Shopify) alem do PrestaShop
Licoes duradouras

Automacao e um multiplicador de forca

Uma equipe pequena pode gerenciar um ecossistema B2B complexo se os processos repetitivos (importacao, exportacao, traducao) forem totalmente automatizados.

Arquiteturas evoluem

A transicao de SVN para Git, de framework customizado para Symfony, de PHP procedural para MVC ilustra uma maturacao tecnica progressiva mas realista - voce nao reescreve tudo de uma vez.

Documentacao visual tem valor

As capturas de tela exaustivas de 2019 permitem, 7 anos depois, entender exatamente o estado das aplicacoes. Um investimento de baixo custo mas altamente valioso.

Bus factor e um risco real

Um ecossistema de 30+ aplicacoes mantido principalmente por uma pessoa e fragil. A diversificacao de competencias na equipe e essencial.

Trajetoria relacionada

Experiencia profissional ligada a esta realizacao

Competencias aplicadas

Competencias tecnicas e humanas aplicadas

Galeria de imagens

Capturas e visuais do projeto