Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

54
brunorocha.org Data Developer Trabalhando com Data Science não sendo um cientista!

Transcript of Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

Page 1: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Data DeveloperTrabalhando com Data Science

não sendo um cientista!

Page 2: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

DATA MINING

MACHINE LEARNING

DATA MATCHING

BIG DATA

RECOMMENDATION

NLP

REST APITEXT PARSING

Page 3: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Data ScienceUai, que trem é esse?

Page 4: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

A lenda da fralda e da cerveja

Page 5: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Um funcionário do WalMart notou que a venda de fraldas descartáveis estava associada à de cerveja.

Ele notou que os compradores homens, que saíam à noite para comprar fraldas, aproveitavam para levar algumas latinhas para casa.

Ele sugeriu que os produtos fossem postos lado a lado. Resultado: a venda de cervejas disparou durante as noites.

Page 6: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Um funcionário do WalMart notou…

- Não escala- Não distribui- Não tem precisão- ...

Page 7: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Business Inteligence

Processo de coleta, organização, análise, compartilhamento e monitoramento de informações que oferecem suporte a gestão de negócios. É o conjunto de teorias, metodologias, processos, estruturas e tecnologias que transformam uma grande quantidade de dados brutos em informação útil.

Page 8: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Business Inteligence

Processo de coleta, organização, análise, compartilhamento e monitoramento de informações que oferecem suporte a gestão de negócios. É o conjunto de teorias, metodologias, processos, estruturas e tecnologias que transformam uma grande quantidade de dados brutos em informação útil.

- Passivo- Manual (Dependente do Analista)

Page 9: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Business Inteligence

Processo de coleta, organização, análise, compartilhamento e monitoramento de informações que oferecem suporte a gestão de negócios. É o conjunto de teorias, metodologias, processos, estruturas e tecnologias que transformam uma grande quantidade de dados brutos em informação útil.

- Passivo- Manual (Dependente do Analista)

Page 10: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Business Inteligence

Processo de coleta, organização, análise, compartilhamento e monitoramento de informações que oferecem suporte a gestão de negócios. É o conjunto de teorias, metodologias, processos, estruturas e tecnologias que transformam uma grande quantidade de dados brutos em informação útil.

- Passivo- Manual (Dependente do Analista)- Muito útil e relevante mas não

resolve todos os problemas

- Crawling- Mining- Parsing- APIs- Notebooks- Algoritmos- ML- Linguagens- BigData

Page 11: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

SupermercadoEntrada A Entrada B

Page 12: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

SupermercadoEntrada A Entrada B

Page 13: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

SupermercadoEntrada A Entrada B

Page 14: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

SupermercadoEntrada A Entrada B

Page 15: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

SupermercadoEntrada A

Grande quantidade de sinais a serem analisados.

- Local do produto- Local da entrada- Tamanho do carrinho

- Local das prateleiras- Iluminação- Embalagens- Preços- Ordem de compra- Horário da compra- Sexo do comprador- Idade do comprador- Duração da compra- ...

Entrada B

Page 16: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

SupermercadoEntrada A

Features e sinais:

- Local do produto- Local da entrada- Tamanho do carrinho

- Local das prateleiras- Iluminação- Embalagens- Preços- Ordem de compra- Horário da compra- Sexo do comprador- Idade do comprador- Duração da compra- ...

Entrada B

Page 17: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Data Science é sobre encontrar, classificar e correlacionar padrões em um conjunto de dados e utilizar essas análises de dados para:

- Business Inteligence- Monitoramento- Análises preditivas- Recomendações- Detecção de novas combinações e novos padrões- Dominar o mundo- Acabar com a fome mundial- Curar doenças- ...

Page 18: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Data Science is not always evil

Bio Medical Data Science Initiative http://med.stanford.edu/bdsi.html

- Triagem médica- Correlação entre exames - Recomendação de tratamentos- Detecção e predição de epidêmias- Otimização da fabricação de medicamentos e equipamentos- Diminuição/Abolição de testes em animais- Gerenciamento de desastres- Diagnóstico inteligente- Monitoramento e preservação ambiental- Recomendar filmes legais no NetFlix- Recomendar a próxima empresa em que você pode trabalhar!

Page 19: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Aprendizado de Máquina e Inteligência Artificial e Big DataO problema do Big Data (quando os dados são grandes demais em volume, ou complexos demais em correlações que seria inviavél analisar em tempo hábil sem o uso de IA e computação distribuida)

Em um único conjunto de dados existem muitos padrões a serem identificados e conforme os dados se alteram novos padrões são criados, sendo assim inviável seres humanos fazerem todo o trabalho de classificação.

Para isso algoritmos são "treinados" através de exemplos e aprendem a tomar decisões autonomamente, esses "organismos" dotados de inteligência artificial precisam de um cientista de dados para treinar, monitorar e avaliar o desempenho e confiabilidade.

The Machine is Learning

Page 20: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

"Dadólogo"Ciência dos dados

Aprendizado de Máquina e Inteligência Artificial e Big DataO problema do Big Data (quando os dados são grandes demais em volume, ou complexos demais em correlações que seria inviavél analisar em tempo hábil sem o uso de IA e computação distribuida)

Em um único conjunto de dados existem muitos padrões a serem identificados e conforme os dados se alteram novos padrões são criados, sendo assim inviável seres humanos fazerem todo o trabalho de classificação.

Para isso algoritmos são "treinados" através de exemplos e aprendem a tomar decisões autonomamente, esses "organismos" dotados de inteligência artificial precisam de um cientista de dados para treinar, monitorar e avaliar o desempenho e confiabilidade.

The Machine is LearningBiólogoCiência da Vida

=

Page 21: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

"Dadólogo"Ciência dos dados

Dadólogo é um termo feio, mas soa melhor do que "cientista de dados", não??

Ou você já viu um "podólogo" ser chamado de cientista de pés?

Page 22: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

O Data ScientistIn god we trust: All others bring data!

● Profissional cientista das áreas de estatística, matemática, fisica, computação.● Conhecimentos teóricos avançados e boa desenvoltura prática em computação.● Mestre das estruturas de dados.● A profissão mais sexy do século! https://hbr.org/2012/10/data-scientist-the-

sexiest-job-of-the-21st-century/ ● Salários na média entre 10k e 20k no Brasil (2015) - $120k a $200k/year U.S.A

(2015).● Requisitado em todas as industrias de Startups a MultiNacionais.● Sobram vagas e faltam profissionais qualificados e interessados.

Page 23: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

O quê que o Python tem a ver com isso?

Page 24: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Other languages in Data Science- R- Julia- Scala- Java- Lua/Torch- Matlab- Go- ...

Page 25: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

So…

Why Python?UAI

Page 26: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Page 27: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Python pode ser usada em todas as etapas do trabalho, desde a captura de dados até a apresentação das análises!

Page 28: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Coletar:

Armazenar:

Apresentar:

Automatizar, escalar, distribuir:

SQL*

Agregar, Consultar e Analisar:

NLP NER

Page 29: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

O Dilema do Full Stack Developer

O desenvolvedor supermanque "em teoria" resolve todos os problemas end-to-end mas ninguém sabe quando ele vai sair voando ou se vai morrer no final.

Page 30: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

O Dilema do Ben 10 Developer

OU

Que se transforma em mais de 10 monstros para tentar resolver problemas mas acaba tendo crises de identidade durante o projeto.

Page 31: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

X

Trabaia pa carai…. ou …. ficá di boa?

ou melhor! Contar com ajuda para fazer as duas coisas!

Page 32: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

- Devops (infra, provisionamento, monitoramento, escalabilidade, cloud)- Engenharia e Arquitetura- Web, APIs e integrações- Project Leadership- Data Mining- Database Administration- P & D- Data Science Algorithms- Fazer café- Atender telefone- Vender- …- candidatos??

Page 33: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

O Homer Simpsom Developer

Doh… achei que seria mais fácil e que eu ia dar conta de entregar tudo em X dias….

O que eu faço agora? qual banco de dados eu uso? qual linguagem é melhor? VI ou Emacs???

Page 34: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Multitask nunca funciona para o desenvolvedor de software ou para o Cientista de Dados!

Melhor manter o foco e priorizar a qualidade de vida!

Page 35: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Dia de trabalho para o cientista de dados = 8hrs (ou menos)

Estudo Pesquisa ExperimentosData Mining

Qualidade de vida importa!!!

Page 36: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Dia de trabalho para o cientista de dados = 8hrs (ou menos)

Estudo Pesquisa ExperimentosData Mining

Qualidade de vida importa!!!

Engenharia DevOps Project Leadership

Web APIs Testes Automação …..

Page 37: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Page 38: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Especialização é bom para todos!!!

- Foco = Qualidade- Tempo livre = qualidade de vida- Melhora o mercado de trabalho- Evita retenção de know how

Page 39: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Formação do time de Data ScienceAtenção: Contém slides gentilmente roubados do http://pt.slideshare.net/rodsenra

Page 40: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Page 41: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Page 42: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

DevOps

Page 43: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

DevOps

Page 44: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

O Engenheiro de Dados

Page 45: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Page 46: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

SUPERVISORDIPTABLESCRONTMUXNGINXGUNICORN uWSGI

Domine O Sistema Operacional

Page 47: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Cloud / PaaS

Page 48: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Persistência Poliglota

Page 49: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

AUTOMAÇÃO, PROVISIONAMENTO, DEPLOY

Page 50: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

WEB DEVELOPMENT and REST API

Page 51: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Engenharia de Software- Design Patterns- Boas práticas (PEP-8, MCCABE)- Testes e CI- Mineração de dados

- Crawling, Parsing (bs, regex, etc..)- VCS- Modularização, Empacotamento- Documentação

Page 52: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org

Page 53: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org http://guidetodatamining.com/

Page 54: Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015

brunorocha.org