docs: add comprehensive project roadmap with gap analysis and launch priorities

This commit is contained in:
Tiago Yamamoto 2025-12-27 10:16:20 -03:00
parent bc64a76ce2
commit 254f19766a

300
ROADMAP.md Normal file
View file

@ -0,0 +1,300 @@
# 🗺️ GoHorse Jobs - Roadmap Completo
> **Data**: 27/12/2024
> **Status**: Pré-lançamento
> **Objetivo**: Documentar funcionalidades existentes, gaps e próximos passos
---
## 📊 Status Atual do Projeto
### ✅ Funcionalidades Implementadas
#### Backend (Go API)
| Feature | Status | Endpoint |
|---------|--------|----------|
| Login/Autenticação | ✅ | `POST /api/v1/auth/login` |
| CRUD de Empresas | ✅ | `/api/v1/companies` |
| CRUD de Usuários | ✅ | `/api/v1/users` |
| CRUD de Vagas | ✅ | `/api/v1/jobs` |
| Candidaturas | ✅ | `/api/v1/applications` |
| Storage S3 | ✅ | `/api/v1/storage/*` |
| JWT com HttpOnly Cookies | ✅ | - |
| Rate Limiting | ✅ | 100 req/min |
| CORS configurado | ✅ | - |
| Swagger/OpenAPI | ✅ | `/docs` |
#### Frontend (Next.js 15)
| Feature | Status | Path |
|---------|--------|------|
| Homepage | ✅ | `/` |
| Login | ✅ | `/login` |
| Cadastro | ✅ | `/cadastro` |
| Listagem de Vagas | ✅ | `/vagas` |
| Detalhe da Vaga | ✅ | `/vagas/[id]` |
| Dashboard Admin | ✅ | `/dashboard` |
| Gestão de Usuários | ✅ | `/dashboard/users` |
| Gestão de Empresas | ✅ | `/dashboard/companies` |
| Gestão de Vagas | ✅ | `/dashboard/jobs` |
| Minhas Candidaturas | ✅ | `/dashboard/my-jobs` |
| Mensagens | ✅ | `/dashboard/messages` |
| Upload de Imagens | ✅ | Componente S3 |
#### Seeders (Node.js)
- ✅ Users (com roles diferentes)
- ✅ Companies (com dados completos)
- ✅ Jobs (vagas de exemplo)
- ✅ Applications
- ✅ Regions/Cities
#### DevOps
- ✅ Dockerfiles para todos os serviços
- ✅ Pipeline CI/CD (Drone)
- ✅ Manifests Kubernetes
- ✅ Documentação básica
---
## 🚨 Gaps Críticos para Lançamento (P0)
> [!CAUTION]
> Itens que **DEVEM** estar funcionando antes de ir ao ar
### 1. **Fluxo de Candidatura Completo**
```
[ ] Frontend: Botão "Candidatar-se" na página de vagas
[ ] Frontend: Modal/Form para anexar currículo
[ ] Backend: Upload de currículo (PDF) para S3
[ ] Backend: Notificação por email para empresa
[ ] Frontend: Tela "Minhas Candidaturas" funcional
```
### 2. **Gestão de Currículo/Perfil do Candidato**
```
[ ] Frontend: Página de edição de perfil completo
[ ] Backend: Endpoint PUT /api/v1/users/me
[ ] Backend: Armazenar skills, experiências, educação
[ ] Frontend: Upload de foto de perfil
```
### 3. **Dashboard da Empresa Funcional**
```
[ ] Listar candidatos por vaga
[ ] Alterar status da candidatura (aprovado/rejeitado/em análise)
[ ] Visualizar currículo do candidato
[ ] Exportar lista de candidatos
```
### 4. **Recuperação de Senha**
```
[ ] Frontend: Tela "Esqueci minha senha"
[ ] Backend: Endpoint POST /api/v1/auth/forgot-password
[ ] Backend: Integração com serviço de email
[ ] Backend: Endpoint POST /api/v1/auth/reset-password
```
### 5. **Validação de Dados**
```
[ ] Backend: Validação de email único
[ ] Backend: Validação de CNPJ para empresas
[ ] Frontend: Feedback de erros amigável
[ ] Backend: Sanitização de inputs (XSS prevention)
```
---
## ⚠️ Gaps Importantes (P1)
> [!WARNING]
> Itens importantes para experiência do usuário após lançamento
### 6. **Sistema de Notificações**
```
[ ] Backend: Tabela de notificações
[ ] Backend: FCM (Firebase Cloud Messaging) integration
[ ] Frontend: Badge de notificações no header
[ ] Frontend: Lista de notificações
[ ] Backend: Envio de email transacional
```
### 7. **Busca e Filtros Avançados**
```
[ ] Backend: Full-text search em vagas
[ ] Frontend: Filtros por localização, salário, tipo
[ ] Frontend: Ordenação por data/relevância
[ ] Backend: Paginação otimizada
```
### 8. **Painel Administrativo (Backoffice)**
```
[ ] Autenticação no backoffice
[ ] CRUD de usuários via backoffice
[ ] Relatórios de uso
[ ] Logs de atividade
[ ] Gestão de tickets/suporte
```
### 9. **Métricas e Analytics**
```
[ ] Contagem de visualizações por vaga
[ ] Taxa de conversão (visualização → candidatura)
[ ] Dashboard de métricas para empresas
[ ] Integração com Google Analytics
```
### 10. **Integração Social**
```
[ ] Login com Google
[ ] Login com LinkedIn
[ ] Compartilhar vaga nas redes
[ ] Importar perfil do LinkedIn
```
---
## 📈 Melhorias Futuras (P2)
> [!TIP]
> Features que aumentam competitividade após MVP estável
### 11. **Matching Inteligente**
```
[ ] Algoritmo de match candidato-vaga
[ ] Recomendação de vagas personalizadas
[ ] Score de compatibilidade
[ ] Alertas de vagas similares
```
### 12. **Pagamentos e Monetização**
```
[ ] Planos para empresas (free/pro/enterprise)
[ ] Destaque de vagas (featured)
[ ] Pagamento via Stripe/Pix
[ ] Gestão de assinaturas
```
### 13. **Testes e Avaliações**
```
[ ] Testes técnicos online
[ ] Sistema de avaliação de candidatos
[ ] Feedback pós-entrevista
[ ] Notas compartilhadas entre recrutadores
```
### 14. **Internacionalização**
```
[ ] i18n frontend (pt-BR, en, es)
[ ] Vagas internacionais
[ ] Conversão de moeda
[ ] Timezones para entrevistas
```
### 15. **API Pública**
```
[ ] Documentação para parceiros
[ ] Rate limiting por API key
[ ] Webhooks para integração
[ ] SDK para desenvolvedores
```
---
## 🛠️ Débitos Técnicos
> [!NOTE]
> Itens de qualidade de código e infraestrutura
### Testes
```
[ ] Aumentar cobertura backend para 80%
[ ] Testes E2E com Playwright/Cypress
[ ] Testes de integração API
[ ] Testes de carga com k6
```
### Performance
```
[ ] Cache Redis para sessões
[ ] CDN para assets estáticos
[ ] Otimização de queries (N+1)
[ ] Lazy loading de imagens
```
### Segurança
```
[ ] Audit de dependências
[ ] Penetration testing
[ ] Backup automatizado do DB
[ ] Logs de segurança (SIEM)
```
### Observabilidade
```
[ ] Métricas com Prometheus
[ ] Dashboards Grafana
[ ] Distributed tracing
[ ] Alertas (PagerDuty/OpsGenie)
```
---
## 📅 Cronograma Sugerido
### Semana 1 (Lançamento + Estabilização)
- [ ] Deploy para produção
- [ ] Monitorar erros e hotfixes
- [ ] Completar fluxo de candidatura básico
- [ ] Ajustar feedback de usuários
### Semana 2-3
- [ ] Recuperação de senha
- [ ] Dashboard empresa funcional
- [ ] Sistema de notificações básico
- [ ] Busca e filtros
### Semana 4-6
- [ ] Backoffice completo
- [ ] Login social (Google)
- [ ] Métricas básicas
- [ ] Melhorias de UX
### Mês 2+
- [ ] Monetização
- [ ] Matching inteligente
- [ ] API pública
- [ ] Expansão de features
---
## 🎯 Métricas de Sucesso para Lançamento
| Métrica | Meta |
|---------|------|
| Uptime | > 99% |
| Tempo de resposta API | < 200ms |
| Erros 5xx | < 0.1% |
| Vagas cadastradas | > 50 |
| Candidaturas | > 100 |
| Empresas ativas | > 10 |
---
## 💡 Notas Finais
O projeto tem uma base sólida com:
- Arquitetura limpa (Clean Architecture)
- Stack moderna (Go + Next.js 15)
- Multi-tenancy implementado
- CI/CD configurado
**Para o lançamento hoje**, foque em:
1. Garantir que login/cadastro funcionam
2. Vagas são listadas corretamente
3. Candidatura básica funciona
4. Comunicar limitações aos usuários beta
**Próximo passo imediato**: Testar o fluxo completo candidato → vaga → candidatura manualmente antes de ir ao ar.
---
*Documento gerado em 27/12/2024 - Atualizar conforme progresso*