SlideShare une entreprise Scribd logo
1  sur  30
THE FUTURE IS NOW
EXPERIENCIAS CON
NEO4J EN INFOJOBS
MARC POU
Product Owner, InfoJobs
3
■ Marc Pou
■ En InfoJobs desde 2.016
■ Product Owner (Candidatos)
■ @marc_pou
■ marc.pou@infojobs.net
■ Rubén Arana
■ En InfoJobs desde 2.013
■ Technical Leader
■ @RbnArana
■ ruben.arana@infojobs.net
¿QUIENES SOMOS?
4
“Hacer fácil a todas las personas encontrar el mejor empleo posible”
■ 700.000 usuarios únicos al día
■ 36.5 millones de visitas al mes
■ 325 millones de páginas vistas al mes
■ + de 150.000 puestos vacantes disponibles
■ + de 1 millón de descargas de la App en 2.015
■ 831.000 contratos conseguidos en 2.015
SOBRE INFOJOBS
USOS DE NEO4J EN INFOJOBS
6
Plan de Carrera (2.012 / 2.013)
■ Portal de información estadística
■ Ayuda para mejorar la carrera
profesional de los candidatos
■ Múltiples filtros de información
InfoJobs Social (2.014 / 2.015)
■ Red social de InfoJobs
■ Aporta capa relacional sobre las
ofertas de empleo
■ Ofrece posibilidades
complementarias a la búsqueda de
empleo tradicional
PROYECTOS
PLAN DE CARRERA
7
8
■ ¿Cuál es el siguiente puesto más habitual al puesto <P>?
■ ¿Dónde van los empleados que dejan la empresa <E>?
■ ¿Cuáles son los conocimientos habituales de un candidato que trabaja de <P>?
■ ¿De qué centro de formación salen mejores profesionales?
¿A QUÉ RESPONDE PLAN DE CARRERA?
9
¿DE QUÉ DISPONEMOS?
■ Amplia BBDD de currículums
■ 4 Millones de candidatos
■ 8 Millones de experiencias
■ 8 Millones de estudios
■ 16 Millones de conocimientos
10
¿CÓMO LO SOLUCIONAMOS?
■ Responder a los retos planteados mediante una BBDD relacional es muy
costoso.
■ Modelamos el problema con un grafo
■ Transformamos el CV en Nodos y Relaciones
■ El grafo nos permite tener secuencialidad de las experiencias y estudios
■ Nos permite relacionar fácilmente elementos comunes
11
12
ESQUEMASOLUCIÓN
In OutN
Dicc
Explotación
Exportación
datos
Limpieza y
Normalización
Carga grafo
De base de datos
relacional a ficheros CSV
Warm up
EJEMPLO
13
■ Misma información, dos prismas.
■ Información para candidatos
■ Información para empresas
■ La clave está en recorrer el grafo por
un camino o por otro pero con el
mismo modelo.
14
■ Actualización mensual de datos (No Real Time)
■ Procesos de limpieza y normalización en ficheros CSV
■ Carga grafo off-line (mayor rapidez) mediante la API de
Neo4j
■ Uso intensivo de memoria para mantener nodos padres
y poder establecer relaciones
■ Ser estrictos en propiedades e información que se
carga en los nodos (menos es más). Evitar textos
■ 6Gb – 8Gb de tamaño del grafo
■ Warm Up (recorrer todo el grafo para cargar todos los
datos en memoria)
■ Queries:
■ Cypher: fácil de experimentar, leer, mantener.
■ API: óptimo para queries consolidadas, costosas,
críticas en rendimiento.
■ Grafo de solo lectura (no realizamos operaciones de
escritura)
■ Múltiples opciones de consulta y filtros. El grafo facilita
el modelo de cálculo. No es Use Case habitual.
■ Consultas costosas cuando se filtra por properties.
■ Múltiples capas de persistencia para agilizar
rendimiento. WarmUp de consultas habituales.
RESULTADOS / APRENDIZAJES
INFOJOBS SOCIAL
15
16
■ ¿Qué hacen los candidatos cuando ya han repasado todas las ofertas de
empleo del portal?
■ Activan su red de contactos (on-line / off-line) para encontrar
oportunidades, referencias, recomendaciones, etc…
■ Podemos añadir una capa social por encima de InfoJobs que ayude a los
candidatos a encontrar contactos en las ofertas que les interesen
¿A QUÉ RESPONDE INFOJOBS SOCIAL?
17
■ Mostrar contactos de 1er o 2º nivel
en ofertas de empleo
■ Mostrar sugerencias de contactos
con alta probabilidad de conocerse
■ Gestión de mi red de contactos
■ Invitaciones recibidas
■ Mis contactos
■ Generar confianza en la red
■ Contactos en común entre dos
candidatos
■ Elementos en común entre dos
candidatos
■ Buscador de contactos
EJEMPLOS DE SERVICIOSA OFRECER
18
19
■ Sistema vivo
■ Tiempo real
■ Lectura / Escritura
■ Alta disponibilidad
■ Mecanismo de recuperación rápida
■ Gran volumen de datos
■ Tiempo de respuesta estable con
independencia del volumen de datos
■ Pesos en relaciones
■ “Independencia” del Site de Empleo
REQUISITOS
MODELO
20
Sugerencias de contactos
■ Personas que han trabajado en la
misma empresa en un mismo periodo
de tiempo
■ Personas que han realizado un mismo
estudio en un mismo centro de
formación en un mismo periodo de
tiempo.
■ Ponderar sugerencias en función de
tiempo de coincidencia y antigüedad de
la coincidencia.
EVOLUCIÓN MODELO
21
Excluir candidatos que…
■ …hemos enviado invitaciones
■ …hemos hemos rechazado
■ ....con los que ya estamos
conectados
EVOLUCIÓN MODELO
22
Incluir nodos de otras redes
■ Incluimos contactos de Facebook
■ Sugerimos amigos de amigos de
Facebook
EVOLUCIÓN MODELO
23
Incluir contactos del teléfono
Incrementar red social en base a red
social real existente
■ Emails
■ Teléfonos
ARQUITECTURA
24
■ Cluster Neo4j
■ Master (W) / Slave (R)
■ Cambios en IJ se aplican a
Grafo mediante sistema de
colas
■ API Rest
■ Operaciones Neo4j mediante
plugins
■ Importer externo. Carga de
BD
25
■ Carga directa de BBDD
■ Multithreading para reducir tiempos
de carga y tiempos de espera
■ Grafo de dependencias en el
proceso de carga
■ Proceso de limpieza incorporado
■ Tiempo de carga “reducido”
■ 60Gb tamaño
■ 14M candidatos
■ 2.5M contactos
■ 2.2M invitaciones
■ 4M contactos rechazados
■ 32M sugerencias por email
■ 18M estudios
■ 40M experiencias
■ 75M emails del móvil
■ 180M telfs del móvil
IMPORTER
26
ALGORITMO DE
RECOMENDACIONES
■ Operaciones muy sencillas y
rápidas.
■ Obtener recomendaciones
■ Obtener rewards
■ Eliminar nodos
■ Aplicar reglas de negocio
■ Aplicar pesos a nodos y
resultados
27
SEARCH ENGINE
■ Usamos el índice de Neo4j
para buscar contactos por
texto.
■ Funciona bastante rápido.
28
■ Super nodos
■ Teléfonos => Limpiar y limitar teléfonos muy comunes
■ Empresas => Mercadona, Carrefour, … => Nos falta información de localización => Sugerencias en
super nodos son poco relevantes
■ Rotación de candidatos
■ No acción en sugerencias => No interés => Rotar
■ Sugerencias de emails
■ Evitar repeticiones de sugerencias
■ Gestión del cambio del modelo de InfoJobs => Entorno cerrado a entorno abierto
PROBLEMAS ENCONTRADOS
29
ALGUNOS RESULTADOS
0
20000
40000
60000
80000
100000
120000
2014/20
2014/24
2014/28
2014/32
2014/36
2014/40
2014/45
2014/49
2015/01
2015/05
2015/09
2015/13
2015/17
2015/21
2015/25
2015/29
2015/33
2015/37
2015/41
Invitations vs Suggestions
week by week
Ignore
Connect
0.00%
5.00%
10.00%
15.00%
20.00%
25.00%
30.00%
201…
201…
201…
201…
201…
201…
201…
201…
201…
201…
201…
201…
201…
201…
201…
201…
201…
201…
201…
% Application rate
Without Contacts
With Contacts
0.0%
5.0%
10.0%
15.0%
20.0%
25.0%
30.0%
W+1 W+2 W+3 W+4
% of Updated CVs
week by week after registration
Candidates (Week 38)
Social Candidates (Week
38)
■ 2,6M de conexiones
■ 7% de las recuperaciones de candidatos
■ +12% de opciones de actualizar el CV
GRACIAS

Contenu connexe

Similaire à Experiencias con Neo4j en InfoJobs

Presentación Facundo Davancens | Microsoft - eCommerce IT Camp 2017
Presentación Facundo Davancens | Microsoft - eCommerce IT Camp 2017Presentación Facundo Davancens | Microsoft - eCommerce IT Camp 2017
Presentación Facundo Davancens | Microsoft - eCommerce IT Camp 2017eCommerce Institute
 
H. Gomis y E. Cañizares. Herramientas BI : Elección y Buenas Prácticas. Seman...
H. Gomis y E. Cañizares. Herramientas BI : Elección y Buenas Prácticas. Seman...H. Gomis y E. Cañizares. Herramientas BI : Elección y Buenas Prácticas. Seman...
H. Gomis y E. Cañizares. Herramientas BI : Elección y Buenas Prácticas. Seman...COIICV
 
¿Tu currículum sabe lo que sabes?
¿Tu currículum sabe lo que sabes? ¿Tu currículum sabe lo que sabes?
¿Tu currículum sabe lo que sabes? InfoJobs
 
9 problemas en proyectos Data Analytics
9 problemas en proyectos Data Analytics9 problemas en proyectos Data Analytics
9 problemas en proyectos Data AnalyticsStratebi
 
Ucv sesion 15 diseño optimiz -redes
Ucv sesion 15 diseño optimiz -redesUcv sesion 15 diseño optimiz -redes
Ucv sesion 15 diseño optimiz -redesTaringa!
 
¿Tu currículum sabe lo que sabes?
¿Tu currículum sabe lo que sabes?¿Tu currículum sabe lo que sabes?
¿Tu currículum sabe lo que sabes?Marc Pou i Miquel
 
El proyecto fue un exito, ¿y ahora?
El proyecto fue un exito, ¿y ahora?El proyecto fue un exito, ¿y ahora?
El proyecto fue un exito, ¿y ahora?Software Guru
 
La analítica nos hace mejores
La analítica nos hace mejoresLa analítica nos hace mejores
La analítica nos hace mejoresFernando Puente
 
Implicaciones del cambio organizacional hacia devops
Implicaciones del cambio organizacional hacia devopsImplicaciones del cambio organizacional hacia devops
Implicaciones del cambio organizacional hacia devopsJuanjo MARTINEZ PAGAN
 
Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - Presentación
Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - PresentaciónCurso UX Tenerife (No maltrates a tus usuarios) FG ULL - Presentación
Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - PresentaciónRomén Rodríguez-Gil
 
Ampliar el impacto deSharePoint en toda la empresa
Ampliar el impacto deSharePoint en toda la empresaAmpliar el impacto deSharePoint en toda la empresa
Ampliar el impacto deSharePoint en toda la empresaJuan Andrés Valenzuela
 
Guía práctica de cómo hacer una negocio con una APP
Guía práctica de cómo hacer una negocio con una APPGuía práctica de cómo hacer una negocio con una APP
Guía práctica de cómo hacer una negocio con una APPDavid Mora Gandarillas
 
Estrategia para la Apertura de Datos
Estrategia para la Apertura de DatosEstrategia para la Apertura de Datos
Estrategia para la Apertura de DatosSocialTIC
 
Estrategias y herramientas digitales para profesionales
Estrategias y herramientas digitales para profesionalesEstrategias y herramientas digitales para profesionales
Estrategias y herramientas digitales para profesionalesEsteban Romero Frías
 

Similaire à Experiencias con Neo4j en InfoJobs (20)

Presentación Facundo Davancens | Microsoft - eCommerce IT Camp 2017
Presentación Facundo Davancens | Microsoft - eCommerce IT Camp 2017Presentación Facundo Davancens | Microsoft - eCommerce IT Camp 2017
Presentación Facundo Davancens | Microsoft - eCommerce IT Camp 2017
 
H. Gomis y E. Cañizares. Herramientas BI : Elección y Buenas Prácticas. Seman...
H. Gomis y E. Cañizares. Herramientas BI : Elección y Buenas Prácticas. Seman...H. Gomis y E. Cañizares. Herramientas BI : Elección y Buenas Prácticas. Seman...
H. Gomis y E. Cañizares. Herramientas BI : Elección y Buenas Prácticas. Seman...
 
¿Tu currículum sabe lo que sabes?
¿Tu currículum sabe lo que sabes? ¿Tu currículum sabe lo que sabes?
¿Tu currículum sabe lo que sabes?
 
9 problemas en proyectos Data Analytics
9 problemas en proyectos Data Analytics9 problemas en proyectos Data Analytics
9 problemas en proyectos Data Analytics
 
Ucv sesion 15 diseño optimiz -redes
Ucv sesion 15 diseño optimiz -redesUcv sesion 15 diseño optimiz -redes
Ucv sesion 15 diseño optimiz -redes
 
¿Tu currículum sabe lo que sabes?
¿Tu currículum sabe lo que sabes?¿Tu currículum sabe lo que sabes?
¿Tu currículum sabe lo que sabes?
 
El proyecto fue un exito, ¿y ahora?
El proyecto fue un exito, ¿y ahora?El proyecto fue un exito, ¿y ahora?
El proyecto fue un exito, ¿y ahora?
 
Uvm oct 12
Uvm oct 12Uvm oct 12
Uvm oct 12
 
La analítica nos hace mejores
La analítica nos hace mejoresLa analítica nos hace mejores
La analítica nos hace mejores
 
28 cityanalytics slide
28 cityanalytics slide28 cityanalytics slide
28 cityanalytics slide
 
Implicaciones del cambio organizacional hacia devops
Implicaciones del cambio organizacional hacia devopsImplicaciones del cambio organizacional hacia devops
Implicaciones del cambio organizacional hacia devops
 
Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - Presentación
Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - PresentaciónCurso UX Tenerife (No maltrates a tus usuarios) FG ULL - Presentación
Curso UX Tenerife (No maltrates a tus usuarios) FG ULL - Presentación
 
Alto rendimiento en la web
Alto rendimiento en la webAlto rendimiento en la web
Alto rendimiento en la web
 
Digital Intelligence
Digital IntelligenceDigital Intelligence
Digital Intelligence
 
Ampliar el impacto deSharePoint en toda la empresa
Ampliar el impacto deSharePoint en toda la empresaAmpliar el impacto deSharePoint en toda la empresa
Ampliar el impacto deSharePoint en toda la empresa
 
Guía práctica de cómo hacer una negocio con una APP
Guía práctica de cómo hacer una negocio con una APPGuía práctica de cómo hacer una negocio con una APP
Guía práctica de cómo hacer una negocio con una APP
 
Estrategia para la Apertura de Datos
Estrategia para la Apertura de DatosEstrategia para la Apertura de Datos
Estrategia para la Apertura de Datos
 
Estrategias y herramientas digitales para profesionales
Estrategias y herramientas digitales para profesionalesEstrategias y herramientas digitales para profesionales
Estrategias y herramientas digitales para profesionales
 
Proyecto finalizado
Proyecto finalizadoProyecto finalizado
Proyecto finalizado
 
Posicionamiento Web: estructura y tipos.
Posicionamiento Web: estructura y tipos.Posicionamiento Web: estructura y tipos.
Posicionamiento Web: estructura y tipos.
 

Plus de Marc Pou i Miquel

Democratizing Biz and Product Innovation Using Ontologies
Democratizing Biz and Product Innovation Using OntologiesDemocratizing Biz and Product Innovation Using Ontologies
Democratizing Biz and Product Innovation Using OntologiesMarc Pou i Miquel
 
Cómo buscar empleo: Identididad Digital, Redes Sociales y Herramientas que us...
Cómo buscar empleo: Identididad Digital, Redes Sociales y Herramientas que us...Cómo buscar empleo: Identididad Digital, Redes Sociales y Herramientas que us...
Cómo buscar empleo: Identididad Digital, Redes Sociales y Herramientas que us...Marc Pou i Miquel
 
Identididad Digital Identidad digital redes sociales_como_buscan_empleados_la...
Identididad Digital Identidad digital redes sociales_como_buscan_empleados_la...Identididad Digital Identidad digital redes sociales_como_buscan_empleados_la...
Identididad Digital Identidad digital redes sociales_como_buscan_empleados_la...Marc Pou i Miquel
 
¿Cómo mejorar tu currículum añadiendo conocimientos en tus experiencias?
¿Cómo mejorar tu currículum añadiendo conocimientos en tus experiencias?¿Cómo mejorar tu currículum añadiendo conocimientos en tus experiencias?
¿Cómo mejorar tu currículum añadiendo conocimientos en tus experiencias?Marc Pou i Miquel
 
Cómo obtener candidatos más adecuados para una oferta de empleo en InfoJobs
Cómo obtener candidatos más adecuados para una oferta de empleo en InfoJobsCómo obtener candidatos más adecuados para una oferta de empleo en InfoJobs
Cómo obtener candidatos más adecuados para una oferta de empleo en InfoJobsMarc Pou i Miquel
 
Cómo usar el Plan de Carrera de InfoJobs
Cómo usar el Plan de Carrera de InfoJobsCómo usar el Plan de Carrera de InfoJobs
Cómo usar el Plan de Carrera de InfoJobsMarc Pou i Miquel
 

Plus de Marc Pou i Miquel (6)

Democratizing Biz and Product Innovation Using Ontologies
Democratizing Biz and Product Innovation Using OntologiesDemocratizing Biz and Product Innovation Using Ontologies
Democratizing Biz and Product Innovation Using Ontologies
 
Cómo buscar empleo: Identididad Digital, Redes Sociales y Herramientas que us...
Cómo buscar empleo: Identididad Digital, Redes Sociales y Herramientas que us...Cómo buscar empleo: Identididad Digital, Redes Sociales y Herramientas que us...
Cómo buscar empleo: Identididad Digital, Redes Sociales y Herramientas que us...
 
Identididad Digital Identidad digital redes sociales_como_buscan_empleados_la...
Identididad Digital Identidad digital redes sociales_como_buscan_empleados_la...Identididad Digital Identidad digital redes sociales_como_buscan_empleados_la...
Identididad Digital Identidad digital redes sociales_como_buscan_empleados_la...
 
¿Cómo mejorar tu currículum añadiendo conocimientos en tus experiencias?
¿Cómo mejorar tu currículum añadiendo conocimientos en tus experiencias?¿Cómo mejorar tu currículum añadiendo conocimientos en tus experiencias?
¿Cómo mejorar tu currículum añadiendo conocimientos en tus experiencias?
 
Cómo obtener candidatos más adecuados para una oferta de empleo en InfoJobs
Cómo obtener candidatos más adecuados para una oferta de empleo en InfoJobsCómo obtener candidatos más adecuados para una oferta de empleo en InfoJobs
Cómo obtener candidatos más adecuados para una oferta de empleo en InfoJobs
 
Cómo usar el Plan de Carrera de InfoJobs
Cómo usar el Plan de Carrera de InfoJobsCómo usar el Plan de Carrera de InfoJobs
Cómo usar el Plan de Carrera de InfoJobs
 

Dernier

Matrices Matemáticos universitario pptx
Matrices  Matemáticos universitario pptxMatrices  Matemáticos universitario pptx
Matrices Matemáticos universitario pptxNancyJulcasumaran
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologicaJUDITHYEMELINHUARIPA
 
Trazos paileros para realizar trazos, cortes y calculos.pptx
Trazos paileros para realizar trazos, cortes y calculos.pptxTrazos paileros para realizar trazos, cortes y calculos.pptx
Trazos paileros para realizar trazos, cortes y calculos.pptxmiguelmateos18
 
Sistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión internaSistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión internamengual57
 
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfAnálisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfGabrielCayampiGutier
 
libro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacioneslibro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacionesRamon Bartolozzi
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZgustavoiashalom
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfbcondort
 
Determinación de espacios en la instalación
Determinación de espacios en la instalaciónDeterminación de espacios en la instalación
Determinación de espacios en la instalaciónQualityAdviceService
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATevercoyla
 
Clasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docxClasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docxwilliam801689
 
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)Ricardo705519
 
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdfTIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdfssuser202b79
 
Sistemas de Ecuaciones no lineales-1.pptx
Sistemas de Ecuaciones no lineales-1.pptxSistemas de Ecuaciones no lineales-1.pptx
Sistemas de Ecuaciones no lineales-1.pptx170766
 
Six Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processSix Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processbarom
 
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJODIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJOJimyAMoran
 
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...WeslinDarguinHernand
 
Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosFicha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosRamiroCruzSalazar
 
Sesion 03 Formas de absorcion de agua.pptx
Sesion 03 Formas de absorcion de agua.pptxSesion 03 Formas de absorcion de agua.pptx
Sesion 03 Formas de absorcion de agua.pptxMarcosAlvarezSalinas
 
Minería convencional: datos importantes y conceptos
Minería convencional: datos importantes y conceptosMinería convencional: datos importantes y conceptos
Minería convencional: datos importantes y conceptosisauVillalva
 

Dernier (20)

Matrices Matemáticos universitario pptx
Matrices  Matemáticos universitario pptxMatrices  Matemáticos universitario pptx
Matrices Matemáticos universitario pptx
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica
 
Trazos paileros para realizar trazos, cortes y calculos.pptx
Trazos paileros para realizar trazos, cortes y calculos.pptxTrazos paileros para realizar trazos, cortes y calculos.pptx
Trazos paileros para realizar trazos, cortes y calculos.pptx
 
Sistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión internaSistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión interna
 
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfAnálisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
 
libro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacioneslibro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operaciones
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
 
Determinación de espacios en la instalación
Determinación de espacios en la instalaciónDeterminación de espacios en la instalación
Determinación de espacios en la instalación
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
 
Clasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docxClasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docx
 
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
 
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdfTIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
 
Sistemas de Ecuaciones no lineales-1.pptx
Sistemas de Ecuaciones no lineales-1.pptxSistemas de Ecuaciones no lineales-1.pptx
Sistemas de Ecuaciones no lineales-1.pptx
 
Six Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processSix Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo process
 
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJODIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
 
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
 
Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosFicha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
 
Sesion 03 Formas de absorcion de agua.pptx
Sesion 03 Formas de absorcion de agua.pptxSesion 03 Formas de absorcion de agua.pptx
Sesion 03 Formas de absorcion de agua.pptx
 
Minería convencional: datos importantes y conceptos
Minería convencional: datos importantes y conceptosMinería convencional: datos importantes y conceptos
Minería convencional: datos importantes y conceptos
 

Experiencias con Neo4j en InfoJobs

  • 2. EXPERIENCIAS CON NEO4J EN INFOJOBS MARC POU Product Owner, InfoJobs
  • 3. 3 ■ Marc Pou ■ En InfoJobs desde 2.016 ■ Product Owner (Candidatos) ■ @marc_pou ■ marc.pou@infojobs.net ■ Rubén Arana ■ En InfoJobs desde 2.013 ■ Technical Leader ■ @RbnArana ■ ruben.arana@infojobs.net ¿QUIENES SOMOS?
  • 4. 4 “Hacer fácil a todas las personas encontrar el mejor empleo posible” ■ 700.000 usuarios únicos al día ■ 36.5 millones de visitas al mes ■ 325 millones de páginas vistas al mes ■ + de 150.000 puestos vacantes disponibles ■ + de 1 millón de descargas de la App en 2.015 ■ 831.000 contratos conseguidos en 2.015 SOBRE INFOJOBS
  • 5. USOS DE NEO4J EN INFOJOBS
  • 6. 6 Plan de Carrera (2.012 / 2.013) ■ Portal de información estadística ■ Ayuda para mejorar la carrera profesional de los candidatos ■ Múltiples filtros de información InfoJobs Social (2.014 / 2.015) ■ Red social de InfoJobs ■ Aporta capa relacional sobre las ofertas de empleo ■ Ofrece posibilidades complementarias a la búsqueda de empleo tradicional PROYECTOS
  • 8. 8 ■ ¿Cuál es el siguiente puesto más habitual al puesto <P>? ■ ¿Dónde van los empleados que dejan la empresa <E>? ■ ¿Cuáles son los conocimientos habituales de un candidato que trabaja de <P>? ■ ¿De qué centro de formación salen mejores profesionales? ¿A QUÉ RESPONDE PLAN DE CARRERA?
  • 9. 9 ¿DE QUÉ DISPONEMOS? ■ Amplia BBDD de currículums ■ 4 Millones de candidatos ■ 8 Millones de experiencias ■ 8 Millones de estudios ■ 16 Millones de conocimientos
  • 10. 10 ¿CÓMO LO SOLUCIONAMOS? ■ Responder a los retos planteados mediante una BBDD relacional es muy costoso. ■ Modelamos el problema con un grafo ■ Transformamos el CV en Nodos y Relaciones ■ El grafo nos permite tener secuencialidad de las experiencias y estudios ■ Nos permite relacionar fácilmente elementos comunes
  • 11. 11
  • 13. EJEMPLO 13 ■ Misma información, dos prismas. ■ Información para candidatos ■ Información para empresas ■ La clave está en recorrer el grafo por un camino o por otro pero con el mismo modelo.
  • 14. 14 ■ Actualización mensual de datos (No Real Time) ■ Procesos de limpieza y normalización en ficheros CSV ■ Carga grafo off-line (mayor rapidez) mediante la API de Neo4j ■ Uso intensivo de memoria para mantener nodos padres y poder establecer relaciones ■ Ser estrictos en propiedades e información que se carga en los nodos (menos es más). Evitar textos ■ 6Gb – 8Gb de tamaño del grafo ■ Warm Up (recorrer todo el grafo para cargar todos los datos en memoria) ■ Queries: ■ Cypher: fácil de experimentar, leer, mantener. ■ API: óptimo para queries consolidadas, costosas, críticas en rendimiento. ■ Grafo de solo lectura (no realizamos operaciones de escritura) ■ Múltiples opciones de consulta y filtros. El grafo facilita el modelo de cálculo. No es Use Case habitual. ■ Consultas costosas cuando se filtra por properties. ■ Múltiples capas de persistencia para agilizar rendimiento. WarmUp de consultas habituales. RESULTADOS / APRENDIZAJES
  • 16. 16 ■ ¿Qué hacen los candidatos cuando ya han repasado todas las ofertas de empleo del portal? ■ Activan su red de contactos (on-line / off-line) para encontrar oportunidades, referencias, recomendaciones, etc… ■ Podemos añadir una capa social por encima de InfoJobs que ayude a los candidatos a encontrar contactos en las ofertas que les interesen ¿A QUÉ RESPONDE INFOJOBS SOCIAL?
  • 17. 17 ■ Mostrar contactos de 1er o 2º nivel en ofertas de empleo ■ Mostrar sugerencias de contactos con alta probabilidad de conocerse ■ Gestión de mi red de contactos ■ Invitaciones recibidas ■ Mis contactos ■ Generar confianza en la red ■ Contactos en común entre dos candidatos ■ Elementos en común entre dos candidatos ■ Buscador de contactos EJEMPLOS DE SERVICIOSA OFRECER
  • 18. 18
  • 19. 19 ■ Sistema vivo ■ Tiempo real ■ Lectura / Escritura ■ Alta disponibilidad ■ Mecanismo de recuperación rápida ■ Gran volumen de datos ■ Tiempo de respuesta estable con independencia del volumen de datos ■ Pesos en relaciones ■ “Independencia” del Site de Empleo REQUISITOS
  • 20. MODELO 20 Sugerencias de contactos ■ Personas que han trabajado en la misma empresa en un mismo periodo de tiempo ■ Personas que han realizado un mismo estudio en un mismo centro de formación en un mismo periodo de tiempo. ■ Ponderar sugerencias en función de tiempo de coincidencia y antigüedad de la coincidencia.
  • 21. EVOLUCIÓN MODELO 21 Excluir candidatos que… ■ …hemos enviado invitaciones ■ …hemos hemos rechazado ■ ....con los que ya estamos conectados
  • 22. EVOLUCIÓN MODELO 22 Incluir nodos de otras redes ■ Incluimos contactos de Facebook ■ Sugerimos amigos de amigos de Facebook
  • 23. EVOLUCIÓN MODELO 23 Incluir contactos del teléfono Incrementar red social en base a red social real existente ■ Emails ■ Teléfonos
  • 24. ARQUITECTURA 24 ■ Cluster Neo4j ■ Master (W) / Slave (R) ■ Cambios en IJ se aplican a Grafo mediante sistema de colas ■ API Rest ■ Operaciones Neo4j mediante plugins ■ Importer externo. Carga de BD
  • 25. 25 ■ Carga directa de BBDD ■ Multithreading para reducir tiempos de carga y tiempos de espera ■ Grafo de dependencias en el proceso de carga ■ Proceso de limpieza incorporado ■ Tiempo de carga “reducido” ■ 60Gb tamaño ■ 14M candidatos ■ 2.5M contactos ■ 2.2M invitaciones ■ 4M contactos rechazados ■ 32M sugerencias por email ■ 18M estudios ■ 40M experiencias ■ 75M emails del móvil ■ 180M telfs del móvil IMPORTER
  • 26. 26 ALGORITMO DE RECOMENDACIONES ■ Operaciones muy sencillas y rápidas. ■ Obtener recomendaciones ■ Obtener rewards ■ Eliminar nodos ■ Aplicar reglas de negocio ■ Aplicar pesos a nodos y resultados
  • 27. 27 SEARCH ENGINE ■ Usamos el índice de Neo4j para buscar contactos por texto. ■ Funciona bastante rápido.
  • 28. 28 ■ Super nodos ■ Teléfonos => Limpiar y limitar teléfonos muy comunes ■ Empresas => Mercadona, Carrefour, … => Nos falta información de localización => Sugerencias en super nodos son poco relevantes ■ Rotación de candidatos ■ No acción en sugerencias => No interés => Rotar ■ Sugerencias de emails ■ Evitar repeticiones de sugerencias ■ Gestión del cambio del modelo de InfoJobs => Entorno cerrado a entorno abierto PROBLEMAS ENCONTRADOS
  • 29. 29 ALGUNOS RESULTADOS 0 20000 40000 60000 80000 100000 120000 2014/20 2014/24 2014/28 2014/32 2014/36 2014/40 2014/45 2014/49 2015/01 2015/05 2015/09 2015/13 2015/17 2015/21 2015/25 2015/29 2015/33 2015/37 2015/41 Invitations vs Suggestions week by week Ignore Connect 0.00% 5.00% 10.00% 15.00% 20.00% 25.00% 30.00% 201… 201… 201… 201… 201… 201… 201… 201… 201… 201… 201… 201… 201… 201… 201… 201… 201… 201… 201… % Application rate Without Contacts With Contacts 0.0% 5.0% 10.0% 15.0% 20.0% 25.0% 30.0% W+1 W+2 W+3 W+4 % of Updated CVs week by week after registration Candidates (Week 38) Social Candidates (Week 38) ■ 2,6M de conexiones ■ 7% de las recuperaciones de candidatos ■ +12% de opciones de actualizar el CV