Globalcode – Open4education
Trilha – Golang
Tomás Foglio
Full Stack Dev - UOL
Globalcode – Open4education
Revolução Go
Revolução: Ato ou efeito de revolucionar(-se), de
realizar mudanças profundas ou radicais;
Globalcode – Open4education
2014 – Equipe
Desenvolvedor back end
Desenvolvedor front end
QA
Sys Admin
Globalcode – Open4education
2014 – Sistema
MySQL
Tomcat
http + html
Tomcat - REST
Consumidor
eventos
Puppet
Node Classifier
Globalcode – Open4education
Paralelo: Por que o código fica ruim?
https://talks.golang.org/2013/oscon-dl.slide#15
Globalcode – Open4education
Por que o código fica ruim?

Premissa: pessoas são boas

Premissa: um dia o código foi bom

o código tende para a complexidade (fica pior)

ambiente muda

escala muda
https://talks.golang.org/2013/oscon-dl.slide#16
Globalcode – Open4education
Por que o código fica ruim?

Sem manutenção o código vai piorando

Manutenções e adições localizadas são fáceis e rápidas,
mas péssimas globalmente

Funcionalidades, hacks e gambiarras adicionadas sem
documentação e testes

Mantenedores vem e vão

... ou só vão
https://talks.golang.org/2013/oscon-dl.slide#17
Globalcode – Open4education
Por que Go?
Performance
Um binário, fácil entrega em produção
O código é simples
The go way of doing things
Globalcode – Open4education
A Padronização do processo aumenta a velocidade
de entrega
gofmt, golint, go vet
Pacotes internos:
REST
Log
Estatística
DB
Config
Consul
Globalcode – Open4education
2016 – Equipe
Desenvolvedor
Globalcode – Open4education
2016 – Sistema
Automação
REST
Monitoração
REST
Timeseries
REST
Eventos
REST (Boltdb)
Processador
Eventos
MySQL CassandraSolr Elasticsearch
Node Classifier
Consul
Globalcode – Open4education
Obrigado!
Interessado em desenvolver em go?
job@uolhost.io

Revolução Go TDC 2016