Texto de pré-visualização
1 Manga rosa inc Departamento de Recursos Humanos Praça Castro Alves 5 Centro Salvador BA 40026004 Olá trainee Seja bemvindao ao nosso programa de trainee Manga Rosa 20242 A seleção até aqui foi bem árdua mas você pode ficar calmao pois você já está dentro do programa Neste semestre asos nossasos trainees vão ser capacitadasos em resoluções de problemas computacionais O nosso objetivo durante esses próximos meses é mensurar se vocês conseguem identificar classes de problemas propor soluções para elas e avaliar quais soluções apresentam o melhor resultado Então preparadasos Vamos nessa Como vocês sabem nós somos uma das maiores entregadoras do norte e nordeste A nossa missão é entregar qualquer coisa a qualquer hora e em qualquer lugar Nós temos um modelo híbrido de gestão e operação sendo algumas atividades centralizadas na empresa e outras de responsabilidades de nossasos parceirasos Por exemplo todos os pedidos de entrega são processados pela nossa plataforma porém elas podem ser efetivadas pela própria manga rosa quanto por outras empresas ou pessoas físicas O núcleo do nosso negócio está concentrado em nossa plataforma Deste modo nós somos classificadas como uma empresa tech da área de logística Neste semestre vocês serão inseridasos no core business da nossa empresa Como uma entregadora nós temos vários seguimentos de atuação tais como transportadora delivery de comida e pacotes tanto para pessoas físicas quanto jurídicas delivery de laboratórios clínicas e hospitais dentre outros O nosso papel é entregar a encomenda ou o pedido o mais rápido e com a melhor qualidade possível Mas fiquem calmas os vamos inserilasos aos poucos nesse processo Eu vou apresentar a vocês o primeiro desafio de quatro que teremos daqui em diante Por favor atentese as condições que serão impostas nesse desafio Nós vamos te encorajar a pesquisar codificar e avaliar suas próprias decisões Contudo é fundamental a honestidade e transparência nesse processo Se você usar uma solução que não é sua e não a referenciar você não obterá nota neste desafio A propriedade intelectual é importantíssima então nós não vamos considerar cópias de códigos ou soluções sem as devidas referências pois a empresa pode ser processada por uso indevido de material 2 intelectual Dois dos principais valores da nossa empresa são transparência e honestidade Sendo assim neste primeiro desafio nós temos dois objetivos claros perceber se você se encaixa com os valores da empresa e o seu senso crítico Desafio A Manga Rosa processa milhares de pedidos todos os dias em diversos setores Nós entregamos a sua comida as amostras laboratoriais dos seus exames assim como o produtinho do seu marketplace favorito Claro que isso nos gera um volume de pedidos gigantesco e apesar de termos uma infraestrutura robusta nós nunca teríamos recursos suficientes para processar todas as requisições de modo síncrono Deste modo nós utilizamos soluções que simulem uma fila de atendimento Os nossos serviços internos trabalham enviando mensagens uns para os outros As mensagens são adicionadas em filas que organizam a espera do processamento Uma mensagem é sempre produzida por algum serviço e consumido por outros Sim uma mesma mensagem pode ser consumida por diferentes serviços que processam as solicitações de diversos modos As mensagens são criadas em um determinado momento e consumidas em outro As mensagens sempre são JSON strings A Manga Rosa pode ser considerada como uma empresa Maker Nós gostamos de desenvolver soluções personalizadas para vários dos nossos problemas E sim nós desenvolvemos o nosso próprio framework de mensageria O Manga Rosa Message Broker é uma solução interna que tem o objetivo de possibilitar que os nossos serviços aplicações se comuniquem e troquem mensagens Um message broker ou message queue facilita a comunicação entre vários componentes e sistemas distribuídos que podem ser implementados em linguagens diferentes com tecnologias diferentes mas que conseguem comunicarse entre si utilizando padrões de comunicação conhecidos tais como o HTTP As aplicações que consumem os nossos serviços são consideradas produtoras de mensagenseventos Por exemplo o foodDelivery utiliza o nosso serviço para localizar os entregadores dos seus pedidos A AnyWhere utiliza os serviços da Manga Rosa em vários seguimentos serviços de translado serviço de transporte executivo serviços de envio de encomendas entre unidades Além dos nossos próprios serviços é claro Então como processar esse volume de mensagens Colocandoas em uma fila e dando um tempo para que os consumidores ou interessados processem as mensagens O ideal é que uma mensagem não fique mais que 5 minutos na fila para processamento Após esse tempo as mensagens devem ser descartadas 3 No lugar de você ser apenas umaum usuáriao do nosso framework nós vamos lhe dar a oportunidade de implementálo e conhecer um pouco mais da mecânica desse tipo de serviço O seu objetivo principal neste projeto está concentrado no uso de um banco de dados não relacional chavevalor como um message broker Nós vamos te dar uma estrutura básica de código em java na qual você deve implementar o seu projeto Produto Nós queremos que você implemente uma solução simples de messagebroker utilizando Filas e a linguagem de programação java 1 A solução deve ser implementada obrigatoriamente em linguagem de programação Java 2 Você deve obrigatoriamente implementar a interface Queue disponibilizada no pacote de brcommangarosadatastructuresinterfaces 3 A implementação da interface deve ser adicionada no pacote brcommangarosadatastructuresinterfacesimpl numa classe com o nome LinkedQueue 4 A fila precisa ser implementada utilizando como nó objetos da classe QueueNode 5 Você deve implementar o método isExperied da classe Message 6 A sua solução deve realizar a persistência de mensagens enviadas para um tópico implementando a interface brcommangarosainterfacesMessageRepository Disponível em httpsgithubcomunexlasilvamangarosamessagequeue 7 Você deve submeter o seu código para o repositório do item 6 numa nova branch com o seguinte padrão de nome primeiroprojeto1seunomecompleto separadoporhífen ex primeiroprojeto1lucasalmeidasilva Se você ainda não tem permissão para submeter o código por favor solicitar ao professor através do Formulário de Solicitação de Acesso 8 Você deve considerar o tempo de expiração das mensagens o tempo especificado no desafio 9 Você deve implementar dois tópicos chamados queuefastdeliveryitems e queuelongdistanceitems 10 Você deve implementar dois produtores para o tópico queuefastdeliveryitems são eles FoodDeliveryProducer e PhysicPersonDeliveryProducer 11 Você deve implementar dois produtores para o tópico queuelongdistance items são eles PyMarketPlaceProducer FastDeliveryProducer 12 Você deve implementar pelo menos um consumer para cada tópico 13 O seu código deve ser legível e documentado 4 No dia 0410 às 2359 irei disponibilizar um teste considerando todos os aspectos relatados acima Pontuação Descrição Pontuação 1 Solução do Message Broker 20 pontos Prazo de entrega Descrição Pontuação 1 Solução do Message Broker 07102024 até 2359 2 Prazo máximo com compras de atrasos 25 moedas por dia 10102024 até 2359 Atenciosamente Lucas Almeida Silva
Texto de pré-visualização
1 Manga rosa inc Departamento de Recursos Humanos Praça Castro Alves 5 Centro Salvador BA 40026004 Olá trainee Seja bemvindao ao nosso programa de trainee Manga Rosa 20242 A seleção até aqui foi bem árdua mas você pode ficar calmao pois você já está dentro do programa Neste semestre asos nossasos trainees vão ser capacitadasos em resoluções de problemas computacionais O nosso objetivo durante esses próximos meses é mensurar se vocês conseguem identificar classes de problemas propor soluções para elas e avaliar quais soluções apresentam o melhor resultado Então preparadasos Vamos nessa Como vocês sabem nós somos uma das maiores entregadoras do norte e nordeste A nossa missão é entregar qualquer coisa a qualquer hora e em qualquer lugar Nós temos um modelo híbrido de gestão e operação sendo algumas atividades centralizadas na empresa e outras de responsabilidades de nossasos parceirasos Por exemplo todos os pedidos de entrega são processados pela nossa plataforma porém elas podem ser efetivadas pela própria manga rosa quanto por outras empresas ou pessoas físicas O núcleo do nosso negócio está concentrado em nossa plataforma Deste modo nós somos classificadas como uma empresa tech da área de logística Neste semestre vocês serão inseridasos no core business da nossa empresa Como uma entregadora nós temos vários seguimentos de atuação tais como transportadora delivery de comida e pacotes tanto para pessoas físicas quanto jurídicas delivery de laboratórios clínicas e hospitais dentre outros O nosso papel é entregar a encomenda ou o pedido o mais rápido e com a melhor qualidade possível Mas fiquem calmas os vamos inserilasos aos poucos nesse processo Eu vou apresentar a vocês o primeiro desafio de quatro que teremos daqui em diante Por favor atentese as condições que serão impostas nesse desafio Nós vamos te encorajar a pesquisar codificar e avaliar suas próprias decisões Contudo é fundamental a honestidade e transparência nesse processo Se você usar uma solução que não é sua e não a referenciar você não obterá nota neste desafio A propriedade intelectual é importantíssima então nós não vamos considerar cópias de códigos ou soluções sem as devidas referências pois a empresa pode ser processada por uso indevido de material 2 intelectual Dois dos principais valores da nossa empresa são transparência e honestidade Sendo assim neste primeiro desafio nós temos dois objetivos claros perceber se você se encaixa com os valores da empresa e o seu senso crítico Desafio A Manga Rosa processa milhares de pedidos todos os dias em diversos setores Nós entregamos a sua comida as amostras laboratoriais dos seus exames assim como o produtinho do seu marketplace favorito Claro que isso nos gera um volume de pedidos gigantesco e apesar de termos uma infraestrutura robusta nós nunca teríamos recursos suficientes para processar todas as requisições de modo síncrono Deste modo nós utilizamos soluções que simulem uma fila de atendimento Os nossos serviços internos trabalham enviando mensagens uns para os outros As mensagens são adicionadas em filas que organizam a espera do processamento Uma mensagem é sempre produzida por algum serviço e consumido por outros Sim uma mesma mensagem pode ser consumida por diferentes serviços que processam as solicitações de diversos modos As mensagens são criadas em um determinado momento e consumidas em outro As mensagens sempre são JSON strings A Manga Rosa pode ser considerada como uma empresa Maker Nós gostamos de desenvolver soluções personalizadas para vários dos nossos problemas E sim nós desenvolvemos o nosso próprio framework de mensageria O Manga Rosa Message Broker é uma solução interna que tem o objetivo de possibilitar que os nossos serviços aplicações se comuniquem e troquem mensagens Um message broker ou message queue facilita a comunicação entre vários componentes e sistemas distribuídos que podem ser implementados em linguagens diferentes com tecnologias diferentes mas que conseguem comunicarse entre si utilizando padrões de comunicação conhecidos tais como o HTTP As aplicações que consumem os nossos serviços são consideradas produtoras de mensagenseventos Por exemplo o foodDelivery utiliza o nosso serviço para localizar os entregadores dos seus pedidos A AnyWhere utiliza os serviços da Manga Rosa em vários seguimentos serviços de translado serviço de transporte executivo serviços de envio de encomendas entre unidades Além dos nossos próprios serviços é claro Então como processar esse volume de mensagens Colocandoas em uma fila e dando um tempo para que os consumidores ou interessados processem as mensagens O ideal é que uma mensagem não fique mais que 5 minutos na fila para processamento Após esse tempo as mensagens devem ser descartadas 3 No lugar de você ser apenas umaum usuáriao do nosso framework nós vamos lhe dar a oportunidade de implementálo e conhecer um pouco mais da mecânica desse tipo de serviço O seu objetivo principal neste projeto está concentrado no uso de um banco de dados não relacional chavevalor como um message broker Nós vamos te dar uma estrutura básica de código em java na qual você deve implementar o seu projeto Produto Nós queremos que você implemente uma solução simples de messagebroker utilizando Filas e a linguagem de programação java 1 A solução deve ser implementada obrigatoriamente em linguagem de programação Java 2 Você deve obrigatoriamente implementar a interface Queue disponibilizada no pacote de brcommangarosadatastructuresinterfaces 3 A implementação da interface deve ser adicionada no pacote brcommangarosadatastructuresinterfacesimpl numa classe com o nome LinkedQueue 4 A fila precisa ser implementada utilizando como nó objetos da classe QueueNode 5 Você deve implementar o método isExperied da classe Message 6 A sua solução deve realizar a persistência de mensagens enviadas para um tópico implementando a interface brcommangarosainterfacesMessageRepository Disponível em httpsgithubcomunexlasilvamangarosamessagequeue 7 Você deve submeter o seu código para o repositório do item 6 numa nova branch com o seguinte padrão de nome primeiroprojeto1seunomecompleto separadoporhífen ex primeiroprojeto1lucasalmeidasilva Se você ainda não tem permissão para submeter o código por favor solicitar ao professor através do Formulário de Solicitação de Acesso 8 Você deve considerar o tempo de expiração das mensagens o tempo especificado no desafio 9 Você deve implementar dois tópicos chamados queuefastdeliveryitems e queuelongdistanceitems 10 Você deve implementar dois produtores para o tópico queuefastdeliveryitems são eles FoodDeliveryProducer e PhysicPersonDeliveryProducer 11 Você deve implementar dois produtores para o tópico queuelongdistance items são eles PyMarketPlaceProducer FastDeliveryProducer 12 Você deve implementar pelo menos um consumer para cada tópico 13 O seu código deve ser legível e documentado 4 No dia 0410 às 2359 irei disponibilizar um teste considerando todos os aspectos relatados acima Pontuação Descrição Pontuação 1 Solução do Message Broker 20 pontos Prazo de entrega Descrição Pontuação 1 Solução do Message Broker 07102024 até 2359 2 Prazo máximo com compras de atrasos 25 moedas por dia 10102024 até 2359 Atenciosamente Lucas Almeida Silva