Sistema TAZZIN: o que construí na indústria, auditável por qualquer pessoa

A plataforma de gestão que levo à indústria sob a minha marca. Ela junta num sistema só o que normalmente vive numa planilha por departamento — e roda com dados sintéticos, para que qualquer pessoa possa abrir a demo e ler o código.

Desafio
O trabalho que faço dentro de uma empresa é confidencial: quem me avalia não tem como conferir.
O que fiz
Levei a forma de estruturar um sistema de gestão para um produto próprio, com dados sintéticos coerentes entre os módulos.
Resultado
18 módulos, 21 telas e 299 testes automatizados, com demo no ar e código aberto.
Meu papel
Produto, arquitetura, código e marca.

O que o sistema cobre

A venda baixa o estoque, que dispara a compra, que movimenta o financeiro; o apontamento da máquina conversa com o refugo e com a remuneração do operador — porque está tudo no mesmo lugar.

Duas decisões que pesaram

Regras de negócio como funções puras

A camada de domínio decide sem tocar em banco, interface ou arquivo; os serviços só orquestram. Cada regra é testável sozinha.

Alternativa rejeitada — Regra de negócio dentro do serviço ou do modelo, como na maioria dos sistemas de cadastro. Funciona no início e degrada rápido: regra misturada com banco só se testa com tudo de pé.

Módulos conversam por contrato, não por atalho

Um módulo referencia outro só pelo identificador. Se Vendas precisa do nome de um produto, pergunta ao serviço de Estoque.

Alternativa rejeitada — Deixar o ORM navegar livremente entre módulos. É mais cômodo e cria o acoplamento invisível que impede qualquer módulo de evoluir sozinho.

Detalhes técnicosArquitetura, testes e stack

Arquitetura em camadas

Tela → serviço → domínio → repositório → banco, sempre nessa direção, com o núcleo (configuração, log estruturado, métricas e verificação de saúde) atravessando todas. Cada módulo de negócio percorre todas as camadas com os próprios arquivos — entender um é entender todos.

Outras decisões

  • Testes contra banco real em memória, não contra imitações: cada teste exercita a consulta de verdade.
  • Observabilidade desde o primeiro dia — log em JSON, latência medida por operação e verificação de saúde.
  • Cor com significado — verde é "dentro da meta", vermelho é problema, azul é neutro; a legenda diz isso em palavras.

Stack

  • Python 3
  • SQLAlchemy 2.0
  • Streamlit
  • SQLite
  • pytest
  • Log estruturado (JSON)

Aprendizado

  1. O que cada camada é proibida de fazer importa mais do que o que ela faz. Sem as proibições escritas, toda fronteira erode — e a exceção que existe está documentada como exceção.
Voltar ao case principal De 15 para 3 dias de trabalho manual por mês: o sistema de gestão que construí numa indústria