Saltar para o conteúdo
BigTree108

Serviços de desenvolvimento e consultoria em Apache Kafka

Desenvolvimento e consultoria em Apache Kafka: arquitetura orientada a eventos, producers e consumers em Java, .NET, Python e Go, Kafka Connect e change data capture com Debezium, processamento de streams com Kafka Streams e Apache Flink, Kafka gerido no Confluent Cloud, no Amazon MSK e no Azure Event Hubs, e operação de clusters, migrações e atualizações, com engenheiros de Kafka dedicados à sua equipa ou um projeto Kafka entregue de ponta a ponta.

O que construímos com Kafka

  • Arquitetura orientada a eventos no Kafka

    Tópicos, partições, chaves e retenção desenhados em torno dos seus eventos de negócio, esquemas de eventos acordados entre equipas e padrões como o transactional outbox e consumers idempotentes, para que um evento não se perca nem seja aplicado duas vezes.

  • Producers e consumers Kafka

    Serviços em Java com Spring for Apache Kafka, .NET com Confluent.Kafka, Python e Go, com novas tentativas, dead letter topics, transações onde uma duplicação custaria dinheiro e share groups (Queues for Kafka, prontas para produção desde o Kafka 4.2) onde o trabalho é repartido entre consumers como numa fila.

  • Kafka Connect e Debezium

    Alterações de bases de dados transmitidas para o Kafka com Debezium, tópicos entregues a armazéns de dados, índices de pesquisa e armazenamento de objetos por sink connectors, e tópicos materializados como tabelas Iceberg ou Delta com o Confluent Tableflow, no Confluent Cloud, no MSK Connect ou no Strimzi.

  • Processamento de streams com Flink e Kafka Streams

    Junções, agregações com janelas e enriquecimento no Kafka Streams dentro dos seus serviços Java, ou em jobs Apache Flink e Flink SQL no Confluent Cloud, no Amazon Managed Service for Apache Flink ou no seu próprio cluster, para verificações de fraude, métricas em tempo real e alertas.

  • Confluent Cloud, MSK e Event Hubs

    Kafka gerido no Confluent Cloud, no Amazon MSK com Express brokers ou MSK Serverless, no Azure Event Hubs através do seu endpoint Kafka, no Aiven ou no Redpanda, escolhido por débito, retenção, região e custo e provisionado em Terraform.

  • Kafka autogerido em Kubernetes

    Clusters Kafka 4 a correr em KRaft sem ZooKeeper, em Kubernetes com o operador Strimzi ou em máquinas virtuais, com réplicas conscientes do rack, armazenamento em camadas, Cruise Control para reequilíbrio e atualizações progressivas sem indisponibilidade.

  • Schema Registry e data contracts

    Avro, Protobuf ou JSON Schema no Confluent Schema Registry, no Apicurio Registry ou no AWS Glue Schema Registry, com regras de compatibilidade verificadas em CI para que um producer não possa quebrar os seus consumers com uma alteração.

  • Migrações e atualizações do Kafka

    Clusters ZooKeeper passados para KRaft antes da atualização para o Kafka 4, cargas de trabalho retiradas do RabbitMQ, do ActiveMQ ou do IBM MQ, e clusters movidos entre Kafka autogerido, MSK e Confluent Cloud com o MirrorMaker 2 ou o Cluster Linking, offsets de consumers incluídos.

  • Monitorização e segurança do Kafka

    Atraso dos consumers, partições sub-replicadas e débito no Prometheus e no Grafana ou no Confluent Control Center, TLS em todas as ligações, SASL com OAuth ou TLS mútuo, ACL por serviço, e alterações a tópicos, quotas e ACL feitas através de revisão de código.

Contratar engenheiros de Kafka

  • engenheiros de Kafka dedicados

    Engenheiros de Kafka que integram a sua equipa a tempo inteiro, trabalham nos seus repositórios, no seu tracker e nas suas reuniões, e reportam ao seu responsável. A sua empresa entrevista-os; nós assumimos o contrato ucraniano, o processamento salarial, a faturação e as férias.

  • Entrega de projetos Kafka

    Uma equipa que conduz o projeto Kafka do âmbito à release: estimativa, desenvolvimento, testes e implementação, com um líder técnico do nosso lado que é responsável pelo plano e pela qualidade.

  • Suporte e tomada a cargo de sistemas Kafka

    Um sistema Kafka existente assumido de outra equipa ou mantido em funcionamento: primeiro uma revisão só de leitura e uma lista escrita de riscos, depois correções e novas funcionalidades por ordem de impacto.

A página da equipa dedicada explica como os especialistas integram a sua equipa, e a página de outsourcing aborda a entrega de projetos, as tomadas a cargo e a forma como cobramos.

Quem trabalha no seu projeto Kafka

  • engenheiros de Kafka

    Desenho de clusters, operação, Connect e atualizações

  • Engenheiros de back-end

    Producers e consumers em Java, .NET, Python e Go

  • Engenheiros de dados

    Processamento de streams e destinos para lakehouse

  • Engenheiros de cloud e DevOps

    Terraform, Kubernetes e monitorização

  • Engenheiros de QA

    Testes de contrato e de carga para fluxos de eventos

Streaming de eventos que pode operar

O desenho vem antes do código: chaves de partição escolhidas para a ordenação de que o negócio precisa, esquemas com regras de compatibilidade e semânticas de entrega decididas por fluxo, o que na maioria dos fluxos significa entrega at-least-once com consumers idempotentes e em alguns significa transações. Tópicos, ACL, quotas e conectores são declarados em código e revistos como qualquer outra alteração.

Antes do go-live o cluster é testado em carga no pico esperado com margem de sobra, são definidos alertas para o atraso dos consumers e as partições sub-replicadas, e os runbooks cobrem um broker perdido, um consumer bloqueado e a repetição de um tópico. As atualizações são ensaiadas primeiro em staging.

Outros serviços de dados e IA que prestamos

Visão geral de Dados e IA

Perguntas sobre o desenvolvimento em Kafka

Em que setores trabalham os engenheiros de Kafka?

Fintech, banca e seguros, para pagamentos, monitorização de transações e dados de negociação; comércio eletrónico e retalho, para encomendas, inventário e clickstream; logística, para rastreio de expedições e eventos de frota; telecomunicações e infraestrutura cloud, para eventos de rede e de utilização; tecnologia de publicidade e marketing, para fluxos de licitações e de impressões; indústria e energia, para dados de sensores e contadores; e SaaS empresarial, para eventos entre microsserviços.

Confluent Cloud, Amazon MSK ou o nosso próprio cluster?

Depende de onde correm os restantes sistemas e de quanto trabalho de operação quer assumir. O Confluent Cloud traz conectores geridos, Flink, Schema Registry e Tableflow num só serviço; o MSK e o Event Hubs ficam dentro da sua própria conta e fatura AWS ou Azure; um cluster autogerido com Strimzi dá controlo total em troca de o operar. Os compromissos são expostos para os seus volumes antes de se comprar o que quer que seja.

Podem atualizar um cluster que ainda corre em ZooKeeper?

Sim. O Kafka 4 corre apenas em KRaft, pelo que um cluster ZooKeeper é primeiro migrado para KRaft numa versão 3.x, com controladores acrescentados e metadados movidos enquanto o cluster continua a servir tráfego, e depois atualizado para o Kafka 4 quando os clientes tiverem sido verificados face às APIs removidas.

Em quanto tempo podem começar engenheiros de Kafka?

Quando o engenheiro de Kafka adequado está disponível, o arranque depende apenas da sua entrevista, do NDA e da cedência de propriedade intelectual. Caso contrário, fazemos uma pesquisa, que normalmente produz perfis de candidatos em duas a três semanas, e ninguém começa antes de a sua empresa dar o seu acordo.

Como contratamos engenheiros de Kafka através da BigTree108?

Diga-nos qual é o trabalho, a senioridade e o horário de que precisa. Propomos uma ou duas pessoas com os respetivos perfis, a sua empresa entrevista-as como entrevistaria uma contratação própria, e assina um único contrato com a BIG TREE 108 LLC e recebe uma fatura por mês.

A quem pertence o trabalho que produzem?

A sua empresa. Cada especialista tem um contrato assinado com a BigTree108 que atribui à empresa todo o trabalho produzido, e o nosso contrato com a sua empresa atribui-lho. O código, os designs e os documentos são entregues nos seus próprios repositórios e ferramentas, e não mantidos onde só nós os podemos alterar.

A construir ou a operar Kafka?

Indique-nos os seus volumes de eventos, as linguagens dos seus serviços e onde corre o cluster. Receberá resposta no prazo de um dia útil: um plano, uma revisão de arquitetura ou perfis de candidatos.