APIs e Microsserviços

14 abr, 2016

O que aconteceu no API Day: APIs no meio corporativo, seu uso no contato com o consumidor e questões de segurança

Publicidade

No dia 31 de abril aconteceu o API Day, promovido pela CA Technologies. O evento contou com a presença de Mike Amundsen, diretor de arquitetura da API Academy, e Denyson Machado, diretor da área de segurança da CA Technologies para a América Latina. Ambos falaram a respeito de APIs no meio corporativo, da utilização delas no contato com o consumidor e sobre a questão de segurança na utilização de APIs.

Durante sua palestra, Mike comentou sobre as APIs no mundo dos negócios. Levando-se em consideração como as APIs se comunicarão com as interfaces futuramente, o que vai permitir uma maior abertura do front end e melhorar a experiência dos usuários, Mike afirmou que elas permitem a criação de novas interfaces e a aquisição de novas informações, o que, por sua vez, confere uma vantagem às empresas.

Em relação a modularização e micro-serviços, Mike salientou a importância de fazer uma modularização correta. Para isso, é necessário ter um conhecimento pleno do seu domínio, focar nos costumes da companhia e, assim, ter o conhecimento de até quando você deve diminuir ou modularizar os seus serviços. Com um sistema bem construído, os micro-serviços permitem alinhar a companhia com o time e a arquitetura da solução.

Porém, para que tudo isso ocorra com sucesso, voltamos ao início da palestra: a importância da comunicação dentro da empresa. Mike baseou esses últimos tópicos nas leis de Conway. Segundo essas leis, as organizações que desenvolvem sistemas de software tendem a produzir sistemas que são cópias das estruturas organizacionais da própria empresa.

Tendo esse preceito como base, podemos entender por que a organização da empresa e o alinhamento da cultura são importantes. De acordo com esses especialistas, a organização do time é capaz de reduzir o número de bugs do sistema. E por que isso ocorre? Porque o tamanho do time define como é a comunicação entre os membros. Times menores trabalham mais rápido, entregam mais rápido e aprendem mais rápido, melhorando assim a qualidade do produto final. De acordo com Mike, o tamanho do time ideal é aquele do tipo Pizza Team, ou seja, uma equipe pequena o suficiente para dividir uma pizza em uma mesa. Essa mesma equipe também é capaz de conversar a qualquer momento do dia e resolver um problema.

Outra maneira de melhorar a arquitetura da equipe é organizar os times por produtos e promover uma entrega contínua, a fim de mitigar os efeitos indesejados da má comunicação entre empresa e cliente. Esse tipo de prática promove o empoderamento do time, fazendo com que ele assuma as responsabilidades pelos produtos criados.

Esses preceitos são facilmente observáveis em empresas que trabalham com a metodologia ágil de desenvolvimento. Pode parecer uma coincidência, mas se você fizer uma busca na Internet, ou se você trabalha com este tipo de metodologia, conseguirá observar que muitas empresas que trabalham com essa metodologia empregam as leis de Conway de alguma maneira.

Mas o que toda essa comunicação e estrutura organizacional têm a ver com APIs? Absolutamente tudo, visto que a API é o meio de comunicação entre diversos códigos, interfaces e objetos. Para que você consiga desenvolver uma API de maneira adequada e com menos bugs, você precisa olhar para dentro da organização e da cultura da sua empresa.

Entretanto, toda essa comunicação gera muitos riscos de segurança, principalmente neste novo cenário que se desenha, o de IOT. Quando confrontamos Mike e Denyson a respeito disso, eles foram bem contundentes ao dizer que concordam com essa preocupação, e afirmaram que o mercado de APIs está muito alinhado com a segurança exigida no novo cenário.

Visando à segurança das APIs, a CA desenvolveu um concentrador que eles chamam de gateway, que aplica esse processo de governança das políticas sem a necessidade do código.

De acordo com Denyson, a segurança deve trabalhar de forma separada das APIs. Segundo ele, o grupo de segurança não deve ser formado por desenvolvedores, mas, sim, por pessoas especializadas em segurança da informação. Esse grupo deve desenvolver as políticas de segurança com as quais os desenvolvedores devem estar alinhados, permitindo, assim, uma melhor qualidade no produto. Esse tipo de arquitetura também permite a reutilização das APIs e a diminuição do retrabalho.

Para finalizar, conversamos com os palestrantes a respeito da comunidade. Neste ponto, ambos também enalteceram o valor das comunidades para a disseminação da cultura e de boas práticas de codificação dentro das empresas. Os palestrantes acreditam, por exemplo, que a utilização de hackatons internos são capazes de unir melhor os times, e melhorar a qualidades dos produtos desenvolvidos. Além disso, acreditam ser de extrema importância trazer a comunidade para dentro da empresa, porque defendem que este é um público influenciador e, assim sendo, de grande valor para o desenvolvimento da empresa, da cultura e da qualidade do produto.