# Roadmap Blog da Contabilizei
## Solução direta de problemas atuais
### 1. Melhorar desempenho mobile
- remover Styled Components
- pode ser trabalho contínuo, ou podemos fechar um escopo
- otimizar renderização de tabela
- atualmente o componente de renderização de tabelas deixa a renderização pesada
- alternativa: setar larguras fixas nas colunas de cada tabela
- otimização de imagens (conversão em formatos modernos / upload de imagens comprimidas)
- implementar recepção de imagens no filler
- implementar conversão para formatos modernos
- alterar front para incluir imagens usando srcset, do próprio netlify
- adicionar funcionamento AMP
- discovery, mas provavelmente precisamos de um contabilizei-blog-client-amp e fazer alterações no filler
- desenvolver versão específica para mobile
- solução final: nginx como server de aplicação, entregando de acordo com user-agent
- solução rápida: utilizar cloud functions do netlify para entregar documento de acordo com user-agent
### 2. Aproveitar melhor oportunidades de conversão
- de acordo com proposta de novo layout, adicionar mais CTAs
- tecnicamente, basta fazer as alterações no blog-client
### 3. Entregar informações com dados estruturados
- discovery de como fazer no nuxt
### 4. Aumentar escaneabilidade do conteúdo
- fazer levantamento com Fabio e descobrir problemas de escaneabilidade
---
### 5. Facilitar a publicação
qual dificuldade temos hoje em relação a publicação?
### 6. Rever arquitetura da informação
### 7. Reduzir tráfego e carregamento inicial - otimizar imagens
### 8. Ter um sitemap auto-atualizável
---
## Evoluções de arquitetura
### Utilizar servidor de aplicação no lugar do netlify
Cria oportunidades para melhoria de desempenho (SEO e UX)
Passos:
1) criar ambiente e hospedar páginas atuais
2) criar um mecanismo eficaz de cache
3) upgrade no plano do contentful para permitir consumo de API
4) desligar -filler e alterar o -client para funcionar com SSR, consumindo API do Contentful
O passo 1 possibilita que tenhamos mais controle sobre o funcionamento das páginas hospedadas. Podemos passar a entregar versões específicas dependendo do device.
O passo 2 é necessário para que, quando usarmos SSR, não tenhamos um aumento de custo
Os passos 3 e 4 permitem que a gente deixe de usar geração de páginas em tempo de build. Isso garante que publicações possam ficar disponíveis imediatamente (redução de até 20 minutos para alguns segundos) e que seja possível aumentar a capacidade de 2 publicações por hora para mais de 30. Isso também aumentaa automação do gerenciamento de conteúdo, incluindo exclusão de conteúdo, que hoje não atendemos.
### Utilizar componentes compartilhados com outros produtos do marketing
Criar uma biblioteca (componentizei-marketing) para compartilharmos componentes (vue e custom elements)
### Adicionar testes e2e
O primeiro passo é criar um ambiente de homologação (com ajuda de devops)
### Adicionar testes de unidade em páginas
Adicionar configuração do Jest para termos testes automatizados.
O tipo mais simples de teste é o de snapshot, que previne regressão.
### Possibilitar testes A/B eficientes
Dar suporte ao lançamento de testes
Precisamos poder lançar uma quantidade grande de testes por semana (referência: 10). Paara isso, é necessário um editor gráfico e uma ferramenta que degrade pouco o desempenho de front-end.
## Adicionar monitoramento
Como saber se a aplicação está no ar?
Quais os indicadores de saúde da aplicação e como criar um alerta para quando indicarem problema?
###### tags: `leads`, `roadmap`