Mais recentemente,
anunciamos o início do segundo concurso SAP Coder for Developers.
No ano passado, os vencedores foram os cônjuges Ilya e Tatyana Belozerova, que
desenvolveram um sistema de recomendações de vendas com base no histórico de compras do cliente.
Pedimos à Ilya que falasse sobre por que eles decidiram participar do SAP Encoder e como foi o trabalho no projeto.
-
Ilya, diga-me, como você teve a ideia de participar do concurso SAP Encoder?
- Antes do início da competição, por algum tempo eu quis fazer programação na web. Trabalho com a SAP há muito tempo, mas, ao mesmo tempo, não desenvolvi serviços de front-end. Quando recebi um link para a competição - e gostei dessa ideia, ela se tornou uma boa motivação para o aprendizado.
Em janeiro, comecei a ouvir teimosamente
cursos livres do OpenSAP , ler a documentação - mas sem resultado. Veja que, quando não há tarefa específica, todas as inovações são deixadas de lado na "caixa longa". Você fez um curso, aprendeu alguma coisa, pensou - mas não fez nada. E a competição é uma ótima oportunidade para realizar suas idéias. Portanto, decidi firmemente participar do SAP Encoder.
-
Há quanto tempo você desenvolve o SAP? Você seria capaz de participar sem essa experiência?
- Desenvolvo na SAP ABAP há mais de 10 anos. Mas é óbvio que a transição do ABAP para o desenvolvimento de aplicativos da web é muito relevante.
Depois de participar do SAP Encoder no ano passado, percebi que ter experiência com a SAP é completamente sem importância. Eu acho que os caras que estão envolvidos apenas no desenvolvimento da web podem resolver as tarefas mais rapidamente do que eu. A capacidade de trabalhar com bancos de dados foi mais útil e todo o resto teve que ser estudado de forma independente.
Na foto, os vencedores do concurso de 2017 Ilya e Tatyana Belozerov
-
Por que você escolheu a tarefa de vendas e recomendações?
- É simples: trabalho em uma empresa comercial, e a tarefa escolhida estava relacionada ao tema do comércio. Minha esposa é consultora de vendas e sou desenvolvedora. Portanto, era óbvio para nós que as recomendações de negociação automatizadas são realmente necessárias e úteis. Agora, estamos tentando introduzir algum tipo de sistema em nossa empresa para aumentar as vendas, e a ideia de recomendações de negociação, podemos dizer, estava no ar. Neste projeto, eu queria combinar negócios com prazer.
-
Foi difícil começar? Ainda assim, o desenvolvimento da web foi um novo tópico para você.
- Foi fácil pra mim. O fato é que a SAP tem muitos materiais educacionais - praticamente não havia tal coisa que caí em um estupor e não entendi onde encontrar uma dica. Todos os problemas que surgiram foram resolvidos. Mesmo momentos difíceis rapidamente se tornaram claros.
-
E quais eram exatamente as dificuldades?
- Por exemplo, com um módulo para avaliar e construir vários coeficientes. A SAP sugere usá-lo como uma biblioteca separada - podemos dizer que essa é uma "caixa preta". Você faz um pedido a ele - e ele retorna algum resultado. Pessoalmente, não gosto de caixas pretas - quem sabe como os valores são calculados lá e o que recebo no final. Portanto, comecei a usar outra opção - um módulo em scripts SQL (também disponível no SAP Cloud Platform). Ao usá-lo, fica claro o que está acontecendo no interior.
Para mim, trabalhar com scripts SQL era novo - tive que trabalhar duro para descobrir quais valores e funções são melhores para usar ao trabalhar com o módulo, o que e onde substituir, como tudo isso afeta o resultado. Houve também dificuldades na criação do aplicativo front-end, a interface do usuário - mas apenas porque eu não fiz isso antes.
Um pequeno desafio foi o carregamento de dados de teste: a SAP nos forneceu um arquivo enorme, pesado para a transferência através da interface da web. Eu queria fazer o download através do servidor de aplicativos, mas não havia espaço livre suficiente na versão de teste da plataforma em nuvem SAP HANA. O fato é que você pode começar a usar o SAP Cloud Platform gratuitamente, mas com espaço em disco limitado. Portanto, eu tive que fazer de maneira "desajeitada" - cortar o arquivo em pedaços e enviá-lo ao banco de dados em partes.
Também foi interessante saber que algo muda constantemente na estrutura SAPUI5 e é difícil encontrar documentação para novas versões. Então tive que ser perspicaz - consegui descobrir algo intuitivamente e esclareci outras coisas em diferentes fontes.
-
Quanto tempo levou para trabalhar em um projeto de protótipo?
- Tivemos cerca de 2 meses para tudo. Em abril, mergulhei completamente no treinamento: participei de cursos, mergulhei em um novo ambiente de desenvolvimento para mim, mas não fiz nada em termos de escrita de código. Ajudou muitas fontes. Encontrei muitas informações, tanto em russo quanto em inglês. Recursos OpenSAP, públicos em Habrahabr acabaram sendo úteis. No segundo mês, trabalhei intensamente e, como resultado, consegui terminar tudo rápido o suficiente.
-
Havia um desejo de desistir?
- Você sabe, em algum momento esse desejo realmente surgiu. Isso aconteceu em maio, quando as pessoas no trabalho começaram a sair de férias em massa, e eu tive que me envolver constantemente no desenvolvimento, seja no escritório depois do trabalho ou à noite em casa. Mas eu realmente queria terminar o que comecei, então superei essa fraqueza e terminei.
-
Se na primavera você já soubesse como tudo iria acontecer, você participaria?
- Sim, gostei muito dessa experiência. Eu participaria novamente, pois nem a organização nem as condições se decepcionaram. Tudo estava muito confortável, mas tive muita experiência e, sem dúvida, satisfação moral.
-
Você pode usar o que criou como parte da competição?
Eu acho que pode ser parcialmente usado. Mas inteiramente - dificilmente. Ainda assim, a tarefa foi escolhida especificamente para a competição. A essência da solução é um pouco utópica - dependendo do que o comprador coloca na cesta e também levando em consideração as compras de outras pessoas e as compras em outras lojas, o sistema fornece recomendações sobre outras ofertas. Este é um sistema de recomendação geral que permite levar em consideração a experiência de outras empresas, algum tipo de dados abertos ou compartilhados. Gostaria de propor a idéia de que mesmo uma nova loja que acabou de abrir também pode funcionar com recomendações.
Em princípio, estamos apenas discutindo o que pode ser feito em nossa empresa em relação às recomendações, por isso espero usar alguns elementos do projeto desenvolvido. Vamos oferecer à gerência certas idéias que podem ser aplicadas. Infelizmente, nem mudamos para o SAP HANA na empresa, sem mencionar o SAP Cloud Platform. Mas se eles são introduzidos ou eu me encontro em outra empresa, definitivamente, o protótipo criado pode ser útil. No entanto, a nova experiência em desenvolvimento web, além de trabalhar com a plataforma em nuvem SAP, me ajudou a expandir significativamente meus horizontes e, penso, a crescer profissionalmente.