O que esta vaga pede
Atuar na definição, evolução e sustentação da plataforma de bancos de
dados da organização, combinando conhecimentos de arquitetura, administração de
bancos de dados, cloud computing, automação e engenharia de plataforma.
O profissional será responsável por apoiar a modernização das aplicações
e da infraestrutura de dados, estabelecendo padrões e boas práticas para
provisionamento, operação, segurança, alta disponibilidade, observabilidade,
backup, restauração e recuperação de desastres dos bancos de dados.
Terá papel importante na evolução do modelo de consumo de bancos de
dados, promovendo automação, Infrastructure as Code (IaC), GitOps e mecanismos
de autosserviço sempre que aplicável, reduzindo atividades operacionais manuais
e aumentando a confiabilidade, padronização e autonomia dos times. Isto inclui
evoluir a plataforma como produto interno e promover experiência do
desenvolvedor.
Deverá atuar em
conjunto com times de Plataforma, Desenvolvimento, Infraestrutura, Segurança e
Arquitetura, apoiando decisões relacionadas à escolha das tecnologias de
persistência, topologias, estratégias de disponibilidade, escalabilidade e
operação dos dados. O ambiente contempla bancos de dados executados em serviços
gerenciados de nuvem e plataformas baseadas em containers e Kubernetes.
Responsabilidades e atribuições
Atividades a serem exercidas:
Definir e
evoluir padrões técnicos e arquiteturais para utilização de bancos de
- dados relacionais e não relacionais na organização;
Administrar
e apoiar a operação de bancos de dados em ambientes de produção,
- homologação e desenvolvimento;
Apoiar os
times de desenvolvimento e arquitetura na escolha da tecnologia de
- persistência mais adequada para cada workload;
Definir
boas práticas para criação e utilização de bancos de dados, schemas,
- usuários, roles, permissões, índices e demais objetos;
Definir e
implementar estratégias de alta disponibilidade, replicação, failover e
- recuperação de bancos de dados;
Direcionar
estratégias operacionais de backup, restauração, recuperação de desastres,
monitoramento, desempenho, capacidade e escalabilidade dos bancos de
dados.
Apoiar
testes de carga, capacity planning e análise de escalabilidade das
- soluções;
Definir e
implementar padrões de observabilidade para bancos de dados, contemplando
- métricas, logs, dashboards e alertas;
Atuar com
bancos de dados executados em ambientes de nuvem pública e plataformas
- baseadas em containers;
Apoiar a
operação de workloads de dados executados em Kubernetes, compreendendo
seus mecanismos de persistência, disponibilidade, escalabilidade e
- integração com a plataforma;
Automatizar
o provisionamento, configuração e operação de bancos de dados com IaC,
CI/CD e GitOps, contribuindo para capacidades de Database as a Service
(DBaaS) e autosserviço para os times de desenvolvimento.
Apoiar
processos de migração e modernização de bancos de dados entre ambientes
- on-premises, cloud e plataformas de containers;
Definir e
aplicar boas práticas de segurança, incluindo criptografia, segregação de
- acesso, gestão de credenciais e princípio do menor privilégio;
Produzir
documentação técnica, padrões arquiteturais, runbooks e procedimentos
- operacionais;
Apoiar
troubleshooting e tratamento de incidentes complexos relacionados a bancos
- de dados;
Avaliar
novas tecnologias e propor melhorias na arquitetura e na plataforma de
dados;
Interagir
frequentemente com os times de Plataforma, Desenvolvimento,
Infraestrutura, Segurança e Arquitetura.
Requisitos e qualificações
Formação
Ensino superior completo em Ciência da Computação,
Sistemas de Informação, Engenharia de Software ou áreas correlatas; Pós-graduação ou especialização em Cloud Computing, Banco de Dados, Arquitetura
de Software ou áreas relacionadas. Experiência Profissional e Conhecimentos Técnicos necessários:
Experiência
- sólida em administração de bancos de dados em ambientes de produção;
Conhecimento
- avançado de bancos de dados relacionais, especialmente PostgreSQL;
Experiência
- com outros bancos relacionais, como MySQL, SQL Server ou equivalentes;
Conhecimentos
sólidos de SQL, incluindo consultas avançadas, índices, planos de execução
- e otimização de desempenho;
Conhecimento
de arquitetura de bancos de dados, replicação, alta disponibilidade e
- estratégias de failover;
Experiência
com backup, restauração, recuperação de desastres e Point-in-Time
- Recovery;
Conhecimento
- sobre definição e aplicação de RPO e RTO;
Experiência
com análise de performance, troubleshooting e capacity planning de bancos
- de dados;
Experiência
com serviços gerenciados de bancos de dados em provedores de nuvem
- pública;
Experiência
- em ambientes AWS e Azure;
Conhecimento
- de Infrastructure as Code e ferramentas como Terraform ou equivalentes;
Conhecimento
de containers e Kubernetes, incluindo conceitos de workloads stateful,
- persistência, volumes, storage classes, secrets e alta disponibilidade;
Conhecimento
- de práticas de automação e integração com pipelines CI/CD;
Conhecimento
- de conceitos e práticas de GitOps;
Conhecimento
ou experiência com práticas de Platform Engineering e Internal Developer
Plataforms (IDP).
Experiência
com ferramentas de monitoramento e observabilidade, como Grafana,
Prometheus, Cloud
- Watch, Azure Monitor ou equivalentes;
Conhecimento
de práticas de segurança de bancos de dados, incluindo criptografia,
- controle de acesso, auditoria e gestão de credenciais;
Conhecimento
de scripting ou programação para automação, utilizando linguagens como
- Python, Shell Script ou equivalentes;
Experiência
- em migração e modernização de bancos de dados;
Capacidade
de diagnosticar e resolver problemas complexos de disponibilidade,
- desempenho e escalabilidade;
Capacidade
de analisar requisitos de aplicações e propor arquiteturas de persistência
- adequadas;
Boa comunicação e capacidade de atuar de forma colaborativa com
equipes multidisciplinares. Desejável/Diferencial: Experiência
- sólida em administração de bancos de dados em ambientes de produção;
Conhecimento
- avançado de bancos de dados relacionais, especialmente PostgreSQL;
Experiência
- com outros bancos relacionais, como MySQL, SQL Server ou equivalentes;
Conhecimentos
sólidos de SQL, incluindo consultas avançadas, índices, planos de execução
- e otimização de desempenho;
Conhecimento
de arquitetura de bancos de dados, replicação, alta disponibilidade e
- estratégias de failover;
Experiência
com backup, restauração, recuperação de desastres e Point-in-Time
- Recovery;
Conhecimento
- sobre definição e aplicação de RPO e RTO;
Experiência
com análise de performance, troubleshooting e capacity planning de bancos
- de dados;
Experiência
com serviços gerenciados de bancos de dados em provedores de nuvem
- pública;
Experiência
- em ambientes AWS e Azure;
Conhecimento
- de I...