SlideShare a Scribd company logo
1 of 34
Tu entidad


Diego Muñoz
Frontend Engineer
diego@tuenti.com
Agenda
• ¿Qué es Tuenti?
• ¿Quién es Tuenti?
• Los diferentes equipos de trabajo
    y qué hace cada uno de ellos
• Dudas y preguntas
¿Qué es Tuenti?
En Tuenti no vendemos motos…
…somos gente seria…
…que trabaja duro
Ahora en serio… *


* Aunque la TV enorme + PS3 + Rock Band y
eventos como irse de Paintball no son de broma
Qué es Tuenti
• Por invitación: Menos amigos, pero reales
• Preocupada por la privacidad
• Comentarios, Fotos, Mensajes
  privados, Eventos, Chat, VideoChat, Páginas/Grupos,
  Videos, Juegos, Sitios…
Qué es Tuenti (en números)
• +12.000.000 usuarios
• +100 minutos de media de uso diario
• +200.000.000 mensajes de chat / dia
• +4.000.000 fotos subidas al dia en picos
• +30.000.000.000 page views / mes
• +35.000 peticiones web / seg. en picos
• Picos de 12 Gbps CDNs incluidos
   • 4 Gbps desde el datacenter
• +1.000 servidores
• +250 empleados (de +15 nacionalidades)
¿Quién es Tuenti?
• Tech
   • Frontend:
       • Ca$hMoney, Community, Core, Apps, Interactive, Local, Video
       • Mobile core, Client Apps
       • Tu (MVNO)
   •   Framework/Architecture
   •   Backend, Scalability, Stats, Images
   •   Systems
   •   IT
   •   Dev-Tools
   •   Testing Framework
   •   QA
   •   Design & UX
¿Quién es Tuenti?
•   Human Resources
•   User Support & Translation
•   Sales
•   Administration
•   Legal
•   Finances

• …un gran equipo
¿Quién forma un equipo típico de tech?
•   2+ Ingenieros de Frontend
•   1+ Ingeniero de Backend
•   1 Diseñador
•   1 QA engineer
•   1 Team Lead
•   1 Product Manager

• Algunos equipos funcionan más como un pool
  de recursos
Equipos: Frontend
• Creación de los componentes visuales de
  Tuenti
Ejemplos:
• Desde las páginas de la web a un cliente de
  chat en Javascript o el videoplayer…
• Grupos, Tuenti Sitios…
• Plataforma para juegos: Highscores, juegos
  recientes, invitar a amigos a juegos…
• Diferentes componentes dentro de una página
Equipos: Frontend
• Actualizar de esto:
Equipos: Frontend
• A esto:
Equipos: Frontend
• Trabajamos junto con diseñadores product
  managers, y empleamos componentes creados por
  backend
   • Trabajo en equipo
• PHP, Javascript, Flash…
• Tuenti usa AJAX en todas las páginas
   • Sensación multitarea (navegar + chat +
     videoplayer, todo a la vez)
   • Carga de páginas mas rápida
• Pero… cada navegador tiene diferencias
• Sub-equipos:
  Interactive, Core, Local, Cashmoney, Community, …
Equipos: Mobile & Client Apps
• Mantenimiento y mejora del sitio web móvil
• Desarrollo de aplicaciones nativas para móviles
  (J2ME, Blackberry, Android y iPhone)
Equipos: Mobile & Client Apps
• Desarrollar una web móvil es más complejo de lo que
  parece
   • Markup compatible, y sin Javascript
   • Versión con Javascript muy limitado para teléfonos
     modernos
   • Subida de fotos via web móvil*, sin aplicación
• Cada aplicación nativa presenta diferentes problemas
  y retos a solventar
• Frecuentes actualizaciones añadiendo nuevas
  funcionalidades de su hermana mayor (la web)

* Depende del modelo de teléfono
Equipos: Framework
• Mantenimiento del Frontend Framework actual (PHP)
• Desarrollo de un nuevo Framework con un mejor
  Javascript, mayor simpleza, mayor rapidez…
Equipos: Backend
• Desarrollar un sistema que aguante una carga
  enorme de datos y de tráfico
• Reducir el gasto de recursos y CPU
Equipos: Backend
• +12M de usuarios no se almacenan en una
  simple tabla de base de datos… Solución:
  Particionado (dividir datos según un algoritmo)
• Proporcionar a los equipos de Frontend
  componentes que esconden la complejidad de
  acceder a granjas de servidores
• Cacheo de datos: Leer de memoria es más
  rápido que de DB
• Diseño de complejos algoritmos, como por
  ejemplo sugerencias de amigos
Equipos: Dev-Tools
• +8.000 ficheros fuente. Localización, despliegue en
  producción, entornos de pruebas…
• Herramientas in-house/a medida + empleamos
  herramientas Opensource
Equipos: Dev-Tools
•   Desarrollo local
•   Desarrollo contra dev. server y/o VMs
•   Entornos de pruebas
•   Entornos de pre-producción
•   Despliegue a producción
•   Herramientas de localización, chequeo de estilo
    y normas de codificación, comprobación de
    errores, minimización de código
    HTML, Javascript y hojas CSS…
Equipos: Testing Framework
• +7.600 tests: Unit, integration, acceptance,…
Equipos: Testing Framework
• Detectar fallos lo antes posible: Un error en
  producción puede quedar en un susto, pero
  también puede ser catastrófico
• Permitir a los desarrolladores saber si su nuevo
  código rompe algo del resto del site
Equipos: Quality Assurance
• Tests manuales y con diferentes browsers
• Reportar y gestionar bugs al resto de equipos
Equipos: Systems
• Granjas de hardware especializado:
  Frontends, DB, Caching, Stats,…
• Monitorizar fallos de hardware, congestiones de
  red, caidas de procesos…
Equipos: IT
• Gestionar redes con Windows, Linux y Macs
• Gestionar gente en diferentes plantas y oficinas (2
  en Madrid y una en Barcelona)
• Permitir trabajo remoto de forma segura
Equipos: Design & User Experience
• Asegurarse que todo Tuenti tenga un aspecto
  homogéneo y fácil de usar
• Belleza dentro de la simplicidad
Dudas y Preguntas


     ¿Te animas?
 http://jobs.tuenti.com
Tuenti -  tu entidad
Tuenti -  tu entidad
Tuenti -  tu entidad
Tuenti -  tu entidad

More Related Content

Similar to Tuenti - tu entidad

Cibercrimen Fraude Y Malware Mikel Gastesi
Cibercrimen   Fraude Y Malware   Mikel GastesiCibercrimen   Fraude Y Malware   Mikel Gastesi
Cibercrimen Fraude Y Malware Mikel GastesiChema Alonso
 
Tecnologías de hoy y del futuro
Tecnologías de hoy y del futuroTecnologías de hoy y del futuro
Tecnologías de hoy y del futuroFernando Parra
 
Testing y Open Source ¿Choque de dos mundos?
Testing y Open Source ¿Choque de dos mundos?Testing y Open Source ¿Choque de dos mundos?
Testing y Open Source ¿Choque de dos mundos?Software Guru
 
Creando aplicaciones multi-tenant [Opensouthcode 2019]
Creando aplicaciones multi-tenant [Opensouthcode 2019]Creando aplicaciones multi-tenant [Opensouthcode 2019]
Creando aplicaciones multi-tenant [Opensouthcode 2019]Nacho Fanjul Corteguera
 
El hacking desde el punto de vista de la seguridad informática
El hacking desde el punto de vista de la seguridad informáticaEl hacking desde el punto de vista de la seguridad informática
El hacking desde el punto de vista de la seguridad informáticaLuis Fernando Aguas Bucheli
 
Introducción a SharePoint Framework
Introducción a SharePoint FrameworkIntroducción a SharePoint Framework
Introducción a SharePoint FrameworkHaaron Gonzalez
 
Curso Especialista Marketing Digital Empresa Digitala Bizkaia - Conceptos Ini...
Curso Especialista Marketing Digital Empresa Digitala Bizkaia - Conceptos Ini...Curso Especialista Marketing Digital Empresa Digitala Bizkaia - Conceptos Ini...
Curso Especialista Marketing Digital Empresa Digitala Bizkaia - Conceptos Ini...Venan Llona
 
Tuenti release process
Tuenti release processTuenti release process
Tuenti release processTuenti
 
Herramientas y complementos al desarrollar con tecnologías Microsoft
Herramientas y complementos al desarrollar con tecnologías MicrosoftHerramientas y complementos al desarrollar con tecnologías Microsoft
Herramientas y complementos al desarrollar con tecnologías MicrosoftMiguel Teheran
 
Construyendo tu propio laboratorio de pentesting
Construyendo tu propio laboratorio de pentestingConstruyendo tu propio laboratorio de pentesting
Construyendo tu propio laboratorio de pentestingJaime Andrés Bello Vieda
 
Dynamics saturday madrid 2018 tdd con dynamics 365 ce - jordi
Dynamics saturday madrid 2018   tdd con dynamics 365 ce - jordiDynamics saturday madrid 2018   tdd con dynamics 365 ce - jordi
Dynamics saturday madrid 2018 tdd con dynamics 365 ce - jordiDemian Raschkovan
 

Similar to Tuenti - tu entidad (20)

"Al rico" PHP
"Al rico" PHP"Al rico" PHP
"Al rico" PHP
 
Blog
BlogBlog
Blog
 
Cibercrimen Fraude Y Malware Mikel Gastesi
Cibercrimen   Fraude Y Malware   Mikel GastesiCibercrimen   Fraude Y Malware   Mikel Gastesi
Cibercrimen Fraude Y Malware Mikel Gastesi
 
¿Cómo iniciarse en programación Android?
¿Cómo iniciarse en programación Android?¿Cómo iniciarse en programación Android?
¿Cómo iniciarse en programación Android?
 
Intranet por Monono
Intranet por MononoIntranet por Monono
Intranet por Monono
 
Tecnologías de hoy y del futuro
Tecnologías de hoy y del futuroTecnologías de hoy y del futuro
Tecnologías de hoy y del futuro
 
Testing y Open Source ¿Choque de dos mundos?
Testing y Open Source ¿Choque de dos mundos?Testing y Open Source ¿Choque de dos mundos?
Testing y Open Source ¿Choque de dos mundos?
 
Semana de la I+D - Proyecto OPOSSUM
Semana de la I+D - Proyecto OPOSSUMSemana de la I+D - Proyecto OPOSSUM
Semana de la I+D - Proyecto OPOSSUM
 
Creando aplicaciones multi-tenant [Opensouthcode 2019]
Creando aplicaciones multi-tenant [Opensouthcode 2019]Creando aplicaciones multi-tenant [Opensouthcode 2019]
Creando aplicaciones multi-tenant [Opensouthcode 2019]
 
Betabeers BCN
Betabeers BCNBetabeers BCN
Betabeers BCN
 
El hacking desde el punto de vista de la seguridad informática
El hacking desde el punto de vista de la seguridad informáticaEl hacking desde el punto de vista de la seguridad informática
El hacking desde el punto de vista de la seguridad informática
 
Firefox Next y otras iniciativas de Mozilla
Firefox Next y otras iniciativas de MozillaFirefox Next y otras iniciativas de Mozilla
Firefox Next y otras iniciativas de Mozilla
 
Introducción a SharePoint Framework
Introducción a SharePoint FrameworkIntroducción a SharePoint Framework
Introducción a SharePoint Framework
 
La nueva era de la inteligencia artificial: azure y servicios cognitivos
La nueva era de la inteligencia artificial: azure y servicios cognitivosLa nueva era de la inteligencia artificial: azure y servicios cognitivos
La nueva era de la inteligencia artificial: azure y servicios cognitivos
 
Curso Especialista Marketing Digital Empresa Digitala Bizkaia - Conceptos Ini...
Curso Especialista Marketing Digital Empresa Digitala Bizkaia - Conceptos Ini...Curso Especialista Marketing Digital Empresa Digitala Bizkaia - Conceptos Ini...
Curso Especialista Marketing Digital Empresa Digitala Bizkaia - Conceptos Ini...
 
Backbeam
BackbeamBackbeam
Backbeam
 
Tuenti release process
Tuenti release processTuenti release process
Tuenti release process
 
Herramientas y complementos al desarrollar con tecnologías Microsoft
Herramientas y complementos al desarrollar con tecnologías MicrosoftHerramientas y complementos al desarrollar con tecnologías Microsoft
Herramientas y complementos al desarrollar con tecnologías Microsoft
 
Construyendo tu propio laboratorio de pentesting
Construyendo tu propio laboratorio de pentestingConstruyendo tu propio laboratorio de pentesting
Construyendo tu propio laboratorio de pentesting
 
Dynamics saturday madrid 2018 tdd con dynamics 365 ce - jordi
Dynamics saturday madrid 2018   tdd con dynamics 365 ce - jordiDynamics saturday madrid 2018   tdd con dynamics 365 ce - jordi
Dynamics saturday madrid 2018 tdd con dynamics 365 ce - jordi
 

More from Tuenti

Tuenti Release Workflow v1.1
Tuenti Release Workflow v1.1Tuenti Release Workflow v1.1
Tuenti Release Workflow v1.1Tuenti
 
Tu: Telco 2.0 at FICOD 2011
Tu: Telco 2.0 at FICOD 2011Tu: Telco 2.0 at FICOD 2011
Tu: Telco 2.0 at FICOD 2011Tuenti
 
Tuenti - de la idea a la web
Tuenti -  de la idea a la webTuenti -  de la idea a la web
Tuenti - de la idea a la webTuenti
 
Tuenti Mobile Development
Tuenti Mobile DevelopmentTuenti Mobile Development
Tuenti Mobile DevelopmentTuenti
 
Tuenti: Web Application Security
Tuenti: Web Application SecurityTuenti: Web Application Security
Tuenti: Web Application SecurityTuenti
 
Tuenti Release Workflow
Tuenti Release WorkflowTuenti Release Workflow
Tuenti Release WorkflowTuenti
 
DTS s03e02 Handling the code
DTS s03e02 Handling the codeDTS s03e02 Handling the code
DTS s03e02 Handling the codeTuenti
 
DTS s03e04 Typing
DTS s03e04 TypingDTS s03e04 Typing
DTS s03e04 TypingTuenti
 
Tuenti Tech Teams. Frontend, Backend, Systems and more, working together
Tuenti Tech Teams. Frontend, Backend, Systems and more, working togetherTuenti Tech Teams. Frontend, Backend, Systems and more, working together
Tuenti Tech Teams. Frontend, Backend, Systems and more, working togetherTuenti
 
AJAX for Scalability
AJAX for ScalabilityAJAX for Scalability
AJAX for ScalabilityTuenti
 

More from Tuenti (10)

Tuenti Release Workflow v1.1
Tuenti Release Workflow v1.1Tuenti Release Workflow v1.1
Tuenti Release Workflow v1.1
 
Tu: Telco 2.0 at FICOD 2011
Tu: Telco 2.0 at FICOD 2011Tu: Telco 2.0 at FICOD 2011
Tu: Telco 2.0 at FICOD 2011
 
Tuenti - de la idea a la web
Tuenti -  de la idea a la webTuenti -  de la idea a la web
Tuenti - de la idea a la web
 
Tuenti Mobile Development
Tuenti Mobile DevelopmentTuenti Mobile Development
Tuenti Mobile Development
 
Tuenti: Web Application Security
Tuenti: Web Application SecurityTuenti: Web Application Security
Tuenti: Web Application Security
 
Tuenti Release Workflow
Tuenti Release WorkflowTuenti Release Workflow
Tuenti Release Workflow
 
DTS s03e02 Handling the code
DTS s03e02 Handling the codeDTS s03e02 Handling the code
DTS s03e02 Handling the code
 
DTS s03e04 Typing
DTS s03e04 TypingDTS s03e04 Typing
DTS s03e04 Typing
 
Tuenti Tech Teams. Frontend, Backend, Systems and more, working together
Tuenti Tech Teams. Frontend, Backend, Systems and more, working togetherTuenti Tech Teams. Frontend, Backend, Systems and more, working together
Tuenti Tech Teams. Frontend, Backend, Systems and more, working together
 
AJAX for Scalability
AJAX for ScalabilityAJAX for Scalability
AJAX for Scalability
 

Tuenti - tu entidad

  • 1. Tu entidad Diego Muñoz Frontend Engineer diego@tuenti.com
  • 2. Agenda • ¿Qué es Tuenti? • ¿Quién es Tuenti? • Los diferentes equipos de trabajo y qué hace cada uno de ellos • Dudas y preguntas
  • 4. En Tuenti no vendemos motos…
  • 7. Ahora en serio… * * Aunque la TV enorme + PS3 + Rock Band y eventos como irse de Paintball no son de broma
  • 8. Qué es Tuenti • Por invitación: Menos amigos, pero reales • Preocupada por la privacidad • Comentarios, Fotos, Mensajes privados, Eventos, Chat, VideoChat, Páginas/Grupos, Videos, Juegos, Sitios…
  • 9. Qué es Tuenti (en números) • +12.000.000 usuarios • +100 minutos de media de uso diario • +200.000.000 mensajes de chat / dia • +4.000.000 fotos subidas al dia en picos • +30.000.000.000 page views / mes • +35.000 peticiones web / seg. en picos • Picos de 12 Gbps CDNs incluidos • 4 Gbps desde el datacenter • +1.000 servidores • +250 empleados (de +15 nacionalidades)
  • 10. ¿Quién es Tuenti? • Tech • Frontend: • Ca$hMoney, Community, Core, Apps, Interactive, Local, Video • Mobile core, Client Apps • Tu (MVNO) • Framework/Architecture • Backend, Scalability, Stats, Images • Systems • IT • Dev-Tools • Testing Framework • QA • Design & UX
  • 11. ¿Quién es Tuenti? • Human Resources • User Support & Translation • Sales • Administration • Legal • Finances • …un gran equipo
  • 12. ¿Quién forma un equipo típico de tech? • 2+ Ingenieros de Frontend • 1+ Ingeniero de Backend • 1 Diseñador • 1 QA engineer • 1 Team Lead • 1 Product Manager • Algunos equipos funcionan más como un pool de recursos
  • 13. Equipos: Frontend • Creación de los componentes visuales de Tuenti Ejemplos: • Desde las páginas de la web a un cliente de chat en Javascript o el videoplayer… • Grupos, Tuenti Sitios… • Plataforma para juegos: Highscores, juegos recientes, invitar a amigos a juegos… • Diferentes componentes dentro de una página
  • 16. Equipos: Frontend • Trabajamos junto con diseñadores product managers, y empleamos componentes creados por backend • Trabajo en equipo • PHP, Javascript, Flash… • Tuenti usa AJAX en todas las páginas • Sensación multitarea (navegar + chat + videoplayer, todo a la vez) • Carga de páginas mas rápida • Pero… cada navegador tiene diferencias • Sub-equipos: Interactive, Core, Local, Cashmoney, Community, …
  • 17. Equipos: Mobile & Client Apps • Mantenimiento y mejora del sitio web móvil • Desarrollo de aplicaciones nativas para móviles (J2ME, Blackberry, Android y iPhone)
  • 18. Equipos: Mobile & Client Apps • Desarrollar una web móvil es más complejo de lo que parece • Markup compatible, y sin Javascript • Versión con Javascript muy limitado para teléfonos modernos • Subida de fotos via web móvil*, sin aplicación • Cada aplicación nativa presenta diferentes problemas y retos a solventar • Frecuentes actualizaciones añadiendo nuevas funcionalidades de su hermana mayor (la web) * Depende del modelo de teléfono
  • 19. Equipos: Framework • Mantenimiento del Frontend Framework actual (PHP) • Desarrollo de un nuevo Framework con un mejor Javascript, mayor simpleza, mayor rapidez…
  • 20. Equipos: Backend • Desarrollar un sistema que aguante una carga enorme de datos y de tráfico • Reducir el gasto de recursos y CPU
  • 21. Equipos: Backend • +12M de usuarios no se almacenan en una simple tabla de base de datos… Solución: Particionado (dividir datos según un algoritmo) • Proporcionar a los equipos de Frontend componentes que esconden la complejidad de acceder a granjas de servidores • Cacheo de datos: Leer de memoria es más rápido que de DB • Diseño de complejos algoritmos, como por ejemplo sugerencias de amigos
  • 22. Equipos: Dev-Tools • +8.000 ficheros fuente. Localización, despliegue en producción, entornos de pruebas… • Herramientas in-house/a medida + empleamos herramientas Opensource
  • 23. Equipos: Dev-Tools • Desarrollo local • Desarrollo contra dev. server y/o VMs • Entornos de pruebas • Entornos de pre-producción • Despliegue a producción • Herramientas de localización, chequeo de estilo y normas de codificación, comprobación de errores, minimización de código HTML, Javascript y hojas CSS…
  • 24. Equipos: Testing Framework • +7.600 tests: Unit, integration, acceptance,…
  • 25. Equipos: Testing Framework • Detectar fallos lo antes posible: Un error en producción puede quedar en un susto, pero también puede ser catastrófico • Permitir a los desarrolladores saber si su nuevo código rompe algo del resto del site
  • 26. Equipos: Quality Assurance • Tests manuales y con diferentes browsers • Reportar y gestionar bugs al resto de equipos
  • 27. Equipos: Systems • Granjas de hardware especializado: Frontends, DB, Caching, Stats,… • Monitorizar fallos de hardware, congestiones de red, caidas de procesos…
  • 28. Equipos: IT • Gestionar redes con Windows, Linux y Macs • Gestionar gente en diferentes plantas y oficinas (2 en Madrid y una en Barcelona) • Permitir trabajo remoto de forma segura
  • 29. Equipos: Design & User Experience • Asegurarse que todo Tuenti tenga un aspecto homogéneo y fácil de usar • Belleza dentro de la simplicidad
  • 30. Dudas y Preguntas ¿Te animas? http://jobs.tuenti.com