Pular para conteúdo

Engenharia de Software

Cultura técnica e estratégia da ManaVitae WareSoft

Construímos, mantemos e reescrevemos sistemas com rigor, estética e intenção — do discovery ao run.


🌌 North Star Técnica

  • Código vivo
    Estruturas pensadas para evoluir sem ruptura, com decisões registradas e rastreáveis.

  • Experiência elevada
    Interfaces funcionais → emocionais → futuristas, alinhadas ao modo de criação.

  • Operação previsível
    Pipelines automatizados, métricas claras e segurança embutida desde o primeiro commit.


🛠️ Stack Estratégica

Tecnologias preferenciais para criação, manutenção e reescrita — sempre com intenção clara.

Tecnologia Uso Status
Angular 20 Web apps principais ✅ Em uso
Angular 19 Legados e protótipos ✅ Em uso
Vue.js 3 Projetos específicos ✅ Em uso
PrimeNG Componentes UI ✅ Em uso
TailwindCSS Styling expressivo ✅ Em uso
Ionic Apps híbridos 📋 Planejado
Tecnologia Uso Status
FastAPI APIs Python ✅ Em uso
Spring Boot APIs Java 📋 Planejado
Node.js / NestJS APIs JavaScript/TypeScript 📋 Planejado
Tecnologia Função Status
PostgreSQL Relacional principal ✅ Em uso
MongoDB NoSQL 📋 Planejado
Redis Cache / fila curta 📋 Planejado
RabbitMQ Message broker 📋 Planejado
Kafka Event streaming 📋 Planejado
Tecnologia Uso Status
Docker Containerização ✅ Em uso
Kubernetes Orquestração 📋 Planejado
GitHub Actions CI/CD ✅ Em uso
Git + GitHub Versionamento ✅ Em uso
Windsurf IDE com IA ✅ Em uso
Heroku / GitHub Pages Deploy rápido ✅ Em uso
Google Cloud Serviços gerenciados ✅ Em uso
Azure / AWS Expansão 📋 Planejado

Escolhemos stack pelo impacto na experiência e na manutenção — nunca por hype.


🧱 Arquitetura de Referência

flowchart LR
    A[Cliente / App] --> B[API Gateway]
    B --> C[Serviços Domain-driven]
    C --> D[(Bancos & Cache)]
    C --> E[Mensageria/Eventos]
    D --> F[Data Lake / Analytics]
    B --> G[Observabilidade]
  • Camadas claras: apresentação → domínio → dados, com dependências unidirecionais.
  • Serviços opinativos: focados em contexto de negócio, seguindo ADRs e guidelines.
  • Observabilidade integrada: logs estruturados, métricas e tracing por padrão.

📚 Playbooks Técnicos

Núcleo de Criação

Fundamentos essenciais — Primeira impressão em 3-5s, cores/spacing guiando emoções e estados completos (hover, loading, erro, sucesso).
Acessibilidade & performance — Contraste ≥4.5:1, tipografia ≥16px, navegação por teclado/ARIA, skeletons, lazy loading, critical CSS.

Todo produto segue design system com tokens e componentes customizados (PrimeNG + Tailwind como base).

Princípios — Clean Code, SOLID, KISS, YAGNI, Separation of Concerns e Single Source of Truth. Type safety, baixo acoplamento, alta coesão e documentação pontual.
Organização — Estrutura por features/domínios; camadas apresentação → negócio → dados; Repository + Service Layer + Dependency Injection como padrão; Observer/Event emitters e factories para integrações.

flowchart LR
    Ideia --> Backlog --> Sprint --> Dev --> CodeReview --> Deploy --> Learn
- Git flow: main → develop → feature/bugfix/hotfix; commits tipo: descrição; code review obrigatório focando qualidade, segurança e UX.
flowchart LR
    Commit --> Tests --> Build --> DeployDev --> DeployStaging --> DeployProd
- Dev espelha develop; homologação com QA; produção monitorada. Pipelines sempre rodam lint, testes, build e checagens de segurança.

Sustentação Operacional

  • Testes unitários, integração e E2E (metas 70% base / 90%+ regras críticas).
  • README e registro de decisões em todos os projetos; APIs descritas (OpenAPI/Postman).
  • Logs estruturados, métricas de performance/erros, alertas alinhados a SLOs.
  • Zero secrets em repositórios (usar vaults/variáveis).
  • Inputs validados/sanitizados, dependências atualizadas, auditorias IAM e backups testados.
Ritual Frequência Propósito
Retrospectiva Quinzenal Ajustar processos e acordos
Métricas (lead time, bugs, cobertura) Semanal Visibilidade e foco
Sessões técnicas Mensal Atualizar práticas e stack
Pair / Mob programming Quando útil Transferir conhecimento
Atualização do handbook Sempre que algo muda Garantir verdade única

Este guia é vivo: evolui conforme aprendemos com projetos, parceiros e o ecossistema.