Quem faz o Fred? – #2: Alfred R. Baudisch

alfred-fredbots

Continuando a série “Quem faz o Fred”, a segunda entrevista é com o Alfred Reinold Baudisch, paranaense de 31 anos, Co-fundador e CTO da Fred Tecnologia S/A – Fred Bots.

Ainda em 2015, ele desenvolveu um dos primeiros chatbots para o WhatsApp, que evoluiu para um ecossistema com múltiplas plataformas para construção e gerenciamento de robôs (bots), para todos os tipos e tamanhos de empresas, o Fred. Confira a entrevista a seguir.

Fale um pouco sobre você?

Meu nome é Alfred Reinold Baudisch e tenho 31 anos. Comecei a trabalhar aos 8 anos de idade: com os pequenos frutos desse trabalho, adquiri o “Curso IBM de Programação”, e comecei a programar ainda com 8 anos de idade. Aproximadamente naquela época, também já estava bastante engajado com Inglês, devido a jogos como Zelda e Final Fantasy. Assim, desde então já trabalhei com dezenas de linguagens de programação, frameworks e plataformas, nos mais diversos tipos de projetos de software, desde websites, softwares Desktop, APIs, aplicativos mobile até games e displays multimídia.

Até tentei 4 diferentes cursos de graduação, mas acabei não me formando em nenhum, por estar sempre engajado em novos projetos de software de forma autodidata e independente.

Nesse trajeto empreendi de diversas formas, em vários projetos, em especial um projeto de educação chamado “Cobra Legal”, ao qual eu palestrava em escolas, aniversários e empresas levando jibóias, com o intuito de elucidar mais as pessoas sobre esses animais tão importantes, mas tão cheios de mitos.

Em 2014 iniciei os trabalhos na minha startup Comidarama, um marketplace de pedidos de comida para o interior do Paraná. Acelerando a história, em 2015 com a estrutura criada para a Comidarama, criei uma porta de comunicação através de um bot utilizando uma API não oficial no WhatsApp, o que causou bastante barulho na mídia, gerando alta demanda, e assim levando a captar investimento anjo. Na época, devido a utilizar uma API não oficial e devido a alta demanda, os banimentos eram constantes por parte do WhatsApp, logo foi tomada a decisão de não mais ser apenas um bot WhatsApp, mas sim, um completo ecossistema com plataformas de transações e atendimento, levando ao Fred que temos hoje.

Em termos de hobbies e atividades, eu leio muito, medito e desenho (estou aprendendo :)) ou simplesmente passo o tempo com minha esposa e com meus cachorros. Se você me pegar “matando” tempo navegando na internet, provavelmente estarei lendo algum artigo ou assistindo cursos (Udemy, Udacity, Pluralsight e outros).

Como começou seu interesse por chatbots?

Sempre tive (e ainda tenho!) aversão por conversar ao telefone, assim minhas startups anteriores, incluindo a Comidarama, surgiram como uma forma de eliminar ligações para atividades repetitivas e sempre óbvias, como marcar consulta, pedir comida, etc. No rápido resumo que descrevi na pergunta anterior, em que eu pivotei a Comidarama de um app para um bot, foi quando tive o meu primeiro contato com um bot no sentido de “chatbot”. Na ocasião ainda não se falava em “chatbots”, logo acabei dando o nome de “Robô de Pedidos de Comida Fred”.

A partir dali as possibilidades apenas aumentaram e se tornaram muito mais mágicas, gerando uma relação de total amor por chatbots, devido as possibilidades de conversas de texto automatizadas para realizar transações comerciais, atendimentos, gerenciar processos e muito mais, virando assim, o Fred como é hoje – esse grande conjunto complexo de plataformas.

Em termos de relações profissionais e comerciais, chatbots pavimentam o caminho para o fim definitivo do telefone e de muitos aplicativos e sites (e até mesmo, do papel, por exemplo, por que enviar um recibo impresso, se ele pode ser enviado como um arquivo numa conversa?)!

Comparado aos softwares tradicionais quais as principais diferenças que você vê em trabalhar com bots?

Primeiramente, para facilitar, vamos criar uma pequena diferenciação de termos, de forma bem simplista: entenda “bot” como aquilo que está por “trás dos panos” e “chatbot” aquilo que está disponível para o usuário num aplicativo de mensagens de texto. O “chatbot” é a interface do usuário final para o “bot” executar as mais diversas tarefas e processos.

Bots são softwares como quaisquer outros, logo a complexidade e a estrutura de desenvolvimento são praticamente as mesmas. A diferença está em como você planeja e estrutura a interface com o usuário (o desenho do chatbot) e em como você conecta os fluxos de transformação de dados (os bots). No final das contas, os bots nada mais são que fluxos de transformação e gerenciamento de dados, com um ou mais objetivos bem definidos e estritamente relacionados, que mantém (opcionalmente) o contexto do usuário.

Soa familiar? Você pode dizer o mesmo de um aplicativo de banco ou de transporte, como o Uber, por exemplo. Assim, não enxerge bots e chatbots como um bicho de sete cabeças, no final das contas, o que muda é apenas a porta de entrada. E é essa porta de entrada que faz toda a diferença, que torna os chatbots tão interessantes: não é necessário baixar nenhum novo aplicativo, não é necessário criar novos cadastros, não é necessário passar por uma curva de aprendizado para entender uma nova interface. Você tem, em um mesmo lugar (aplicativo de mensagem), utilizando a mesma interface e o mesmo formato (mensagens de texto), acesso a todos os tipos de empresas, serviços e necessidades. Além disso, devido aos testes de desenvolvimento serem baseados em fluxos, e não em interfaces visuais, para uma empresa que queira lançar o chatbot, os custos são menores, e o tempo de desenvolvimento ainda menor.

Na área que você atua quais são as suas maiores dificuldades e o que você tem feito para superá-las?

Como Engenheiro de Software e Programador, sou seduzido todos os dias com novas tecnologias e novos padrões, basicamente uma enxurrada de novos brinquedos brilhantes tentando me convencer que o que utilizo atualmente é “coisa do passado” e que se eu não experimentar esse ou aquele novo brinquedinho eu ficarei para trás. Todo programador passa por isso.

De um lado é benéfico, pois você abre portas para novas oportunidades. Eu mesmo, em mais de 20 anos de carreira, nunca passei um dia sequer sem trabalho ou sem projetos, por estar sempre atualizado, e de forma RÁPIDA, conseguindo assim, todo tipo de projeto. De outro lado, pode ser prejudicial, desviando o foco de projetos atuais, que por sua vez, pode levar ao desinteresse naquilo do que está em andamento. O objetivo é encontrar um equilibrio entre estudar tecnologias novas, sem enxergar o que você faz atualmente como “antiquado” ou entediante, devido ao novo brinquedinho que parece muito mais legal.

Como Empreendedor e atual gestor do Fred, e por o Fred ainda ser uma empresa pequena, eu ainda tenho atribuições em todas as camadas do projeto. Logo, a dificuldade é conseguir conciliar a complexidade que o Fred é como tecnologia, com todas as demais áreas e necessidades que compõem uma startup, e dividir minhas tarefas nas 24 horas que compõem um dia. Note que startup é uma empresa como outra qualquer, mas com uma pressão infinitamente maior devido à velocidade das mudanças no mercado. Em um dia você é o único a ter a solução e está no topo da cadeia alimentar, e poucos dias depois você pode se tornar irrelevante.

Como lidar com isso? Não tem segredo: eu medito todos os dias, com o objetivo de refletir sobre o que é importante, encontrar soluções e ajudar no próximo item de foco. A partir disso, é só trabalhar. O segredo é que não tem segredo: estudar e aprender algo novo constantemente e trabalhar de 10 a 16 horas por dia.

Como você se organiza para executar as suas tarefas diárias?

Quebra de tarefas no TeamworkPM, mas principalmente, repasso o pensamento a todo instante no Evernote e em anotações com papel e caneta. Antes de sair do escritório sempre deixo anotadas as prioridades do dia seguinte, caso contrário, pode levar bastante tempo para entrar no foco, até encontrar o próximo passo.

Quais programas são as suas ferramentas de trabalho?

Em dias de desenvolvimento, passo a maior parte do tempo no editor de texto Atom, devido a programação Elixir (o Fred está quase alcançando 100 mil linhas de código Elixir!). Quando não estou desenvolvendo, provavelmente estou respondendo emails no Thunderbird e redigindo documentos e planilhas no OpenOffice.

  • Desenvolvimento: Atom e PhpStorm.
  • Produtividade em Geral: Evernote, Dropbox e OpenOffice.
  • Git: BitBucket, SmartGit, Source Tree.
  • Comunicação: Slack, Thunderbird e Telegram.
  • Gerenciamento de Projetos e Tarefas: TeamworkPM.
  • Alterno entre Ubuntu, Windows 10 e OS X, dependendo da necessidade.

Para aqueles que pretendem trabalhar na sua área quais conselhos você daria?

Pode parecer simplista ou até clichê, mas como qualquer área, tudo se resume a estudar e praticar. A diferença que essa área é muito mais flexível que qualquer outra! É a única que você pode iniciar de forma imediata, independentemente da sua idade, sem formação ou não, bastando apenas a vontade de aprender.

Em termos mais práticos, um pequeno passo a passo:

  1. Comece pequeno, defina um objetivo: qual o primeiro projeto que você quer desenvolver? Por exemplo: um game, um aplicativo mobile, uma API, etc.?
  2. Decidido o tipo de projeto, escolha um projeto popular da mesma categoria, explore-o e descreva cada detalhe que você encontrar (pode descrever com papel e caneta mesmo). Por exemplo, caso você queira aprender a desenvolver aplicativos mobile, escolha um aplicativo popular, como o Instagram. Explore o Instagram, descrevendo tudo que você encontrar.
  3. Procure em todos os cantos materiais relacionados ao assunto escolhido: livros físicos e ebooks, tutoriais, artigos, palestras, vídeos no YouTube, cursos (Udemy, Udacity, Pluralsight, Lynda, Treehouse). Junte esse material todo.
  4. Avalie todo esse material de forma rápida e identifique palavras chaves e dicas: folheie os livros, visualize rapidamente os artigos, assista os vídeos de forma bastante acelerada (por exemplo, 3x).
  5. Crie um mapa mental ou pequenos recortes de tudo que você identificou – antes mesmo de se aprofundar. Recomendo o Evernote para esse propósito.
  6. Procure projetos open source (“código aberto”) similares ao que você busca.
  7. A partir de agora, inicie o estudo aprofundado, com base no que você anotou e recortou. Quando explorar os conceitos fundamentais, explore os projetos open source, tentando entender o que cada linha faz, como cada arquivo e módulo se conecta, e assim sucessivamente.
  8. Crie um clone do projeto que você escolheu no passo 2! O intuito do clone é desenvolver um projeto funcional para aprendizado, não objetivando a publicação para o público final. Depois disso, você se sentirá confortável para desenvolver quaisquer outros projetos.

Com essa combinação de fontes de conteúdo, mapas e recortes, e estudos de implementações existentes, você poderá facilmente dominar qualquer linguagem de programação e plataforma.

Note que em nenhum momento foi citada a necessidade de uma formação superior para trabalhar na área – tudo depende da sua vontade e dedicação no aprendizado! Agora, dependendo do seu foco de interesse, a formação pode ser necessária :).

GOSTOU DO CONTEÚDO?
Receba nosso conteúdo semanalmente por email!
Odiamos SPAM! Seu email nunca será compartilhado.