Logo da empresa
Candidatura

Programador

1 / 11
Dados Pessoais 0%

Arraste seu currículo aqui ou clique para selecionar

Formato aceito: PDF (máx. 10MB)
Python e DynamoDB: Você precisa escrever uma função em Python que receba um user_id e um creative_id e salve esses dados no DynamoDB em uma tabela chamada pixel_disparos. Assuma que você já tem a conexão com o DynamoDB configurada.
Lógica com PHP: Você precisa desenvolver uma função em PHP que analise um array de eventos de usuário. Cada evento é um array associativo com as chaves user_id e tipo_evento (que pode ser 'disparo_pixel' ou 'resposta_banner'). A função deve retornar um array associativo onde as chaves são os user_ids e os valores são arrays contendo os tipos de eventos associados a cada usuário.
Exemplo de Input:
$eventos = [
    ['user_id' => 'usuario123', 'tipo_evento' => 'disparo_pixel'],
    ['user_id' => 'usuario456', 'tipo_evento' => 'resposta_banner'],
    ['user_id' => 'usuario123', 'tipo_evento' => 'resposta_banner'],
    ['user_id' => 'usuario789', 'tipo_evento' => 'disparo_pixel'],
    ['user_id' => 'usuario456', 'tipo_evento' => 'disparo_pixel'],
];

Exemplo de Output Esperado:
[
    'usuario123' => ['disparo_pixel', 'resposta_banner'],
    'usuario456' => ['resposta_banner', 'disparo_pixel'],
    'usuario789' => ['disparo_pixel'],
]

Escreva a função em PHP que implementa essa lógica.
PHP e Bancos de Dados: Explique, em linhas gerais, como você implementaria em PHP a lógica para sincronizar os dados da tabela pixel_disparos do DynamoDB com a tabela pixel_disparos no PostgreSQL. Quais desafios você poderia encontrar e como os resolveria?
SQL (PostgreSQL): Escreva uma query SQL para PostgreSQL que retorne o número total de disparos de pixel para o creative_id igual a 10, realizados entre '2025-03-01' e '2025-03-27' (inclusive). Utilize a tabela pixel_disparos.
Conceitos de AWS e Lambda:
- Explique qual o benefício de utilizar um serviço Lambda para o disparo de pixels em comparação com manter essa lógica em um servidor tradicional.
- Quais métricas importantes você monitoraria no Lambda para garantir seu bom funcionamento e escalabilidade?
APIs REST (PHP): Ao desenvolver a API PHP para o frontend React, quais são as boas práticas que você seguiria em relação a:
- Estrutura das URLs?
- Métodos HTTP (GET, POST, etc.)?
- Tratamento de erros e status codes?
Performance e Escalabilidade: Pensando no alto volume de disparos de pixel, quais estratégias você consideraria para garantir a performance e a escalabilidade do sistema, tanto no lado do Lambda/DynamoDB quanto no lado do PHP/PostgreSQL?
Desafio Lógico: Utilizando as tabelas pixel_disparos e respostas_banner, descreva a lógica (em pseudocódigo ou SQL) para identificar os user_ids que possuem registros em ambas as tabelas.
O sistema está começando a registrar um aumento significativo no volume de disparos de pixel, e você percebe que as consultas ao PostgreSQL para gerar relatórios estão ficando mais lentas. Quais estratégias você consideraria para otimizar o desempenho das consultas e garantir que o sistema continue escalável para lidar com um volume ainda maior de dados? Mencione pelo menos duas abordagens diferentes, explicando seus benefícios e possíveis trade-offs.
Os usuários do painel administrativo estão relatando que, ocasionalmente, os dados dos relatórios não estão atualizados, mesmo após um tempo considerável desde a ocorrência dos eventos (disparos de pixel ou respostas ao banner). Considerando a arquitetura do sistema (Lambda -> DynamoDB -> PHP -> PostgreSQL -> React), descreva os possíveis pontos de falha que poderiam causar esse problema de sincronização e quais ferramentas ou técnicas você utilizaria para diagnosticar a causa raiz.