Iniciativas em Big Data no 
VAGAS.com 
Fabrício J. Barth 
Data e Depto
Sumário 
• VAGAS.com 
• Big Data 
• Iniciativas de Big Data na VAGAS.com 
• Lições Aprendidas
VAGAS.com
VAGAS.com
VAGAS.com
VAGAS.com
O que é Big Data? 
Em TI sempre tivemos cenários parecidos com este: 
Processo, métodos, 
Processo, métodos, 
Dados brutos Sínteses para 
algoritmos e 
ferramentas para 
processamento de 
algoritmos e 
ferramentas para 
processamento de 
dados 
dados 
tomadas de 
decisão
O que é Big Data? 
Processo, métodos, 
Processo, métodos, 
algoritmos e 
ferramentas para 
processamento de 
algoritmos e 
ferramentas para 
processamento de 
dados 
dados 
Dados brutos 
Variedade 
Volume 
Velocidade 
Sínteses para 
tomadas de 
decisão
O que é Big Data? 
Processo, 
métodos, 
algoritmos e 
ferramentas para 
processamento de 
Processo, 
métodos, 
algoritmos e 
ferramentas para 
processamento de 
dados 
dados
O que é Big Data? 
Processo, métodos, 
Processo, métodos, 
algoritmos e 
ferramentas para 
processamento de 
algoritmos e 
ferramentas para 
processamento de 
dados 
dados 
Implicam em novas 
formas de síntese 
Implicam em novas 
formas de síntese 
Análises Descritivas 
Análises Descritivas 
(visualizações estáticas ou 
(visualizações estáticas ou 
interativas) 
interativas) 
Modelos 
Preditivos 
Modelos 
Preditivos 
Evolução da gestão 
baseada em dados 
Evolução da gestão 
baseada em dados
Análises Descritivas 
Tem como objetivo sintetizar ou sumarizar 
informações existentes em um conjunto de dados, 
geralmente, apresentando algum padrão oculto. 
Técnicas normalmente empregadas: 
•Algoritmos de agrupamento (clustering). 
•Regras de Associação.
Exemplo de clustering 
Pergunta: é possível identificar agrupamentos de 
usuários baseado na quantidade de candidaturas e 
quantidade de acessos realizados ao site?
Exemplo de clustering 
Pergunta: é possível identificar agrupamentos de 
usuários baseado na quantidade de candidaturas e 
quantidade de acessos realizados ao site? 
Aquisição e pré-processamento 
Aquisição e pré-processamento 
dos dados 
dos dados 
Cada candidato será representado pela: (i) 
quantidade de candidaturas; (ii) quantidade de 
dias desde o último acesso ao site; (iii) 
quantidade de dias desde a última atualização 
do CV, entre outros atributos.
Exemplo de clustering 
Pergunta: é possível identificar agrupamentos de 
usuários baseado na quantidade de candidaturas e 
quantidade de acessos realizados ao site? 
Aquisição e pré-processamento 
Aquisição e pré-processamento 
dos dados 
dos dados 
Análise descritiva dos 
Análise descritiva dos 
atributos 
atributos 
Cada candidato será representado pela: (i) quantidade de candidaturas; (ii) quantidade 
de dias desde o último acesso ao site; (iii) quantidade de dias desde a última 
atualização do CV, entre outros atributos.
Exemplo de clustering 
Pergunta: é possível identificar agrupamentos de 
usuários baseado na quantidade de candidaturas e 
quantidade de acessos realizados ao site? 
Aquisição e pré-processamento 
Aquisição e pré-processamento 
dos dados 
dos dados 
Análise descritiva dos 
Análise descritiva dos 
atributos 
atributos 
MMooddeelalaggeemm 
Cada candidato será representado pela: (i) quantidade de candidaturas; (ii) quantidade 
de dias desde o último acesso ao site; (iii) quantidade de dias desde a última 
atualização do CV, entre outros atributos. 
Vamos utilizar o algoritmo k-means com o 
método elbow para identificar o número 
de clusters ideal
Exemplo de clustering
Exemplo de clustering 
Pergunta: é possível identificar agrupamentos de 
usuários baseado na quantidade de candidaturas e 
quantidade de acessos realizados ao site? 
Aquisição e pré-processamento 
Aquisição e pré-processamento 
dos dados 
dos dados 
Análise descritiva dos 
Análise descritiva dos 
atributos 
atributos 
MMooddeelalaggeemm 
AAvvaalilaiaççããoo d doo m mooddeelolo 
EEnnttrreeggaa 
Cada candidato será representado pela: (i) quantidade de candidaturas; (ii) quantidade 
de dias desde o último acesso ao site; (iii) quantidade de dias desde a última 
atualização do CV, entre outros atributos. 
Vamos utilizar o algoritmo k-means com o 
método elbow para identificar o número 
de clusters ideal 
Relatório 
Apresentação 
Discussão
Processo de descoberta de conhecimento 
DDeefifniniçiçããoo d doo e essccooppoo 
Aquisição e pré-processamento 
Aquisição e pré-processamento 
dos dados 
dos dados 
Análise descritiva dos 
Análise descritiva dos 
atributos 
atributos 
MMooddeelalaggeemm 
AAvvaalilaiaççããoo d doo m mooddeelolo 
EEnnttrreeggaa 
voltar para as outras etapas 
Se o modelo não está bom então podemos
Outro exemplo de análise descritiva 
Pergunta: é possível identificar o compartamento de 
movimentações das diversas profissões a partir do 
histórico profissional de uma base de CVs?
Outro exemplo de análise descritiva 
Pergunta: é possível identificar o compartamento de 
movimentações das diversas profissões a partir do 
histórico profissional de uma base de CVs? 
Aquisição e pré-processamento 
Aquisição e pré-processamento 
dos dados 
dos dados
Outro exemplo de análise descritiva 
Pergunta: é possível identificar o compartamento de 
movimentações das diversas profissões a partir do 
histórico profissional de uma base de CVs? 
Aquisição e pré-processamento 
Aquisição e pré-processamento 
dos dados 
dos dados 
Cargo 
Salário 
Setor da empresa 
Cargo 
Salário 
Setor da empresa 
Cargo 
Salário 
Setor da empresa
Outro exemplo de análise descritiva 
Pergunta: é possível identificar o compartamento de 
movimentações das diversas profissões a partir do 
histórico profissional de uma base de CVs? 
Aquisição e pré-processamento 
Aquisição e pré-processamento 
dos dados 
dos dados 
Análise descritiva dos 
Análise descritiva dos 
atributos 
atributos
Outro exemplo de análise descritiva 
Pergunta: é possível identificar o compartamento de 
movimentações das diversas profissões a partir do 
histórico profissional de uma base de CVs? 
Aquisição e pré-processamento 
Aquisição e pré-processamento 
dos dados 
dos dados 
Análise descritiva dos 
Análise descritiva dos 
atributos 
atributos 
MMooddeelalaggeemm
carreiras.vagas.com.br
carreiras.vagas.com.br 
Pergunta: é possível identificar o compartamento de movimentações das 
diversas profissões a partir do histórico profissional de uma base de 
CVs? 
EEnnttrreeggaa c coommoo s sooftftwwaarree
Modelos Preditivos 
A partir de dados históricos, 
criar modelos que realizam algum tipo de previsão 
(futuro) sobre valores: 
categóricos (classificação), ou; 
valores numéricos (regressão).
Modelos Preditivos 
Pergunta: é possível predizer a quantidade de 
visitas no site para os próximos dias? 
Aquisição e pré-processamento 
Aquisição e pré-processamento 
dos dados 
dos dados
Modelos Preditivos 
Pergunta: é possível predizer a quantidade de 
visitas no site para os próximos dias? 
Aquisição e pré-processamento 
dos dados 
MMooddeelalaggeemm Regressão linear onde a variável 
dependente é a quantidade de visitas 
por dia e as variáveis independentes 
são informações como: dia da semana, 
se é feriado ou não, entre outras 
informações 
Aquisição e pré-processamento 
dos dados
Modelos Preditivos 
Pergunta: é possível predizer a quantidade de 
visitas no site para os próximos dias? 
AAvvaalliiaaççããoo ddoo mmooddeelloo
Modelos Preditivos 
Pergunta: é possível predizer a quantidade de 
visitas no site para os próximos dias? 
Sim! 
Aplicações: 
•Prever demanda de acesso ao site 
•Identificar anomalias 
•Diagnosticar falhas
Modelos Preditivos 
Pergunta: é possível recomendar vagas, com alta 
acurácia, aos candidatos?
Modelos Preditivos 
Pergunta: é possível recomendar vagas, com alta 
acurácia, aos candidatos? 
Aquisição e pré-processamento 
dos dados 
Aquisição e pré-processamento 
dos dados 
Candidato Vaga Ação 
1111 aaaa Candidatura 
1111 bbbb Pageview 
2222 aaaa Pageview 
2222 cccc Pageview 
2222 dddd Candidatura
Modelos Preditivos 
Pergunta: é possível recomendar vagas, com alta 
acurácia, aos candidatos? 
MMooddeellaaggeemm 
Modelo Bayesiano (abordagem probabilística) 
Acurácia boa: 70%, fácil de implementar, mas não teve 
Acurácia boa: 70%, fácil de implementar, mas não teve 
um impacto muito alto no site. 
um impacto muito alto no site. 
Random Forest (classificador baseado em árvores de decisão) 
Acurácia excelente: 92%, mas muito difícil para colocar 
Acurácia excelente: 92%, mas muito difícil para colocar 
em ambiente de produção. 
em ambiente de produção. 
Algoritmo colaborativo baseado em grafos 
DDeesseemmppeennhhoo e exxcceelelennttee e e c coomm a altltoo g grraauu d dee i mimppaaccttoo n noo s sititee
Modelos Preditivos 
Pergunta: é possível recomendar vagas, com alta 
acurácia, aos candidatos? 
Avaliação em ambiente de 
Avaliação em ambiente de 
produção 
produção 
Algoritmo de recomendação 
colaborativo “quebrou” o modelo 
preditivo de visitas
Lições Aprendidas 
•Visualizações interativas parecem ser mais úteis que 
visualizações estáticos. 
•Todo projeto/equipe de Big Data (Data Analysis) deve estar 
preparado para falhar. 
•A dinâmica de projetos de Big Data é diferente da dinâmica de 
projetos de software. Projetos de Big Data estão muito mais 
próximos de projetos de pesquisa (científica) do que de projetos 
de software. 
•Como preparar organizações para este tipo de dinâmica?
fabricio.barth@vagas.com.br 
www.VAGAS.com.br 
(11) 4084-1111

Iniciativas em Big Data no VAGAS.com

  • 1.
    Iniciativas em BigData no VAGAS.com Fabrício J. Barth Data e Depto
  • 2.
    Sumário • VAGAS.com • Big Data • Iniciativas de Big Data na VAGAS.com • Lições Aprendidas
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
    O que éBig Data? Em TI sempre tivemos cenários parecidos com este: Processo, métodos, Processo, métodos, Dados brutos Sínteses para algoritmos e ferramentas para processamento de algoritmos e ferramentas para processamento de dados dados tomadas de decisão
  • 8.
    O que éBig Data? Processo, métodos, Processo, métodos, algoritmos e ferramentas para processamento de algoritmos e ferramentas para processamento de dados dados Dados brutos Variedade Volume Velocidade Sínteses para tomadas de decisão
  • 9.
    O que éBig Data? Processo, métodos, algoritmos e ferramentas para processamento de Processo, métodos, algoritmos e ferramentas para processamento de dados dados
  • 10.
    O que éBig Data? Processo, métodos, Processo, métodos, algoritmos e ferramentas para processamento de algoritmos e ferramentas para processamento de dados dados Implicam em novas formas de síntese Implicam em novas formas de síntese Análises Descritivas Análises Descritivas (visualizações estáticas ou (visualizações estáticas ou interativas) interativas) Modelos Preditivos Modelos Preditivos Evolução da gestão baseada em dados Evolução da gestão baseada em dados
  • 11.
    Análises Descritivas Temcomo objetivo sintetizar ou sumarizar informações existentes em um conjunto de dados, geralmente, apresentando algum padrão oculto. Técnicas normalmente empregadas: •Algoritmos de agrupamento (clustering). •Regras de Associação.
  • 12.
    Exemplo de clustering Pergunta: é possível identificar agrupamentos de usuários baseado na quantidade de candidaturas e quantidade de acessos realizados ao site?
  • 13.
    Exemplo de clustering Pergunta: é possível identificar agrupamentos de usuários baseado na quantidade de candidaturas e quantidade de acessos realizados ao site? Aquisição e pré-processamento Aquisição e pré-processamento dos dados dos dados Cada candidato será representado pela: (i) quantidade de candidaturas; (ii) quantidade de dias desde o último acesso ao site; (iii) quantidade de dias desde a última atualização do CV, entre outros atributos.
  • 14.
    Exemplo de clustering Pergunta: é possível identificar agrupamentos de usuários baseado na quantidade de candidaturas e quantidade de acessos realizados ao site? Aquisição e pré-processamento Aquisição e pré-processamento dos dados dos dados Análise descritiva dos Análise descritiva dos atributos atributos Cada candidato será representado pela: (i) quantidade de candidaturas; (ii) quantidade de dias desde o último acesso ao site; (iii) quantidade de dias desde a última atualização do CV, entre outros atributos.
  • 15.
    Exemplo de clustering Pergunta: é possível identificar agrupamentos de usuários baseado na quantidade de candidaturas e quantidade de acessos realizados ao site? Aquisição e pré-processamento Aquisição e pré-processamento dos dados dos dados Análise descritiva dos Análise descritiva dos atributos atributos MMooddeelalaggeemm Cada candidato será representado pela: (i) quantidade de candidaturas; (ii) quantidade de dias desde o último acesso ao site; (iii) quantidade de dias desde a última atualização do CV, entre outros atributos. Vamos utilizar o algoritmo k-means com o método elbow para identificar o número de clusters ideal
  • 16.
  • 17.
    Exemplo de clustering Pergunta: é possível identificar agrupamentos de usuários baseado na quantidade de candidaturas e quantidade de acessos realizados ao site? Aquisição e pré-processamento Aquisição e pré-processamento dos dados dos dados Análise descritiva dos Análise descritiva dos atributos atributos MMooddeelalaggeemm AAvvaalilaiaççããoo d doo m mooddeelolo EEnnttrreeggaa Cada candidato será representado pela: (i) quantidade de candidaturas; (ii) quantidade de dias desde o último acesso ao site; (iii) quantidade de dias desde a última atualização do CV, entre outros atributos. Vamos utilizar o algoritmo k-means com o método elbow para identificar o número de clusters ideal Relatório Apresentação Discussão
  • 18.
    Processo de descobertade conhecimento DDeefifniniçiçããoo d doo e essccooppoo Aquisição e pré-processamento Aquisição e pré-processamento dos dados dos dados Análise descritiva dos Análise descritiva dos atributos atributos MMooddeelalaggeemm AAvvaalilaiaççããoo d doo m mooddeelolo EEnnttrreeggaa voltar para as outras etapas Se o modelo não está bom então podemos
  • 19.
    Outro exemplo deanálise descritiva Pergunta: é possível identificar o compartamento de movimentações das diversas profissões a partir do histórico profissional de uma base de CVs?
  • 20.
    Outro exemplo deanálise descritiva Pergunta: é possível identificar o compartamento de movimentações das diversas profissões a partir do histórico profissional de uma base de CVs? Aquisição e pré-processamento Aquisição e pré-processamento dos dados dos dados
  • 21.
    Outro exemplo deanálise descritiva Pergunta: é possível identificar o compartamento de movimentações das diversas profissões a partir do histórico profissional de uma base de CVs? Aquisição e pré-processamento Aquisição e pré-processamento dos dados dos dados Cargo Salário Setor da empresa Cargo Salário Setor da empresa Cargo Salário Setor da empresa
  • 22.
    Outro exemplo deanálise descritiva Pergunta: é possível identificar o compartamento de movimentações das diversas profissões a partir do histórico profissional de uma base de CVs? Aquisição e pré-processamento Aquisição e pré-processamento dos dados dos dados Análise descritiva dos Análise descritiva dos atributos atributos
  • 23.
    Outro exemplo deanálise descritiva Pergunta: é possível identificar o compartamento de movimentações das diversas profissões a partir do histórico profissional de uma base de CVs? Aquisição e pré-processamento Aquisição e pré-processamento dos dados dos dados Análise descritiva dos Análise descritiva dos atributos atributos MMooddeelalaggeemm
  • 24.
  • 25.
    carreiras.vagas.com.br Pergunta: épossível identificar o compartamento de movimentações das diversas profissões a partir do histórico profissional de uma base de CVs? EEnnttrreeggaa c coommoo s sooftftwwaarree
  • 26.
    Modelos Preditivos Apartir de dados históricos, criar modelos que realizam algum tipo de previsão (futuro) sobre valores: categóricos (classificação), ou; valores numéricos (regressão).
  • 27.
    Modelos Preditivos Pergunta:é possível predizer a quantidade de visitas no site para os próximos dias? Aquisição e pré-processamento Aquisição e pré-processamento dos dados dos dados
  • 28.
    Modelos Preditivos Pergunta:é possível predizer a quantidade de visitas no site para os próximos dias? Aquisição e pré-processamento dos dados MMooddeelalaggeemm Regressão linear onde a variável dependente é a quantidade de visitas por dia e as variáveis independentes são informações como: dia da semana, se é feriado ou não, entre outras informações Aquisição e pré-processamento dos dados
  • 29.
    Modelos Preditivos Pergunta:é possível predizer a quantidade de visitas no site para os próximos dias? AAvvaalliiaaççããoo ddoo mmooddeelloo
  • 30.
    Modelos Preditivos Pergunta:é possível predizer a quantidade de visitas no site para os próximos dias? Sim! Aplicações: •Prever demanda de acesso ao site •Identificar anomalias •Diagnosticar falhas
  • 31.
    Modelos Preditivos Pergunta:é possível recomendar vagas, com alta acurácia, aos candidatos?
  • 32.
    Modelos Preditivos Pergunta:é possível recomendar vagas, com alta acurácia, aos candidatos? Aquisição e pré-processamento dos dados Aquisição e pré-processamento dos dados Candidato Vaga Ação 1111 aaaa Candidatura 1111 bbbb Pageview 2222 aaaa Pageview 2222 cccc Pageview 2222 dddd Candidatura
  • 33.
    Modelos Preditivos Pergunta:é possível recomendar vagas, com alta acurácia, aos candidatos? MMooddeellaaggeemm Modelo Bayesiano (abordagem probabilística) Acurácia boa: 70%, fácil de implementar, mas não teve Acurácia boa: 70%, fácil de implementar, mas não teve um impacto muito alto no site. um impacto muito alto no site. Random Forest (classificador baseado em árvores de decisão) Acurácia excelente: 92%, mas muito difícil para colocar Acurácia excelente: 92%, mas muito difícil para colocar em ambiente de produção. em ambiente de produção. Algoritmo colaborativo baseado em grafos DDeesseemmppeennhhoo e exxcceelelennttee e e c coomm a altltoo g grraauu d dee i mimppaaccttoo n noo s sititee
  • 34.
    Modelos Preditivos Pergunta:é possível recomendar vagas, com alta acurácia, aos candidatos? Avaliação em ambiente de Avaliação em ambiente de produção produção Algoritmo de recomendação colaborativo “quebrou” o modelo preditivo de visitas
  • 35.
    Lições Aprendidas •Visualizaçõesinterativas parecem ser mais úteis que visualizações estáticos. •Todo projeto/equipe de Big Data (Data Analysis) deve estar preparado para falhar. •A dinâmica de projetos de Big Data é diferente da dinâmica de projetos de software. Projetos de Big Data estão muito mais próximos de projetos de pesquisa (científica) do que de projetos de software. •Como preparar organizações para este tipo de dinâmica?
  • 36.