Cliente e contexto
Uma grande empresa do setor imobiliário operava uma plataforma que agregava dados de mais de uma centena de fontes e os disponibilizava a várias ferramentas internas e sistemas orientados para o cliente. Ao longo dos anos, a plataforma evoluiu para um sistema multi-base de dados e multi-servidor, com:
- Mais de 300 GB de bases de dados.
- Mais de 3 TB de ficheiros.
- Numerosas integrações com fornecedores de dados imobiliários e aplicações internas.
O sistema era frágil e difícil de evoluir, mas essencial para as operações diárias.
Desafios
- Arquitetura multi-base de dados e multi-servidor com dependências e replicação complexas.
- Grandes volumes de dados (centenas de GB de dados, terabytes de ficheiros), tornando a manutenção e os backups não triviais.
- Código e scripts legados a controlar importações, exportações e transformações de dados imobiliários.
- A plataforma precisava de estabilização e de desenvolvimento de novas funcionalidades, sem indisponibilidade.
O que fiz
1. Avaliação e estabilização
- Realizei uma análise aprofundada da arquitetura existente, dos fluxos de dados e da configuração de deployment.
- Identifiquei riscos críticos (inconsistências de dados, scripts frágeis, lacunas de backup) e tratei-os em primeiro lugar.
- Corrigi bugs-chave que estavam a causar falhas ou problemas de qualidade dos dados.
2. Trabalho em bases de dados e infraestrutura
- Trabalhei com múltiplas bases de dados para:
- Garantir consistência entre diferentes repositórios de dados.
- Melhorar o desempenho das queries nas operações mais pesadas.
- Ajudei a garantir que as estratégias de backups e recuperação de desastre correspondiam à dimensão e complexidade reais dos dados.
- Simplifiquei e documentei, sempre que possível, os procedimentos de deployment e operações.
3. Sustentação e desenvolvimento de novas funcionalidades
- Assegurei engenharia de sustentação contínua:
- Correção de problemas em produção.
- Suporte a novas fontes de dados e alterações de integração.
- Implementei novas funcionalidades para:
- Pesquisa e filtragem de dados.
- Reporting e ferramentas internas.
- Mantive um forte foco em não quebrar os fluxos de trabalho existentes, utilizados diariamente pelo negócio.
Resultados
- A plataforma de agregação imobiliária foi reposta num estado estável e sustentável.
- A empresa pôde continuar a confiar num sistema que gere centenas de GB de dados e terabytes de ficheiros sem uma reescrita arriscada.
- Foi possível entregar novas funcionalidades e melhorias, mantendo a integridade dos dados e a disponibilidade.
- A documentação e a compreensão operacional melhoraram, reduzindo o risco de «ponto único de falha».
Tecnologias e responsabilidades
- Função: Senior sustaining engineer / especialista de plataforma
- Tecnologias: PHP, Symfony, SQL, configuração multi-base de dados, integração de dados, ferramentas relacionadas com imobiliário/MLS, scripting, práticas de backup e operações
- Âmbito: Estabilização, correção de bugs, melhorias de desempenho, novas funcionalidades e suporte operacional para uma plataforma legada complexa
Se tem uma plataforma legada de grande dimensão e crítica para o negócio no setor imobiliário ou noutro domínio intensivo em dados, posso ajudar a estabilizá-la e a continuar a evoluí-la em segurança.
Voltar a todos os estudos de caso