Visão Geral do Cargo
O Engenheiro de Dados é responsável por construir e operar a base de dados da Inventeer: pipelines confiáveis, modelos limpos, estruturas de dados otimizadas e conjuntos de dados confiáveis que alimentam análises, relatórios e decisões de produto/operação baseadas em dados.
Este é um papel orientado à entrega e sistemas. O sucesso é medido por fluxos de dados confiáveis, tabelas de confiança, performance eficiente de consultas, migrações repetíveis, propriedade clara e infraestrutura de baixa manutenção—não por extrações de dados pontuais.
Responsabilidades Principais
Arquitetura de Dados, Modelagem e Fontes de Verdade
- Projetar e evoluir a arquitetura de dados da Inventeer: sistemas de origem → pipelines → conjuntos de dados modelados → consumidores downstream.
- Definir e manter fontes de verdade e conjuntos de dados canônicos para relatórios de produto e operacionais.
- Construir modelos de dados que equilibrem correção, escalabilidade, performance e facilidade de uso (schemas amigáveis para analytics).
Estruturas de Dados, Performance e Otimização
- Planejar e revisar estruturas de banco de dados: schemas, índices, estratégias de particionamento e padrões de consultas.
- Diagnosticar e melhorar gargalos de performance (queries lentas, joins ineficientes, índices ausentes, suposições de cardinalidade inadequadas).
- Estabelecer padrões para modelagem de dados e performance (nomenclatura, estratégia de normalização/denormalização, retenção/arquivamento).
Desenvolvimento de Pipelines (ETL/ELT)
- Construir e manter pipelines ETL/ELT que ingestam dados de bancos internos, ferramentas de terceiros e APIs externas.
- Implementar cargas incrementais, backfills, estratégias de deduplicação e tratamento de evolução de schemas.
- Garantir que os pipelines sejam eficientes, seguros e resilientes a mudanças upstream.
Migração de Sistemas e Transformação de Dados
- Planejar e executar migrações entre sistemas e ambientes, incluindo casos de diferenças significativas nos schemas.
- Projetar lógica de transformação para mapear estruturas antigas para novos modelos de dados, preservando correção e rastreabilidade.
- Executar estratégias de cutover: backfills, sincronização incremental, validação, reconciliação e planejamento de rollback.
- Manter documentação de migração e playbooks repetíveis para uso futuro.
Orquestração, Confiabilidade e Observabilidade
- Operar workflows de orquestração (Airflow/Prefect/Dagster ou equivalente): agendamento, retries, alertas e gestão de dependências.
- Implementar observabilidade de pipelines: monitoramento, logging, awareness de lineage e alertas de falha.
- Definir SLAs/SLOs para conjuntos de dados críticos e garantir que stakeholders saibam o que é confiável e quando.
Qualidade de Dados e Governança
- Implementar checagens de qualidade de dados (atualidade, completude, validade, integridade referencial, detecção de anomalias quando aplicável).
- Construir validação e reconciliação automatizadas para evitar falhas silenciosas—especialmente durante migrações e mudanças de schema.
- Manter documentação de datasets, pipelines e contratos (schemas, definições, ownership).
Habilitação e Colaboração
- Trabalhar com Data Analysts e equipes de Engenharia para garantir que os datasets suportem definição de KPIs e necessidades de relatório.
- Apoiar o design de instrumentação do ponto de vista de engenharia (eventos, identificadores, limites de tenant, consistência).
- Reduzir o tempo para insights tornando dados descobríveis, consistentes e fáceis de consultar.
Habilidades Técnicas Requeridas
- Forte experiência construindo e operando pipelines de dados de ponta a ponta (ingestão → modelagem → serving).
- Forte conhecimento em SQL e experiência prática com PostgreSQL (obrigatório).
- Experiência planejando e executando migrações de dados entre sistemas, incluindo transformações complexas e validação.
- Experiência com pelo menos um framework de orquestração (Airflow/Prefect/Dagster ou equivalente).
- Capacidade de construir integrações resilientes com APIs externas e ferramentas de terceiros.
- Experiência em modelagem de dados para analytics (star schemas, wide tables, modelos de eventos, pensamento dimensional).
- Experiência prática em otimização de performance (índices, planos de consulta, trade-offs de design de schema).
- Familiaridade com práticas de qualidade de dados e checagens automatizadas.
- Boa disciplina de engenharia: versionamento, mentalidade CI/CD, documentação e manutenibilidade.
Desejáveis
- Python para desenvolvimento de pipelines e automação (requests, pandas, ferramentas de dados).
- Experiência com stack de warehouse/lake (BigQuery, Snowflake, Redshift ou similar) caso seja introduzido.
- Experiência com dbt (ou abordagem equivalente de transformação como código).
- Experiência com limites de dados em SaaS multi-tenant e restrições de privacidade/segurança.
- Familiaridade com pipelines streaming/event-driven (Kafka/PubSub) quando necessário.
- Experiência em práticas de dados auditáveis (rastreamento, controle de acesso, políticas de retenção).
Expectativas Comportamentais
- Mentalidade de confiabilidade: trata dados como software de produção com uptime, correção e ownership.
- Construtor de baixa manutenção: prefere sistemas simples e duráveis em vez de complexidade frágil.
- Disciplina de performance: previne e corrige gargalos na camada de dados com estrutura e otimização cuidadosa.
- Ownership de migração: planeja migrações com cuidado, valida resultados e executa cutovers sem problemas.
- Documentação clara: torna datasets, pipelines e lógica de migração compreensíveis—não conhecimento tribal.
- Forte propriedade: fecha ciclos—falhas são corrigidas permanentemente, não apenas remendadas repetidamente.
- Habilitação colaborativa: constrói para analistas e stakeholders, não apenas para “o pipeline rodar”.
- Consciente de segurança: respeita controle de acesso, isolamento de tenants e princípios de minimização de dados.