Technovation Challenge: La Transformación Digital es cosa de niñas

Tiempo estimado de lectura: 25 minutos :_)

Pues parece que se ha quedado un post muy largo, lo se. Refleja el trabajo de las Perfect Stranger Girls, un equipo de 5 niñas de 11 y 12 años durante los 4 meses que dura el Technovation Challenge: desde que se formaron como equipo, hasta que quedaron entre las 3 mejores de la categoría Junior en la final regional de Madrid en 2018. Así que merece la pena leerlo.

¿Que por qué tienes que unirte al Technovation Challenge?

“Software is Eating the World”, el artículo que publicó Marc Andreessen en el Wall Street Journal en agosto de 2011, es mi arranque habitual en charlas sobre Transformación Digital. Trata sobre cómo el software, y en general la tecnología, se han convertido en el motor del crecimiento prácticamente de cualquier sector, pero ahora lo voy a usar para hablar sobre qué puedes hacer para formar a las líderes innovadoras de mañana, y por qué tienes que hacerlo.

Software is eating the world

Evolución de las principales compañías por capitalización bursátil (visualcapitalist.com)

Precisamente estas grandes empresas de software, como Apple, Alphabet, Amazon, etc., que lideran sus respectivos sectores; que son ejes de transformación y disrupción; y que crean productos y servicios consumidos por millones de personas en todo el mundo, son también un ejemplo de desigualdad de género en trabajos técnicos.

Brecha de género

Presencia de la mujer en las grandes empresas tecnológicas (Statista)

Pero lo cierto es que no es algo exclusivo de esas empresas. Los datos en USA muestran que en el periodo de 2002 a 2016, hay un 5,5% menos de mujeres desarrollando software. La primera vez que escuché hablar del programa Technovation Challenge y de Girls for a Change pensaba, desde mi ignorancia, que viviendo en un mundo donde el software es motor de la economía y el cambio, la brecha de género en tecnología iría disminuyendo. Pues au contraire, resulta que aumenta.

Estadísticas de brecha de género

La brecha de género en el mundo del desarrollo de software ha aumentado (Brookings)

Cuando te pones a leer sobre ello, descubres que, por desgracia, se trata de una pauta decreciente que se viene observando desde hace más de 20 años. El Foro Económico Mundial calcula que Europa occidental necesitará al menos 61 años para cerrar la brecha de género. ¿Y USA? Pues USA más del doble, 158 años.

¿Qué pasó en 1984?

1984 (Quoctrung Bui/NPR)

Esta tendencia también se refleja en España. El porcentaje de mujeres que eligen estudiar carreras técnicas o ingenierías ha bajado un 1,4% en 7 años como muestran los datos que publicó El Mundo en verano de 2017.

Datos de España

En España también hay menos ingenieras (El Mundo)

Hay muchas personas inteligentes trabajando en este tema; hay gente analizando los motivos que explican por qué está pasando esto, también hay gente haciendo propuestas políticas, programas sociales, etc. Yo conocí a finales de 2017 el programa Girls for a Change, dirigido a niñas de 10 a 18 años. Su objetivo es despertar en ellas el interés por la innovación, la tecnología, y el desarrollo de software; de manera que tengan las herramientas y competencias para desarrollar su liderazgo a través de la tecnología. Lo organiza una ONG estadounidense que se llama Iridiscent, y el programa se materializa en el Technovation Challenge.

El Technovation Challenge es una competición internacional de proyectos de transformación digital que tienen que hacer en su totalidad las niñas, trabajando en grupos de 4 o 5 más o menos durante 12 semanas. El proyecto cubre todas las etapas: desde la identificación de problemas en su entorno, la ideación de soluciones, conceptualización y prototipado, desarrollo de una app, y preparación y presentación de un pitch ante un jurado. Lanzado en 2010, hasta la edición de 2017, habían participado más de 15.000 niñas de 100 países. Y por lo visto, parece que funciona. Según sus datos, el 58% de las niñas que participan se inscriben en cursos de programación o tecnología, y un 26% de las mayores eligen estudios universitarios en informática.

Equipos 2017

Equipos de Technovation Challenge (2017)

En realidad cada año van a más, y tienen más impacto. En España participaron en 2017 más de 350 niñas, y un equipo de niñas de Las Rozas consiguió llegar a la final en San Francisco. En 2018 todas las expectativas se han desbordado. De hecho en Madrid llegaron a la fase final 92 equipos, en Valencia 65, en Aragón había cerca de 40, etc.

Os voy a contar en este post mi experiencia con las Perfect Stranger Girls, un equipo de 5 niñas de 11 y 12 años (aunque la más pequeña empezó con 10) que ha quedado entre las 3 mejores de Madrid y se ha clasificado para las semifinales de España. Con ellas hemos trabajado de mentores Isabel Alonso Matey y yo, con la ventaja de que ella ya fue mentora en 2017 y se sabía el proceso, los pasos, etc. Hemos estado trabajando en las aulas que nos ha cedido el American Space de Madrid.

Como veréis, es un proceso que cubre las etapas de inception, conceptualización, diseño, desarrollo y venta, aplicando técnicas de Design Thinking, UX, prototipado rápido… Vamos como lo que hago en la vida real, sólo que con niñas, lo que lo convierte en algo completamente estimulante, inspirador, rejuvenecedor y muy divertido.

Inception

Lo primero que hicimos durante la primera sesión fue presentarnos, conocernos, y hacer un proceso de Inception. Primero para que todas tuvieran la misma información sobre para qué estaban allí, cuál iba a ser el proceso que íbamos a seguir y los pasos que teníamos que dar. Pero sobre todo para que compartieran cuáles eran sus objetivos y también sus prioridades.

Para ello hicimos dos de las dinámicas habituales del proceso de Inception:

  • Definición de Objetivos personales. Con un brain storming de los objetivos que cada niña traía. Siendo el primer día, venían muy condicionadas con objetivos del tipo “crear un mundo mejor”, “ayudar a otras personas”, “superar retos”, etc, quizá un poco por el contexto que habían recibido antes de empezar, en las charlas introductorias a technovation. No se si es la clase de objetivos que en realidad se plantean niñas de 11 años, pero bueno, no soy pedagogo ni psicólogo… Es lo que dijeron y sobre ello trabajamos. Quizá el año que viene la definición de esos objetivos sería diferente, who knows?
  • Trade-offs, o criterios de toma de decisión. Lo que hicimos fue básicamente que cada una de ellas priorizara sobre esos objetivos cuáles tendríamos que utilizar a la hora de tomar una decisión en caso de disparidad.
Inception

Objetivos y criterios de toma de decisión

En general, me gustó que este primer día ninguna de ellas venía condicionada por la parte “challenge”, es decir, aunque es una “competición” que tiene “rondas” y “finales”, ninguna dijo que esperaba ganar.

El primer día hicimos también una dinámica de generación de nombre para el grupo. Utilizamos algunas técnicas combinando sus “cosas favoritas”: nombres de canciones, grupos musicales, personajes de ficción, colores, sabores, sus propios nombres, sus iniciales, etc.

De aquí salieron dos conceptos, el primero fue RAPAZes que está compuesto por sus iniciales en un determinado orden, y su país de origen; y además suena a “rapaces”, lo que por una parte recuerda a ave de presa, y por otra, a que en el norte a los niños se les llama también rapaces. A partir de ese día, ya no había duda de en qué orden tenían que hacer las cosas o ponerse, el orden era el que formaba “RAPAZes”. El segundo concepto fue el nombre final del grupo, las PERFECT STRANGER GIRLS, que venía de evolucionar Stranger Things (a todas les llamaba mucho la atención esta serie de Netflix, imagino sobre todo que porque no les dejarían verla) a Stranger Girls, y de ahí añadieron lo de Perfect (aunque ellas no sabía que Perfect Strangers era como se llamaba lo que aquí conocemos por Primos Lejanos o la serie del Primo Balki)

Ideación

El segundo paso fue buscar un propósito para el equipo, ¿qué problema querían resolver? Al fin y al cabo, el objetivo de Technovation Challenge es identificar un problema que las niñas vean en su entorno cercano, y que sean ellas las que busquen una solución a través de la tecnología.

Technovation Challenge toma como punto de partida los Objetivos de Desarrollo Sostenible (ODS o SDG en inglés) que promueve la ONU. Así que lo que hicimos fue: primero un brainstorming general de qué cosas se les ocurría que podrían trabajar, y luego intentamos alinear esas ideas con los ODS.

Ideacion

Las niñas van como una metralleta

Bueno, deciros que disfruté en esa ideación como un enano. Las niñas enseguida entendieron que el objetivo era generar y crear ideas, y en todo caso construir unas sobre las ideas de otras. No entraron ni a juzgar ni a cuestionar las ideas del resto. Hicimos una dinámica de “me gustaría”. En media hora sacaron 40 y pico ideas, algunas tan geniales como:

  • “Me gustaría que la gente leyese más y estuviera menos tiempo con el móvil”.
  • “Me gustaría que los mayores se atreviesen a teñirse el pelo de colores divertidos que les apeteciera, y no pensasen en lo que dicen los demás”.
  • “Me gustaría crear una comida especial para que los perros cuando hagan **** cuiden y abonen los árboles”.
  • “Me gustaría tener una fábrica de OREO”.
  • “Me gustaría que las personas fuesen más valientes para conseguir sus sueños”.

Los ejes en las que las agrupamos fueron: “Erradicación de la Pobreza”, “Lucha contra el Hambre”, “Salud”, “Educación de Calidad”, “Igualdad de Género”, “Empleabilidad”, “Innovación e Infraestructuras”, “Ciudades y comunidades sostenibles”, “Consumo Responsable”, “Lucha contra el cambio climático”, “Ecología”, y “Paz y justicia”.

Filtrado de ideas

Una vez que tuvimos las ideas, hicimos un proceso de filtrado para ir convergiendo hacia la solución que íbamos a elegir. Para ello, creamos 3 ejes:

  • Cuáles contribuían a mejorar la sociedad, porque era uno de los objetivos que se habían planteado el primer día en el proceso de Inception.
  • Cuáles tenían una utilidad real desde el punto de vista práctico, independientemente de que “mejorasen la sociedad”.
  • Cuáles podían poner en práctica como parte del Technovation Challenge.
Filtrado

Filtrado de ideas en 3 ejes

¿Dónde entraba la parte de la autoridad o el criterio personal en la toma de decisión? Cada niña cogía un postit de todos los disponibles, y explicaba al resto los motivos de por qué lo colocaba en alguno de los 7 conjuntos resultantes. Como veréis en la foto, acordamos que “la que tiene el postit es su dueña”. Como resultado de esta sesión de filtrado, conseguimos pasar de 42 ideas en bruto a 18 ideas que estaban en el centro de los 3 ejes.

Sobre esas 18 hicimos una segunda ronda de filtrado. Aplicamos una técnica de consenso entre iguales, de manera que cada una de ella tenía varios gommets para “votar” entre las 18 cuáles eran las ideas con las que se sentían más cómodas, y en general, cuáles querían seguir desarrollando. Se que muchas veces se cuestiona la técnica del consenso, porque diluye la toma de decisión y la responsabilidad en el “grupo” en lugar de en el “líder”. Sin embargo, yo creo que en un contexto de voluntarismo (las niñas están allí porque quieren) y de igualdad (no existen relaciones asimétricas entre ellas) es la mejor alternativa.

Después de esta fase, quedaron 5 ideas:

  • Aprovechar las casas abandonadas o vacías para las personas sin techo
  • Luchar contra el hambre evitando tirar a la basura comida en buen estado
  • Trabajar en la igualdad de la mujer
  • Hacer la ciudad más accesible para personas con movilidad reducida
  • Conservar la biodiversidad luchando contra la extinción de especies

Elaboración de ideas

Sobre estas 5 ideas que quedaron del paso anterior, hicimos una dinámica de construcción conjunta, para elaborar más la idea y darle recorrido. Conjunta, para hacer que todas las ideas tuvieran un poco de la creatividad de cada niña, y cada niña hubiera aportado en todas las ideas. De esta manera, se consigue la adhesión de las personas a las ideas, que no son percibidas como “del otro” y por tanto se evita el rechazo. De todas maneras, estas barreras mentales yo creo que se dan entre los adultos, las niñas de 11 años no ven así el mundo.

Para ello, hicimos una adaptación del proceso SCAMPERa través de una dinámica muy apropiada para niñas, que es la técnica del cadáver exquisito.

SCAMPER son las iniciales de Sustitute, Combine, Adjust, Modify, Put to other uses, Eliminate y Reverse. Lo que se persigue es que a partir de una idea existente, se aplique alguna de las técnicas que forman parte de las siglas. El cadaver exquisito (cadavre exquis) es la técnica que usaban los surrealistas franceses para crear un texto o una imagen de manera colectiva; de forma que cada persona continúa lo que ha empezado otra, pero a partir de una visión parcial de su creación.

Cadaver Exquisito

La primera versión de la idea de DONATE

Una vez que las cinco niñas hicieron un primer ejercicio de elaborar todas las ideas, cada una cogió una y la leyó al resto. Y finalmente, tuvieron que elegir la que usarían como eje de trabajo de su proyecto de Transformación Digital.

La decisión final estuvo reñida, pero finalmente eligieron trabajar en cómo luchar contra el hambre haciendo que no se tirase a la basura comida en buen estado, poniendo en contacto directamente a las personas, empresas o restaurantes que la van a tirar con las personas u ONGs que la pueden necesitar. Una especie de Wallapop de la donación de comida.

Research

El siguiente paso que hicieron las niñas fue un proceso de investigación, en el que combinaron el acceso a información pública con datos socioeconómicos y demográficos, la entrevista con usuarios potenciales, y la investigación de soluciones existentes.

  • Identificación de datos de contexto generales, a través de búsqueda de información pública. Estuvieron buscando en Google con términos en castellano e inglés con los siguientes patrones: informes de entidades públicas, organismos internacionales y ONGs sobre cantidades de comida que se desperdicia, personas en riesgo de exclusión social, y niños que pasan hambre.
Research

¿Qué tipo de comida se desperdicia en el mundo?

  • Entrevistas con usuarios potenciales. Para ello tuvimos la suerte de contar con la ayuda de Rocío Carrasco, Amanda Fernández y Elena Flores , compis mías en Sngular. Plantearon la entrevista alrededor de varias cuestiones, como los motivos que las llevarían a donar comida en vez de tirarla, cómo les gustaría que fuese el proceso, si estarían dispuestas a llevar la comida a algún sitio o preferirían que alguien fuese a recogerla a su casa, etc. Además de posibles usuarias, resulta que Rocío trabaja en el equipo de User Xperience de Sngular creando patrones de interacción y sistemas de diseño para los canales digitales de grandes clientes; Amanda trabajaba en el equipo de DevOps montando arquitecturas en la nube y entornos de integración y despliegue continuo; y Elena, que además de diseñadora de videojuegos, trabaja conmigo en el equipo de Innovación planteando soluciones y modelos de negocio. Pensaba que podría ser inspirador que conocieran a chicas jóvenes, profesionales del mundo de la tecnología y la transformación digital.
Research

Muchas gracias Amanda, Elena y Rocío 😀

  • Análisis de la competencia. Para hacer el análisis de otras soluciones existentes en el mercado, estuvieron buscando en Google y también en la tienda de apps de Google Play. Una vez que identificaron qué apps se declaraban alineadas con objetivos similares a los suyos, las descargaron y las instalaron en un teléfono Android que les habían dejado alguno de los padres para cacharrear. Después, crearon una tabla con las principales características que habíamos planteado para nuestra aplicación, y lo que hicieron fue un benchmark, para ver qué funcionalidades estaban cubiertas en cada app, y cómo se cubrían. Las principales conclusiones a las que llegaron fue que muchas de las apps no estaban terminadas; la mayoría no daba información nutricional o sobre todo, de posibles alergias; y algunas eran para comprar y vender comida a precios más bajos.
Research

Análisis comparativo de competidores

Identidad

Veréis que las slides anteriores incluyen el nombre de la app y un isologo. Eso es porque aprovechamos el día que estuvieron mis compis para trabajar la identidad de la app. Primero estuvieron aprendiendo las diferencias entre isotipo, logotipo, imagotipo e isologo, identificando sus marcas favoritas y clasificándolas según cada categoría.

Marca

4 formas de representar una marca

Después hicieron una sesión de naming, a partir del propósito que habían definido para su app. Recordemos que tiene que ver con compartir comida para personas que la pueden necesitar. Por eso estuvieron trabajando con nombre y conceptos relacionados con la alimentación y compartir. Desde el principio les interesó la idea de hacer juegos de palabras con “eat” e “it”, que en el inglés de los españoles, pues suenan igual.

Donate

Creación del nombre DON·ATE

Quedaron dos nombre: Share + eat = SHAREAT y Don’t + Ate = DONATE. Cada una eligió cuál de los dos nombres les gustaba más y quedó encargada de la misión de preparar un representación de la marca.

Donate

Propuestas de identidad

Al final la opción con la que se sintieron más cómodas fue con DONATE. El isologo de DONATE lo hicieron en un momento con el power point, es el nombre de la app con las letras en colores que ellas eligieron, y una olla humeante. Además, se les ocurrió un slogan / call to action “DON’T WASTE, DONATE”. Como nota adicional, uno de los jueces decía que se le había quedado ese mensaje en la cabeza, jijij.

Don't waste, DONATE!

Don’t waste, DONATE!

Propuesta de Valor

El último paso que hicieron antes de empezar a diseñar la experiencia de usuario, fue terminar de recoger todos los elementos de la propuesta de valor. Para ello, aplicaron la técnica del business model canvas. Usamos la pizarra del American Space como canvas, y ellas mismas fueron complementando la información de las diferentes secciones. Algunas de las conclusiones más importantes a las que llegaron fueron:

  • Es importante mantener la información de la fecha de caducidad de los alimentos, y también de las alergias. Descubrieron que hay normas en la Ley de Información Alimentaria que obligan a informar de las posibles intolerancias alimenticias tanto en los envases de comida como en los restaurantes que venden comida elaborada.
  • También consideraron que en un modelo de relación entre personas es importante incluir un la valoración y reputación de los usuarios, al igual que hacen Wallapop, Airbnb etc.
  • En el caso de las personas que pueden estar en situación de necesidad, pensaron que no todas podrían tener un teléfono móvil ni conexión a internet, así que pensaron que las ONG podrían tener una red WiFi en sus sedes, de manera que si todas compartían el nombre de la misma WiFi (algo tipo donate_wifi) las personas podrían conectarse en esos puntos y acceder a la app.
  • Como habían visto que muchos restaurantes tienen la pegatina del búho de TripAdvisor o de Just Eat, pensaron en crear el sello DONATE para reconocer a aquellos restaurantes o supermercados que colaboran con la app.
  • Finalmente, pensaron que estas empresas u ONGs podrían crear un sistema de recompensas, para reconocer a las personas anónimas que se comprometan con DONATE. Por ejemplo, un premio podría tener que ver con donar alimentos saludables, o por llegar a un número x de donaciones, etc.
Business Model Canvas

El Business Model Canvas de DONATE

Wireframes

Una vez que estaban claras las principales funcionalidades de la app, el siguiente paso fue empezar a diseñar la interfaz para los usuarios. Para ello, les pedimos que trabajasen con sus padres en ver las apps que les gustaban (YouTube, Netflix, etc) para que identificasen qué aspectos de usabilidad a ellas le parecían relevantes.

A partir de ahí, empezamos a trabajar también en la pizarra varios conceptos. Primero hicimos una aproximación ultra sencilla a los sistemas de diseño, poniéndonos de acuerdo en cómo íbamos a representar los componentes y elementos de la app, la forma en que se iban a producir la interacción con ellos, las transiciones entre pantallas, etc.

Después fuimos funcionalidad por funcionalidad, dibujando en la pizarra una primera versión de la secuencia en que se podría producir la interacción. Como están en la liga Junior de Technovation Challenge, las reglas establecen que no es necesario que implementen toda la app, sino sus funciones principales. Por eso las pantallas y procesos clave que eligieron fueron:

  • El perfil y valoración de los usuarios. Se les ocurrió utilizar emojis de comida en lugar de estrellas para el scoring de usuarios
  • Subir a la plataforma un nuevo alimento que donar. Incluía la parte de hacer una foto, escribir la descripción y resolver cómo meter la información de alergias. La idea era tener un panel de iconos con todas las posibles alergias (gluten, pescado, etc) de manera que el usuario pudiera pulsar en aquellos elementos sobre los que quiere avisar. También habría un elemento de calendario para reportar la fecha de caducidad, la de envasado, etc.
  • El buscador de alimentos. Pensaron que el eje central de esta funcionalidad fuese un mapa donde se geoposicionasen los resultados por proximidad a la ubicación del usuario. Y que se pudiese filtrar por las alergias, fecha de caducidad, o la reputación del usuario que dona.
  • La WiFi gratis. Aquí planteaban tener una especie de catálogo de WiFi abiertas a las que se pudieran conectar las personas, indicando además en qué zonas de la ciudad estaban operativas.
  • La home de la app y el menú. Dado que es el punto de entrada a la app.
Wireframes

Wireframes de las pantallas clave

Prototipado

Una vez hechos los wireframes pasaron a la fase de hacer prototipos. Para ello usaron varias técnicas, desde hacerlos con cartulinas, a mano alzada coloreando, o con herramientas de diseño. Algunas de las herramientas que estuvieron valorando fueron balsamiq y moqups.

Lo que hicieron fue repartirse entre ellas las pantallas que habían identificado el día de los wireframes. Los prototipos pueden ser una de las entregas de Technovation, ya que para hacer la subida a la plataforma piden un esquema del proceso de cómo funciona la app.

Prototipos

Prototipos de DONATE

Los prototipos luego los usaron como guía durante la fase de desarrollo de la app.

Desarrollo

El desarrollo de los proyectos digitales de Technovation Challenge se hace con app Inventor, que es un entorno de programación visual y por bloques que desarrollaron de manera conjunta Google y el MIT. Permite trabajar en la edición de pantallas en un entorno que presenta los diferentes elementos que generalmente tiene una app, como formularios, botones, menús, imágenes, etc. Además, también ofrece mecanismos sencillos para usar otros elementos del teléfono como la cámara o el GPS.

App Inventor

Editor de pantallas de App Inventor

El mecanismo de edición visual es muy sencillo: existe una galería de componentes agrupados funcionalmente. En primer lugar, están los elementos que permiten crear interfaces de usuario: botones, check boxes, imágenes, cuadros de texto, etc. Para ordenar estos elementos en pantalla, hay una galería de componentes de Layout. La idea es que los layouts son contenedores de los elementos en pantalla, que se tiran dentro sencillamente con drag-and-drop, así que mi recomendación es empezar por transformar los mockups que se hayan preparado al layout correspondiente. Hay otra galería de componentes de Medios, donde está el componente de acceso a la cámara, otra de Mapas, Sensores donde está el acceso al GPS, el podómetro o el giróscopo, otra de Almacenamiento, donde está la base de datos local, etc.

Una vez compuesta la pantalla, se pasa al entorno de programación por bloques. El editor de código está estructurado de forma equivalente, con un área de trabajo y una zona lateral en la que se agrupan conceptualmente los elementos que se pueden utilizar. Así, las secuencias de control de flujo están entre los elementos de “control”, las expresiones lógicas en “logic”, etc. Y en cada pantalla existe una sección con el nombre del screen que se está desarrollando, donde se expone el acceso a las particularidades de los elementos que forman parte de dicha pantalla. De manera que desde aquí se accede y opera con los componentes que se han creado en el editor visual.

Bloques

Programación por bloques

La idea es de nuevo arrastrar con drag-and-drop al área de trabajo los componentes con los que se quiere construir la lógica de la pantalla. Por lo general, habrá que declarar acciones que ocurren al cargarse la app en la main screen. El almacenamiento de datos que incluye app inventor es bastante sencillo: aunque es persistente dentro de una sesión, se pierde cuando la app se reinicia. Así que por ejemplo, si hay que inicializar una base de datos habría que hacerlo en la pantalla principal. Otras acciones se lanzan al cargarse una pantalla en concreto, así que se declararán en el evento Initialize de esa pantalla. También se pueden asociar eventos que responden a las acciones del usuario en la pantalla, etc.

Por ejemplo, en la imagen anterior se muestra una forma de hacer:

  • que el componente “Cámara 1” ejecute la función “Take Picture” cuando se pulse el “botón 1”
  • que con el evento “After Picture” del componente “cámara 1” se fije el campo “Picture” del componente “Imagen 1” a la fotografía que se ha sacado
  • que cuando se presione el “botón 3” se compruebe si se ha hecho una foto, y si no se ha hecho, se muestre un mensaje al usuario en el cuadro de texto “Texto 3” diciendo que es obligatorio hacer una foto de la comida que se va a donar.

Veréis que la programación no es demasiado ortodoxa, lo importante es que la han hecho las niñas. Hemos primado que hicieran el proyecto a su manera por encima de seguir patrones y modelos de desarrollo. Por ejemplo, usamos una variable local a la pantalla para controlar si se ha hecho o no la foto, podríamos haberlo hecho de otra manera, pero así matábamos dos pájaros de un tiro: la guía de evaluación de Technovation Challenge indica que hay que usar variables.

Efectivamente, existe una guía de evaluación de código de las app, donde se comprueba que se hayan usado al menos 4 de 7 posibles “componentes”, una base de datos, al menos uno de los dispositivos del teléfono, etc.

Para hacer las pruebas, hay que instalarse el MIT AI2 Companion en Google Play, y que a partir de ahí te instalas y sincronizas con el editor. También se puede sincronizar con un emulador de Android que te instales en el ordenador, pero es más gratificante probarlo en un teléfono. Cuando nosotros empezamos, no había una versión del App Inventor para iOS, aunque al parecer están en ello. Cuando está terminada la parte de pruebas, se puede empaquetar la app en un pkg que dejar instalado en un smartphone, o incluso subirlo a Google Play.

Por último, un par de cosas importantes a tener en cuenta durante la parte de desarrollo y que a nosotros nos dieron mucha guerra:

  • Para sincronizar la app con el teléfono y hacer pruebas, tanto el ordenador con el que se trabaja como el smartphone deben estar en la misma WiFi. Nosotros trabajábamos en el American Space y había varias WiFis, como cada día nos conectábamos a una a veces al conectarse y desconectarse de red se perdía la sesión de depuración.
  • Cuando estuvimos con la parte de desarrollo, App Inventor no soportaba que varias personas editaran con la misma cuenta el mismo proyecto de manera concurrente. Tuvimos varias situaciones en las que estuvimos a punto de perder el trabajo. Esto es un poco incordio; ya que un “proyecto” está asociado a una cuenta, y App Inventor permite exportar e importar “proyectos” pero no vimos la manera de exportar e importar “pantallas” o hacer un merge de “proyectos”. Es decir, no podía trabajar cada una en una pantalla y luego juntarlas todas, porque una “pantalla” pertenece a un “proyecto”. Al final tuvimos que trabajar en modo Peer Programming, cuando lo divertido para las niñas es precisamente crear pantallas, hacer las interacciones, y ver qué pasa.

Vídeos de Presentación

El reto Technovation también requiere preparar dos vídeos: uno en el que se recoja el uso de la app a modo de demostración, y otro en el que se haga el pitch. Ambos en inglés.

Para el primero, las chicas prepararon un guión que recogía en orden en que se navegaba la app y la explicación de las diferentes funcionaldiades. Después, una iba navegando por las diferentes pantallas haciendo las operaciones mientras otra, a modo de voz-en-off, iba narrando el propósito y el uso de DONATE.

Para el vídeo de presentación de DONATE, prepararon un guión un poco más largo. Las chicas hicieron un vídeo de 2 minutos y medio, en el que empezaban por introducir el problema en el que habían decidido trabajar, presentando los datos que encontraron durante la fase de research, y los elementos clave de la descripción de la app (aplicando la técnica de las 6W que veremos más adelante). Después, aprovechando el entorno del American Space, hicieron una serie de situaciones que recogían los diferentes casos de uso del sistema. Así, grabaron por una parte el papel de las ONGs como nexo sobre el que gira la mayor parte de las acciones del sistema; después también a los RESTAURANTES o TIENDAS que eligen colaborar con DONATE subiendo a la app la comida que les sobra al final del día; y finalmente a las PERSONAS comprometidos con la acción social. Después grabamos la escena en la que estas personas acuden a la ONG para entregar la comida, y cómo la recogería un NECESITADO. El modelo también podría ser P2P, entre la PERSONA y el NECESITADO, pero bueno, se ajustaron a la localización que teníamos para grabar.

Video

Hitchcok no era el único que hacía cameos

Los vídeos los editaron con la versión gratuita del Power Director directamente desde una tablet, y los subimos a YouTube para presentarlos al jurado, aunque están dados de alta como privados, sólo visibles a las personas con el link.

Pitch y Validación

La última parte fue preparar el guión de la presentación del proyecto, que corresponde con otro de los entregables de Technovation Challegne. Para ello las chicas trabajaron de forma colaborativa en crear un discurso que recogiera: quiénes eran las Perfect Stranger Girls, el research que justificaba el problema que habían identificado, una visión general de la forma en que habían pensado resolverlo, los diferentes usuarios a los que se dirige Donate y qué les aporta a cada uno, una presentación de alto nivel de la app, y finalmente el benchmark de las apps equivalentes que hay en el mercado y por qué Donate es diferente.

Primero lo escribieron en castellano, y lo pasaron a inglés cuando tenían claro lo que iban a contar y cómo iban a contarlo.

Después, prepararon un guión sobre cómo exponer la presentación, y qué parte debía cubrir cada una. Para ensayar la presentación, se nos ocurrió pedir ayuda a dos personas que podían echar una mano a las chicas a la hora de hacer un pitch. Y no sólo ayuda a pulir la presentación, sino que tuvieran una experiencia previa de exponer su idea ante unos desconocidos que la van a valorar, con la esperanza de que el día de la presentación al jurado estuvieran más tranquilas.

Pitch

Ensayando el pitch de Donate

Así que tuvimos la suerte de contar con la ayuda de  Luis Ramasco, que trabaja en el área de Imagen de Aldeas Infantiles. Al tratarse de una ONG cuya acción directa se destina a niños, podría ser un ejemplo de entidad que llegase a darse de alta en Donate. Así podrían validar la propuesta de valor de su idea / modelo ante un posible usuario. También nos acompañó Carmen Bartolomé, que además de haber lanzado varios proyectos de emprendimiento, también trabaja habitualmente con niños. Por tanto ella, como persona que ha tenido que buscar financiación para sus proyectos, podía orientar a las niñas a la hora de exponer su idea y destacar aquellos aspectos que la hacen viable y atractiva para inversores. Estuvieron con nosotros toda una sesión de trabajo, las chicas tuvieron tiempo de hacer 3 o 4 presentaciones, y la verdad es que notaba cómo mejoraba la presentación en tiempo real. De todas maneras, tuvieron todavía una sesión adicional para retocar el guión de la presentación y hacer que sus intervenciones y el paso que se daban unas a otras fuera más natural.

Otras actividades

  • Retrospectivas. Al acabar algunas sesiones de trabajo de los viernes, hacíamos retrospectivas para que las niñas compartieran su sensación con el proceso que estábamos siguiendo. En algunas ocasiones, aplicábamos la dinámica de la estrella de mar, que consiste en crear 5 sectores en los que se apuntan aquellos aspectos que hay que “mantener” (es decir, seguir haciendo), “empezar a hacer” (cosas que no se hace y que debería), “hacer más” (algo que parece valioso y que por tanto hay que potenciar), “hacer menos” y “dejar de hacer” (algo que no aporta valor o que obstaculiza el trabajo). Una vez hechos los sectores, los íbamos recorriendo y cada una de ellas compartía su punto de vista, que quedaba recogido y que intentábamos tener en cuenta en las siguientes sesiones. En otras ocasiones, las chicas usaban el medidor del diverómetro, que consistía en un marcador de 0 a 100, donde 0 era el aburrimiento absoluto y 100 la diversión máxima, y cada una ponía un score (solía estar en el 100 o por encima jeje)
  • Descripción de la App. El challenge les obligaba a presentar una descripción en menos de 100 palabras en inglés de qué es DONATE. Para hacerla, planteamos una dinámica de noticia periodística; yo recuerdo que me explicaron en el instituto el tema de las famosas 6Ws que tenía que tener una noticia en un periódico: What, When, Who, Why, Where y hoW… Cada una de las niñas hizo una frase que respondiera a una de esas preguntas, las pusimos en común y cuando todas se sintieron cómodas con la descripción y no quedaba ninguna de las 6 por responder, las pasamos a inglés.
  • Póster del proyecto. El evento de presentación de Technovation Challenge es una especie de feria tecnológica, en la que se destina un gran salón para que las niñas expongan sus proyectos. En 2018 hubo un total de 92 equipos, que se repartían en mesas de 3 equipos. En cada mesa, los equipos ponían un “poster” de exhibición de su proyecto. Las chicas lo hicieron a partir de las slides del documento de presentación, la verdad es que quedó super sencillo. Otros equipos llevaron regalos para los asistentes (pulseras, caramelos…), incluso había auténticos festivales de repostería (bizcochos caseros, muffins…) y despliegues de tecnología (terminales para probar la app, etc) En fin, sacamos muchas ideas para la feria, aunque tuvimos un stand muy discreto, en realidad esta exhibición no forma parte de la valoración del jurado.
  • Entorno colaborativo. Utilizábamos Google Drive para subir los materiales que íbamos generando en cada sesión, así como los que iban trabajando en casa; y Google Presentations para preparar el docu de presentación.

Technovation Challenge 2018

El 12 de Mayo, en el Auditorio de Leganés de la Universidad Carlos Tercero de Madrid tuvo lugar la final regional del Technovation Challenge. La verdad es que el evento fue impresionante y muy muy emocionante. Participaron un total de 92 equipos de las divisiones Junior y Senior, con equipos que vinieron de otras partes de España (Galicia, Canarias y Murcia). Ver a todas esas niñas con sus proyectos de transformación digital, el auditorio lleno, una pasada. Enhorabuena a Lorena Martín por todo lo que ha movido en términos de participación, a todos los mentores que ha reclutado, a los jueces, patrocinadores, la verdad es que una pasada.

Las Perfect Stranger Girls hicieron su presentación a medio día, ante un jurado compuesto por 5 personas que debía valorar de acuerdo a los criterios generales aspectos como la claridad y la viabilidad de su idea, la solución técnica presentada, o la claridad y argumentación de la defensa de su proyecto.

Pitch

Presentación ante el Jurado

Para mí fue muy emocionante ver a las chicas defender el proyecto Donate delante del jurado, cómo hicieron la exposición y respondieron a algunas preguntas que les hicieron, que obviamente las tuvieron que responder por sí mismas “en tiempo real”. El jurado les dio la enhorabuena tanto por la idea, como por su exposición, y todos les dijeron que el slogan que se habían inventado “Don’t waste, Donate!” les había resultado muy pegadizo.

Después llegó la espera hasta conocer los resultados del jurado. Fue un momento de mucho nerviosismo, aunque el primer día habíamos quedando que el objetivo que tenían las chicas era divertirse y aprender, pues estando allí quién más quién menos, todo el mundo esperaba ganar. Y bueno, después de una larga espera empezaron a decir los nombres de los ganadores, y tuvimos un momento Oscars 2017. Anunciaron por orden alfabético los tres equipos ganadores de la final regional de Madrid, y llamaron al equipo “Perfect Strangers”. Sabíamos que “Stranger Things” había tenido tirón, porque otro equipo se llamaba “Stranger Girls”, así que no sabíamos a quién habían llamado y nos quedamos en nuestros sitios con una sensación un poco agridulce 😦

Perfect Stranger Girls

Las Perfect Stranger Girls on stage

Pero entonces la organización, al ver que sólo habían bajado dos equipos, aclaró que el nombre correcto del equipo era “Perfect Stranger Girls”, OMG!

Así que las chicas tuvieron que bajar corriendo al estrado, recoger su premio, y presentar Donate delante de un auditorio que estaba lleno. Fue una pena que no pudieran todas disfrutar de su momento, porque una había tenido que irse a una Comunión.

One more thing…

Como os podéis imaginar, para mí todo esto ha sido una de las mejores experiencias que he tenido últimamente. Trabajar con las niñas es algo divertido, refrescante y rejuvenecedor. Verlas trabajar como un equipo, sin prejuicios, respetándose, dejando decisiones sin tomar los días que no estaban todas juntas… Y bueno, pensar que quizá he podido impactar en su vida de alguna manera positiva, y que quién sabe, lo mismo de mayores eligen estudiar una carrera técnica y trabajar en tecnología.

Yo os recomiendo a todos los que me estáis leyendo que el año que viene os impliquéis con el programa Technovation Challenge. Apuntando a vuestras hijas, si las tenéis. O contándolo en los colegios o en las AMPA. O como entrenadores de un equipo, o como jueces, o patrocinándolo. En fin, como sea. Merece la pena formar parte de este movimiento.

Actualización 05/06/2018

La sección de tecnología de la Segunda Edición del Telediario de la RTVE se hizo eco de DONATE

 

Anuncios

Cómo construir un eCommerce Singular. Capítulo 2, El Monolito

Aunque es verdad que a veces hacer las cosas mal cuesta más que hacerlas bien, nadie se propone de manera consciente construir un sistema de software que sea ineficiente o inmantenible. Simplemente, pasa. Algo se desarrolla pensando en resolver un problema; pero el problema va cambiando, o creciendo; y entonces se van añadiendo nuevos módulos, nuevos componentes, o se añade funcionalidad sobre algo que ya existía, y la cosa se termina por complicar.

Frankenstein, o el Nuevo Monolito

Un sistema de software donde todos sus elementos están fuertemente acoplados y además está autocontenido y se ejecuta como un sistema único puede llegar no sólo a ser difícil de mantener y evolucionar, sino que también podría no ser capaz de mantener su rendimiento y eficiencia cuando aumenta su uso y por tanto las interacciones, lo que viene conociéndose como escalar.

El concepto de acoplamiento en términos de ingeniería del software hace referencia a la dependencia que tienen diferentes partes de un sistema, a la hora de realizar la función para la que fueron diseñadas. Aunque es normal que cuando se construye un sistema, haya partes que necesiten de otras para realizar ciertas tareas, la forma en que esta dependencia se construye podrá hacerse con mayor o menor acoplamiento. Por ejemplo: el caso de un formulario en una web que acaba insertando información en una base de datos. Puede hacerse con cierto desacoplamiento cuando los datos de los formularios viajan por diferentes capas / componentes que los piden, los recogen, los validan y los procesan cada uno como corresponda; o muy acoplada cuando un único componente coordina la operación, y le va pasando al resto no sólo los datos, sino instrucciones sobre qué hacer con ellos y cómo hacerlo.

Monolito Obelix

UX Designer FullStack Developer DevOps as a Service

Tradicionalmente, se define un sistema Monolítico como aquél en el que todas las capacidades de representación, procesamiento y almacenamiento están entrelazadas, y son gestionadas como una única unidad de ejecución, prevista para correr en un único servidor. Es decir, una única aplicación contiene y es responsable de todas sus funcionalidades.

Hay muchos motivos por los que alguien acabaría teniendo un sistema Monolítico. Estadísticamente yo diría que de menor a mayor probabilidad, serían cuatro.

Primer motivo: porque alguien lo habría diseñado así intencionadamente.

En esta categoría podemos meter por ejemplo el llamado “Majestic Monolith” (no hace falta traducción) de Basecamp. En un artículo de 2016, David Heinemeier presenta el concepto Majestic Monolith para referirse a la forma en que Basecamp está construida. Los conceptos subyacentes a esta decisión de arquitectura son: eliminar abstracciones innecesarias, y hacer distribuidas únicamente las partes del sistema necesarias. Básicamente defiende que es la mejor alternativa en el escenario de un equipo reducido de desarrolladores (12), con experiencia y criterio, que conocen y entienden el código del sistema; código que se ha escrito con criterios de simplicidad, limpieza y orientación a la prueba. Teniendo en cuenta que este hombre creó Ruby on Rails, parece que es una decisión razonada que le permite mantener y evolucionar un sistema que en 2018 tiene más de 2,8 millones de cuentas registradas, accesible desde 6 plataformas.  

Segundo motivo: porque estaba mal diseñado.

Asumamos como cierto que las personas que han estudiado una carrera de informática (técnica o superior; en la universidad o en la FP, o como se llamen ahora respectivamente, que yo no estoy muy al día) han recibido los conceptos y bases necesarios para diseñar arquitecturas de software. Asumamos también como cierto que otras personas que no han estudiado en las universidades o centros de formación profesional pueden adquirir conocimiento a partir de la experiencia, la lectura de documentación y el aprendizaje autodidacta o desde un referente. Asumir estos planteamientos significa partir de la base de que las empresas ponen a diseñar arquitecturas de software a personas que saben como hacerlo, que han leído, conocen patrones de referencia, y quieren hacer bien su trabajo.

Sin embargo, shit happens. Como decía al empezar este post, no creo que nadie diseñe de manera consciente sistemas para que sean ineficientes o no escalen; simplemente a veces se toman las decisiones erróneas. En 2013 tres investigadores de la universidad de Groningen (Holanda) D. Tofan, M. Galster y P. Avgeriou publicaron un paper en el que analizaban las causas por las que un Arquitecto de Software llegaba a tomar malas decisiones a la hora de plantear una solución técnica.

D. Tofan, M. Galster y P. Avgeriou, ECSA 2013

Como resultado del estudio, llegaron a varias conclusiones, aunque a lo mejor no todas sorprendentes e inesperadas:

  1. El principal motivo que lleva a tomar decisiones erróneas a la hora de hacer una arquitectura de software es la dependencia con otras decisiones ajenas a la decisión técnica en sí; seguido por el impacto que una decisión a priori técnica tenía en el negocio. Es decir, al propósito por el que se está construyendo el software en la organización, en el caso de un eCommerce: ganar dinero vendiendo cosas por internet.
  2. Por el contrario, que hubiera demasiadas alternativas o muchas personas en el proceso de toma de decisión no se consideraban motivos relevantes de un diseño mal planteado.
  3. Existe una diferencia entre los motivos que detectan los arquitectos de software según su experiencia. Los que tenían menos de 5 años de experiencia consideraban problemático tener que enfrentarse a criterios y recomendaciones contradictorias a la hora de tomar una decisión, y que cuanto más había que pensar, más difícil les resultaba decidirse. Por el contrario, los arquitectos de software con más de 5 años de experiencia no daban importancia a estos conceptos, sino al tema del contexto y el negocio (lo cual hace inevitable resucitar la paradoja del Arquitecto de Software Junior)
  4. El tiempo medio que se se consideraba necesario para tomar las decisiones de diseño de una arquitectura de software era de 8 jornadas de trabajo. Paradójicamente, el estudio también apunta a que los arquitectos de software con menos experiencia tardaban la cuarta parte en tomar decisiones de diseño (de ahí el refrán acerca de la ignorancia y el atrevimiento)

Tercer motivo: porque estaba bien diseñado, pero en algún momento las cosas se torcieron.

Se que al final se me hacen unos post muy largos, que a veces abro muchos temas y demás, pero es que hay que hablar de la deuda técnica. Más allá de que nos guste más o menos el término, o su sentido; en el contexto de este post voy a usarlo porque me parece la forma más universal de hacer referencia a la degradación que sufren los sistemas durante su desarrollo y evolución. Puede que se partiese de un sistema bien definido y planteado, pero con el paso del tiempo la aplicación acaba siendo ponzoña. ¿Por qué? De nuevo, es algo que nadie quiere que ocurra de manera intencionada, yo creo en la buena fe de las personas. Pero ocurre.

Por lo general, el código de un sistema se degrada poco a poco, como respuesta a situaciones del tipo “me ha quedado complicado, pero ya lo arreglaré más adelante”, “no tengo tiempo para hacer las pruebas”, “este fallo debe ser un Expediente X, porque suele funcionar”, etc.

En 2015, Neil Ernst del Software Engineering Institute de la Universidad Carnegie-Mellon publicó un estudio / paper sobre los motivos de por qué sucede esta degradación. Os comparto la gráfica que me parece más relevante. Es bastante auto-explicativa, la verdad.

Neil Ernst, SEI 2015

Cuarto y último motivo: porque no sabía que se lo estaba comprando.

Creo que es lo más normal, y suele pasar cuando alguien compra un producto mirando los Cuadrantes que publican los analistas de negocio, o porque nobody ever was fired for buying IBM, o porque las demos de jugar estaban bien, etc. En lugar de hacer una due diligence tecnológica como Dios manda.

¿Qué hace aquí este Monolito?

El esfuerzo e interés por desarrollar aplicaciones desacopladas no es algo nuevo, y forma parte del corpus teórico de la ingeniería del software desde sus inicios. En el caso que nos ocupa en este contexto, que es el eCommerce (algo inherentemente ligado a la Web y en los últimos años al móvil) las arquitecturas en tres capas (presentación, lógica de negocio y datos) y el Patrón Model-View-Controller han sido la forma habitual de construir sistemas con bajo acoplamiento.

No sólo desde el punto de vista de la construcción, ya que al separar de forma conceptual las distintas partes del sistema es más fácil actuar sobre ellas; sino desde el punto de vista de la infraestructura que las soporta, con el objetivo de mejorar el escalado y el rendimiento. Poder empaquetar y desplegar cada una de las capas en servidores diferentes permite al sistema escalar de manera independiente cada capa cuando se producen los picos de acceso al sistema (cuando hay ventas privadas, o campañas como Rebajas, San Valentín, Navidades o el Black Friday) Por eso es bastante habitual ver infraestructuras donde se ha separado la parte de presentación en unos servidores optimizados para servir el front, complementados con un CDN para los estáticos (las imágenes, vídeos, etc), la parte que hace la lógica de operaciones en servidores de aplicación, y otra capa con la base de datos en alta disponibilidad.

Monolito Scrum

El equipo Scrum hace sus dailies frente al Monolito

Sin embargo, dejadme que os diga que la primera referencia a patrón MVC se remonta a finales de los 70. Y la idea de crear una arquitectura en 3 capas para construir aplicaciones cliente / servidor es de mediados de los 90. Así que, ¿a qué nos referimos hoy en día cuando se habla de un Monolito? Porque es lógico suponer que la mayoría de los eCommerce Singulares, que es de lo que va esa serie de posts, se han construido bien sobre plataforma, bien a medida, siguiendo arquitecturas y patrones que desacoplan al menos las capas de presentación-negocio-datos.

Bien. En primer lugar, aunque la tienda como tal esté desarrollada en 3 capas, puede que la capa de lógica de negocio (o back-end) se haya construido como un Monolito. Significaría que es un bloque único que recibe las peticiones de la parte del cliente (web o móvil o por qué no, un botón IoT), hace cierta lógica (como una búsqueda de productos según un criterio,  o añadir un elemento al carrito) y genera la información que se renderizará en la capa de presentación a modo de respuesta. Entendido de esta manera, el servidor puede estar construido de manera modular, con sus elementos desacoplados en paquetes y clases, de forma que tenga su componente de carrito, otro de catálogo, etc. Pero lo cierto es que al final todas importarán las mismas librerías con las mismas dependencias, compartirán el mismo modelo de almacenamiento de datos en sesión, y  la misma política de persistencia.

También el back-end de la aplicación puede considerarse un monolito si se empaqueta como un único artefacto. Podría llegar a desplegarse en varios servidores, lo que le permitiría escalar en caso de aumento de peticiones. Pero es una única unidad lógica; de forma que en caso de ser necesario hacer una modificación, hay que volver a compilar, empaquetar y desplegar toda la parte servidora, haya o no sido actualizada. Y una vez que se empaqueta, la misma versión es la que se despliega (y por tanto se ejecuta) en todos los nodos de la infraestructura. Al hacer el despliegue, aunque sea por nodos, es necesario reiniciarlos. En la medida en que haya un entorno distribuido con alta disponibilidad y persistencia compartida de sesiones, los usuarios podrían no verse afectados; sin embargo, tareas programadas o procesos de sistema (como sincronizaciones de inventario, confirmaciones de pago, o envío de newsletters) que estuvieran ejecutándose, se perderían. Por eso muchas veces hay que hacer las actualizaciones de manera programada, lo que es una barrera para llegar al despliegue continuo.   

Y el artefacto que se despliega en cada nodo, se ejecuta en un mismo entorno, compartiendo la misma configuración y el espacio de memoria y en general, los recursos del nodo. Cuanto más pesado sea, más tiempo tardará en arrancar y mayores recursos necesitará. Por tanto, todos los servicios o end-points del artefacto están replicados por igual en cada nodo y acceden a los mismos recursos del sistema, con independencia de la frecuencia con que se usen para resolver las tareas del sistema. En todos los servidores se ejecutan réplicas idénticas del back-end, capaces de hacer las mismas operaciones de lectura y escritura contra la base de datos; por tanto lo normal es que escalar la capa de negocio conlleve escalar la capa de datos.

Cuando alguna de las partes de tu sistema se ha convertido en un Monolito lo normal es que tengas algunas desventajas, que veremos a continuación.

Cosas malas que pasan cuando tienes un Monolito

Desde el punto de vista del desarrollo, cuando todo el back-end de una plataforma (y en este artículo estamos hablando de un eCommerce Top 100) está construido como un Monolito, se producen unos efectos indeseables que impactan en la productividad y eficiencia del equipo. ¿Por qué?

Porque todo el equipo de desarrollo del back-end trabaja sobre el mismo artefacto. Cuando hay demasiada lógica de negocio en la misma capa, es normal que se rompa la modularidad de los componentes con el paso del tiempo, conforme se van haciendo extensiones del producto, o se corrigen errores. Por ejemplo, añadir un nuevo medio de pago a un eCommerce puede afectar: al módulo desde el que se procesan los pagos, al que renderiza el selector de medios de pago durante el proceso de checkout, al que gestiona el medio de pago favorito en el perfil del usuario (necesario para los one-click-payments), etc. Eventualmente llega un momento en que el sistema es una maraña y es costoso tener una visión global de cómo funcionan las cosas.

Como además el back-end es un único componente que se carga completamente, los entornos de desarrollo son cada vez más costosos de arrancar, se tarda más tiempo en compilar y en ejecutar y depurar en local. Esto hace que cada vez los ordenadores para el desarrollo requieran mayores prestaciones; algo que no siempre es posible conseguir porque puede llegar a  chocar con las políticas de actualización de los departamentos de tecnología, o los responsables de compras. ¿Alguna vez habéis visto a personas cronometrando cuánto tiempo tarda en arrancar el Eclipse, o cuántas horas pierde al día mientras espera en las compilaciones? Yo sí, y es muy lamentable.

Un back-end que acaba siendo un Monolito hace que todos sus componentes y módulos que se despliegan como un mismo artefacto, estén ligados a un lenguaje de programación específico, y a unas determinadas versiones no sólo del framework de desarrollo, sino de las librerías que se importan. Los cambios de versiones son más costosos, porque se hace necesario validar el impacto que puede tener el cambio de librería en todo el sistema como un conjunto (en lugar de en partes concretas donde el cambio puede tener más sentido). Eso por no hablar de cambiar de stack tecnológico. Un proyecto de refactorización de un sistema para ir aliviando la deuda técnica, puede ser una inversión en tiempo y dinero difícil de justificar ante el responsable de asignar recursos económicos a los proyectos.

Monolito Asuán

Antes de levantar este monolito de 36m y 150 toneladas se rompió la build. Por eso se llama El Obelisco Inacabado de Asuán

A la larga, todo esto unido significa que se incrementa la curva de entrada de las nuevas incorporaciones al equipo, con lo que aumenta el tiempo que necesita una persona para hacer trabajo productivo. Cuando el tamaño del equipo de desarrollo alcanza un nivel importante, y estamos hablando de un eCommerce Top 100 (no de la demo de la tienda de mascotas), aumenta el esfuerzo de coordinación de los diferentes subproyectos / extensiones que se van haciendo en paralelo. Esto puede llegar a hacer difícil segregar las responsabilidades de los diferentes equipos, y por tanto su autonomía e independencia; y complicar el modelo de gestión de los diferentes proyectos / equipos. Podemos añadir a esta ecuación que las personas pueden estar distribuidas en diferentes localizaciones, cosa habitual en los tiempos que corren.

Desde el punto de vista del delivery, actualizar un sistema Monolítico requiere recompilar toda la aplicación, volver a empaquetarla y redespeglar. Al ser una sola pieza, hay que parar todo el sistema por completo para hacer la actualización.

Además, si llega el caso en que el sistema tiene que escalar, es necesario hacer que escale todo el monolito al completo; en lugar de aumentar la capacidad de aquella parte del proceso / operación que realmente lo necesita. Lo que lleva a aumentar la capacidad (procesamiento, memoria, almacenamiento) del servidor en el que corre, y podría no ser la estrategia de infraestructura más óptima en términos de inversión.

Finalmente, una vez que empiezan a dar servicio, en caso de que se produzcan errores, el proceso de depurarlos e identificar dónde se está produciendo el error puede llegar a ser complejo debido al acoplamiento. Es cierto que desde hace años (de cuando yo programaba) ya están inventados los IDE de desarrollo que se conectan a un servidor y permiten hacer depuración en tiempo real, y esto ayuda a encontrar los errores. Sin embargo, cuanto mayor sea el acoplamiento, y más pesado el entorno de desarrollo y sus dependencias, más implicaciones puede tener encontrar y depurar un error, corregirlo y validar la solución, por el efecto secundario que pueda tener en otros componentes.

Cuando existe fuerte acoplamiento entre los elementos de la aplicación, lo normal es que no se haya logrado separar operaciones y reutilizar código. De forma que cuando hay que modificar o corregir cualquiera de sus funcionalidades, se requiere primero entender cómo el cambio puede afectar a sus diferentes partes; y lo que es peor, identificar todos los puntos en los que se tendría que replicar la actualización.

¿Entonces?

Esta casuística la comparten centenares de plataformas y sistemas de software; y la extienden a los centenares de miles de sites de comercio electrónico por todo el mundo construidos sobre ellas. Podríamos pensar que tampoco pasa nada, que no van a morir niños de hambre en el Tercer Mundo, ni vamos a prolongar el Cambio Climático (y eso sí que son problemas de verdad).

Monolito Obelix Happy

Pues me siento más ligero sin mi Monolito

Recordemos: estamos hablando de construir un eCommerce Top 100, uno que se espera que sea referente de su sector porque lo va a construir una empresa líder. Si a tu eCommerce le vas a exigir facturar millones de euros al año; operar en decenas de países; recibir miles de peticiones concurrentes de personas de todo el mundo; conocer en tiempo  real el stock de artículos y tallas; y cerrar procesos de compra con seguridad. Y por qué no, conseguir finalizar las transacciones en ese milisegundo que es la diferencia entre comprar o quedarte sin stock.

Hoy en día tiene cierta madurez y solvencia la aproximación tecnológica que permite dividir el back-end de la aplicación en partes más pequeñas, especializadas en hacer una única tarea, cada una con su propia capacidad de desarrollarse, desplegarse y escalar por separado. Con su propia arquitectura, consumiendo los recursos que necesita, y gestionando únicamente aquellos datos sobre los que tiene responsabilidad. Pero antes de hablar sobre cómo materializar este planteamiento en una arquitectura de microservicios, habrá que saber cuáles son los elementos que tiene que tener un eCommerce Top 100. Y eso lo veremos en el siguiente capítulo.

(Continuará…)

(Espero que antes de 6 meses)

Cómo construir un eCommerce Singular. Capítulo 1, El eCommerce Top 100

Introducción

Comienzo aquí una serie de posts sobre cómo construir un eCommerce Singular, candidato a estar en un listado de Top 100, utilizando una arquitectura de microservicios. Son dos de los temas a los que dedico mi atención últimamente en Sngular. En cierta medida es normal: por una parte Sngular es una empresa que lleva construyendo tiendas online prácticamente desde sus orígenes como MediaNet, a mediados de los años 90. Algunos de los proyectos que hemos hecho son www.lolamarket.com , el caso de ModeloNow de Grupo Modelo (ahora https://www.pepedelivery.com/), https://www.cuidadoconelperro.com.mx/ y sus dos millones de fans en Facebook, cuando hicimos Planeo.com del Grupo PRISA, y por encima de todos ellos, el caso de BuyVIP y su posterior adquisición por Amazon. Por otra parte, porque los compañeros del área de Arquitectura llevan ya unos años construyendo soluciones basadas en microservicios. Empezamos en entornos de banca, pero la realidad es que se trata de una aproximación que cada vez tiene más adopción a la hora de construir grandes sistemas distribuidos, que gestionan miles de transacciones al día y que tienen que responder y escalar ante picos de carga.

Total, que me parecía interesante compartir algunas reflexiones. El hilo argumental que voy a seguir se materializa en los siguientes capítulos:

  • ¿Qué es un eCommerce Top 100 y por qué hay que hacerlo a medida? Donde vamos a repasar los diferentes tipos de sites de eCommerce que construimos en Sngular, los criterios de cualificación con los que los clasificamos, y sobre todo, qué es lo que nosotros consideramos un eCommerce Singular. Aprovecharé para compartir algunos datos que me parecen relevantes a la hora de enunciar nuestra definición, y que además, son la clave de la argumentación de los 3 motivos por los que siempre vamos a recomendar hacerlos a medida.
  • El bloque Monolítico. Una de las principales áreas de trabajo y evolución de la disciplina de la Arquitectura de Software es la creación de sistemas desacoplados, que combinen la eficiencia en el consumo de recursos para producir resultados, la capacidad de escalar ante los picos de carga del sistema, y que puedan ser extendidos y mantenidos por un equipo de desarrollo. Desde los años 90 existe el patrón de 3 capas (presentación, negocio y datos) que aplican todos los eCommerce del mundo, pero un back-end puede terminar por convertirse en un Monolito, y eso podría ser una barrera para el crecimiento / rendimiento de un eCommerce Top 100. Por cierto, que hay empresas como Basecamp o Etsy que defienden sus arquitecturas de Monolito Majestuoso; también hablaremos sobre ello en los Apéndices.
  • Los elementos de un eCommerce. Para crear una arquitectura de referencia de microservicios sobre la que construir un eCommerce Singular, hay que tener una idea de los elementos estarán presentes en la tienda online. En este capítulo haremos un benchmarking de sites que servirá posteriormente como base para plantear la arquitectura. Me refiero a aspectos como la gestión de múltiples países, el registro de usuarios, el catálogo, las páginas de producto, las recomendaciones, el proceso de checkout, el pago en one-click, la integración de medios de pago, etc. Para escribir sobre esto intentaré engatusar a Farid Fleifel y Javier Cuervo.
  • Arquitectura de Microservicios de Referencia. Donde se presentará un modelo de arquitectura que contenga los elementos descritos anteriormente, y un planteamiento de muy alto nivel sobre qué tecnologías utilizar para construirlos. Se que muchos pensaréis que qué coño voy a contar sobre esto si la última vez que abrí un Eclipse fue en 2009, pero no os preocupéis porque en este capítulo espero contar con la visión de César Camargo, Eugenio Concepción, Iñaki Reta, Daniel Castilla, y el resto de compañeros del equipo de Arquitectura de Sngular. (Puede que os parezca un truco sucio dejar sus nombres por escrito, pero así es la vida¯\_(ツ)_/¯  )
  • ¿Cómo hacer la transición? En el último capítulo haremos una pequeña revisión de diferentes estrategias para hacer la transición de un sistema a una nueva arquitectura de microservicios, sin pérdida de continuidad del negocio (sin dejar de vender, vamos). Lo que viene siendo el símil de cambiar el motor del avión en pleno vuelo.

En fin, es un reto ambicioso porque me salen unos cuantos posts. Pero bueno, lo mejor es empezar por el principio. Así que vamos a ello. Espero que os parezca interesante 😉

Capítulo 1. ¿Qué es un eCommerce Top 100 y por qué hay que hacerlo a medida?

Estoy en condiciones de afirmar, sin posibilidad de error (incluso con apuesta de pincho de tortilla y caña) que en todas las reuniones en las que he estado donde una o más personas querían crear un modelo de negocio de eCommerce, siempre ha salido la pregunta del millón. Y contra todo pronóstico, la pregunta del millón no es “¿qué tengo que hacer para vender mi primer millón de euros online?”, sino “¿esto se hace con una plataforma o se desarrolla a medida?” La siguiente pregunta es “¿y cuánto va a costar?”.

En Sngular, como somos gente muy práctica y además transparente, estudiamos cada caso y hacemos una recomendación basada en la necesidad, el escenario y en general todas las condiciones de contorno del caso del cliente. Esto siempre gira en torno a las dos Cs Elementales del eCommerce. La primera es la de la Cualificación del tráfico y la segunda la de Conversión. El propósito de cualquier plataforma que se construya debe ser la de convertir tráfico cualificado en ventas de productos de calidad, y eso se consigue a través del diseño de una experiencia de compra construida sobre una plataforma tecnológica. Hay otros elementos del círculo virtuoso del eCommerce, como es la capacidad de hacer la entrega de los productos, y el servicio post venta que se da al cliente. Todos son importantes para lograr el éxito.

Pero lo más importante desde nuestro punto de vista es que una tienda online, es un modelo de negocio de base tecnológica. Es decir, la tecnología es una condición necesaria (pero no suficiente) para el negocio: para que funcione y crezca. Dicho lo cual, en nuestro árbol de decisión, existen cuatro categorías de eCommerce.

En el escalón más básico está el eCommerce MVP (de Minimun Viable Product) que refleja aquellas situaciones donde se está creando un modelo de venta estándar que incluye las 3 Cs Básicas del eCommerce (Catálogo, Carrito y Check-Out), en una compañía 100% online (es decir, no hay venta física), que inicia una etapa exploratoria de la viabilidad de su idea con un catálogo de productos reducido. Aquí nuestra recomendación es concentrarse en validar la idea negocio lo antes posible, con una inversión acotada. Por eso apostamos por plataformas tipo Shopify (un eCommerce as a Service) o WooComerce (que por resumir, es una extensión de WordPress) En un eCommerce MVP el rango de inversión inicial empieza en torno a los 16 o 20K y puede llegar a los 50K sólo en tecnología (es decir, sin contar otras inversiones necesarias como el sourcing o campañas captación de tráfico, etc), y un time to market que no supera las 6 semanas. Es una inversión pequeña, como pequeño es también el control que se tiene sobre la solución. Lo importante en este caso es validar el modelo con una inversión que si no cubre la expectativa no suponga grandes pérdidas; pero que si se demuestra que el modelo de negocio es viable, se pueda tirar a la basura sin gran tristeza, y pasar al siguiente escalón.

Ese sería el de un eCommerce Standard, aquellos casos en los que existe un catálogo con más o menos cierta profundidad, en un modelo de venta que empieza a considerar las 2 Cs Adicionales (Consejos y Comentarios) para incrementar el ticket medio y la fidelización de los usuarios. En este escenario, el promotor no necesita validar la viabilidad de su idea, porque ya se sabe que lo es; y tiene prevista una inversión moderada en un horizonte temporal de medio plazo (1 o 2 años). Nuestra recomendación es ir o bien a una plataforma estándar tipo Magento / Prestashop o construir sobre nuestra plataforma Sngular Billionlabs basada en PHP Laravel. La decisión fundamentalmente depende de las integraciones a realizar, de cómo se espera abordar la omnicanalidad, y en general de hasta qué punto se quiere o necesita construir sobre la plataforma para lograr materializar el site. Cuanto más estándar sea, más fácil es que se pueda construir sobre una plataforma de mercado; sin embargo, la particularidad del modelo, o del diseño, o de las integraciones pueden marcar la diferencia entre construir sobre plataforma de mercado y re-construir una plataforma de mercado. Por lo general, re-construir la plataforma es una mala idea, se pierde la continuidad con futuras versiones, aumenta la complejidad del mantenimiento y la extensión, y se acaba con un bonito Frankenstein. Si en tu horizonte te ves con un Frankenstein, lo mejor es que te plantees un desarrollo a medida desde el principio. En este tipo de eCommerce, la inversión sólo en tecnología puede empezar en el rango de los 60K-80K anuales y llegar a los 100K-120K. En cuanto al time to market, ya varía entre usar plataforma o desarrollo a medida, sin embargo nuestra experiencia nos dice que a partir de la semana 8 ya es posible tener una primera versión lista para empezar a vender online, en un proyecto que con entregas iterativas puede llegar a las 16 semanas.

eCommerce Usage Stats

Estadísticas de plataformas de eCommerce según datos de https://trends.builtwith.com/shop

 

El tercer escenario es el eCommerce Pro, el de empresas en un importante nivel de madurez que apuestan por el online como una fuente de ingresos relevantes dentro de un plan de negocio en varios países. En este caso el nivel de adaptaciones específicas es cada vez mayor, sobre todo con la integración de otros sistemas corporativos. Este tipo de proyectos tienen previstos fuertes inversiones no sólo en tecnología, también en captación de tráfico para el site. El catálogo de productos es relevante, el modelo online incluye todas las Cs del eCommerce habidas y por haber; y otros aspectos como la gestión de inventario (que puede estar distribuido) y logística de entrega (donde puede haber diferentes proveedores) o medios de pago (incluyendo por ejemplo diferentes plataformas para cada país) tienen mayor peso. Hay además una necesidad fuerte de integración de sistemas existentes (propios o de terceros), y el site forma parte de una estrategia omnicanal donde el cliente puede llegar a interactuar con la marca y el producto en tiendas físicas, en el online, en el móvil, etc. En este caso, la recomendación de Sngular es ir con grandes plataformas como Hybris / Oracle ATG / IBM Websphere según lo aficionado que uno sea a dejarse guiar los Gartner y Forrester de turno, o hacer un desarrollo completo a medida.

En general, si la tienda online requiere integrar un elevado número de sistemas legacy para procesar las operaciones; o está concebido como una plataforma en la que acceden diferentes terceros; o el modelo de negocio no encaja al 90% con el estándar de una plataforma, nuestra recomendación es un desarrollo a medida.

En un eCommerce Pro, el rango de inversión empieza en los 120K-160K anuales sólo en tecnología, y puede llegar al millón de euros cuando empezamos a meter licencias e infraestructura. En estos escenarios hay mayor variabilidad en el time to market, si bien es razonable pensar que en el mes 4 puede haber una plataforma bastante parecida al resultado final, sobre que la que se puede seguir iterando ampliando funcionalidades hasta los meses 6-8.

 

 Gartner Magic Quadrant Digital Commerce 2017  Forrester Wave Report for B2C eCommerce, Q1 2017
Gartner Magic Quadrant to Digital Commerce, April 2017 Forrester Wave Report for B2C eCommerce, Q1 2017

eCommerce Singulares según Sngular

Por último tenemos la joya de la corona. Esos que llamamos los eCommerce Singulares. La clase de eCommerce que siempre recomendaremos construir a medida, porque nuestro cliente quiere entrar en el Top 100. Para lograrlo es posible que haya que dar respuesta la creación de un modelo de venta propio, clave para la ventaja competitiva y por tanto, no cubierto por ninguna plataforma estándar. En este caso estamos hablando de inversiones por encima de los 250K sólo en tecnología el primer año, que pueden empezar directamente en los 400K-500K.

 

 DigitalCommerce360 Top500 USA DigitalCommerce360 Top500 Europa

DigitalCommerce360 Internet Retailer Top500 Report (USA y Europa)


Los datos que publica DigitalCommerce360 son muy interesantes, muestran que
el 41% de los Top 100 eCommerce de Estados Unidos desarrollan a medida su tienda online. Este dato sube hasta el 58% si lo filtramos al Top 100 eCommerce en Europa. Amazon, Alibaba o Rakuten, los gigantes del eCommerce mundial, han desarrollado a medida sus plataformas (propias, que luego abren a terceros o incluso permiten que se construya sobre ellas). Si miramos la lista de los principales eCommerce de Estados Unidos, podemos comprobar que todos han desarrollado su propia plataforma de comercio electrónico, y de hecho en algunos casos como Amazon.com o Wal-Mart la han abierto a que otras empresas puedan construir con ellas.

Facturación del Top5 eCommerce US en 2016 (Fuente: WWD)

Facturación del Top5 eCommerce US en 2016 (Fuente: WWD)

El eCommerce Singular siempre hay que hacerlo a medida

Nuestra recomendación para crear un eCommerce Singular es siempre el desarrollo a medida. Para conseguir un eCommerce que entre en el Top 100 tienes que mantener el liderazgo estratégico frente a tu competencia, tener el control sobre tu plataforma, y evitar el vendor lock-in;

  • Liderazgo estratégico. No se puede condicionar en ningún caso la implementación de una estrategia de comercio online a las capacidades o features de una plataforma, y mucho menos al roadmap de evolución que haya decidido un fabricante. Esto es fundamental: ser un eCommerce Top 100 significa innovar, liderar y estar por delante de los competidores. Construir sobre una plataforma implica tener los mismos niveles de libertad y las mismas funcionalidades que el resto de tus competidores que la usan. Crear tu propia plataforma te permite construir tu propio liderazgo.
  • Continuidad del producto. Construir extensiones o adaptaciones sobre una plataforma propietaria no evita una inversión elevada, por la especialización de las personas que tienen certificados los conocimientos para hacer las extensiones o adaptaciones sin que impacten en el rendimiento o escalabilidad. Sobre todo, tampoco garantizan que ante una nueva versión del core de la plataforma las extensiones vayan a seguir funcionando. Tu propia plataforma puede evolucionar y re-evolucionar según tu necesidad.
  • Vendor lock-in. Utilizar tecnología propietaria, es decir, no estándar, siempre tiene asociado el riesgo de convertirse en una relación asimétrica, en la que el proveedor tiene un papel dominante sobre el cliente, llegando incluso a coartar su independencia. El temido vendor lock-in. Construir una plataforma según tus propias especificaciones usando tecnología estándar y abierta te permite crear tu propio equipo de desarrollo in-house, o abrir el desarrollo de forma transparente a un amplio abanico de proveedores.

En general, una plataforma a medida permite tener el control absoluto sobre el modelo de negocio, la experiencia del usuario, la tecnología y su evolución.

Categorías eCommerce Sngular

Las cuatro categorías de eCommerce tal y como las concebimos en Sngular

 

De cualquier manera, supongamos que tienes un eCommerce Top 100 construido sobre una plataforma de terceros, que ha ido evolucionando con integraciones y extensiones. O que es un desarrollo a medida hecho entre 2010 y 2015 (me resultaría difícil pensar que a día de hoy alguien está vendiendo como churros algo en internet con un desarrollo de hace más de 8 años) Puede que esté desplegada en la nube de Amazon AWS o de Microsoft Azure; de cualquier manera, seguramente lo que tienes es, como se dice en el ámbito del software, un Monolito.

Y si estás en el momento de rehacer tu eCommerce, o tienes luz verde para crear un nuevo eCommerce Top 100, lo que deberías evitar es ponerte a construir un Monolito. Pero, ¿qué es eso del Monolito?

(Continuará…)

Cómo crear una Proto-Persona

Este artículo es un adelanto de Sngular Sales Connect, una metodología que sirve para trasladar la estrategia, capacidades y propuesta valor diferencial de una organización a su equipo de desarrollo de negocio y fuerza de ventas

Sales Connect es un proceso que aplica, en una determinada secuencia y en un escenario concreto, ciertas dinámicas de Diseño Centrado en la Persona, que se trabajan por equipos.  Se basa por tanto en el learn by doing, en la compartición y el intercambio, y en el trabajo en equipo. 


 

Dinámica 1 ¿Quién es el Cliente?

Aunque cada persona es única y tiene una situación y un contexto diferente, es cierto que en el mundo de los negocios resulta habitual que aquellos que están en un determinado rol en un mismo tipo de empresa, compartan ciertas responsabilidades, objetivos y necesidades.

Parte del trabajo de los profesionales de Negocio y Venta es conocer a la persona para la que trabajan, y eso se consigue a través de las relaciones. El modelo de la Venta Efectiva está centrado en la persona: al igual que hay Human Centered Design, podríamos decir que hay Human Centered Sales. Estableciendo el paralelismo entonces, si en el diseño centrado en la persona el primer paso es hacer el research de la persona para la que diseñamos; en la venta centrada en la persona lo primero que hay que saber es quién es la persona que tiene una necesidad. Por eso el proceso empieza con la dinámica de Persona. Una Persona es una definición ideal, fiable y realista del arquetipo del ser humano para el que se hace un ejercicio de diseño.

Proto-Personas

Idealmente, el punto de partida debe ser el research que se haya hecho desde las áreas de Marketing sobre el cliente. Es de suponer, que está información se recopila de manera habitual y está disponible para los equipos de Negocio y Ventas.

Existen varios tipos de Personas, según la profundidad del ejercicio y su aplicación en diferentes disciplinas de diseño de productos / servicios o experiencia de usuario. En el ámbito de la metodología Sales Connect (donde el tiempo es acotado y los equipos no están formados por profesionales del research), es suficiente con hacer la dinámica más sencilla, que es la de Proto-Persona. Una Proto-Persona es una versión simplificada de Persona, puesto que se basa en las creencias asumidas por el equipo de diseño, en lugar de en los datos que provienen del research.

Al crear una Proto-Persona se definen:

  • Aspectos demográficos y sociológicos. En este punto planteamos respuestas a preguntas tipo ¿Cómo se llama?, ¿Cuántos años tiene?, ¿Qué ha estudiado? ¿Tiene estudios de post-grado?, ¿Ha vivido en otros países?, ¿Está casado/a? ¿Tiene hijos?, ¿Dónde vive? ¿En el centro de la ciudad? ¿En una urbanización de la periferia?, ¿A qué dedica el tiempo libre? Etc.
  • Comportamientos. Para definir el comportamiento, lo ideal es partir de ejemplos concretos o situaciones reales. Si el equipo de diseño ha interactuado con el prototipo de cliente para el que se está trabajando, la observación del comportamiento es un buen punto de partida. En cualquier caso, un mecanismo interesante es hacer la técnica de los espectros. Consiste en valorar, de forma numérica o cualitativa, y siempre a ser posible no binaria, la adherencia de la persona con un determinado comportamiento relacionado con el ejercicio. Por ejemplo:
    • El aprendizaje
    • El riesgo
    • La tecnología
    • La ambición
    • La inversión
    • La experiencia en su cargo
    • La responsabilidad
    • Las relaciones con otras áreas de su empresa
    • Las relaciones con sus proveedores
    • Las relaciones con sus clientes
  • Necesidades y Objetivos. Se trata de una primera aproximación a las necesidades y objetivos de la Persona, que se trabajarán con más detalle en la dinámica del Mapa de Empatía del paso 2. En este punto basta con intentar empezar a recopilar aquellos aspectos que puedan llegar a estar relacionados con nuestros productos y servicios. La naturaleza específica del entorno en el que se está haciendo el ejercicio Sales Connect determinará cuáles son las preguntas más adecuadas. A modo de ejemplo, o para empezar el ejercicio, se puede tratar de responder a estas cuestiones:
    • ¿Qué habilidades y competencias son las que se espera que tenga en su puesto? ¿Cómo puede conseguirlas o mejorarlas?
    • ¿Qué responsabilidad y objetivos tiene? ¿Cómo espera conseguirlos? ¿Cómo sabe que los ha logrado?
    • ¿Cómo es su carrera profesional? ¿Qué debe hacer para avanzar?
    • ¿Qué procesos ha desarrollado o construido por sí misma esta persona? ¿Cuáles le vienen impuestos?
    • ¿Cuál es la parte más motivadora de su trabajo? ¿Y la más frustrante?
    • ¿Qué actividades son las que ocupan más parte de su tiempo? ¿Cuáles debería dejar de hacer?

De cualquier manera, aunque la Proto-Persona es una versión elemental con un nivel de sesgo importante, este primer paso es un buen punto de partida para el resto del proceso. Al definir a la persona para la que se trabaja (alguien real, concreto, un ser humano al que algún día habrá que llamar por teléfono o hacer una visita), el equipo construirá y concentrará sus esfuerzos sobre alguien tangible y real. Trabajar sobre personas concretas ayuda a aterrizar las soluciones y sus características durante las fases de convergencia. Por eso lo importante es que la Proto-Persona sea precisa (es decir, esté bien definida) y no tanto que sea acertada (es decir, que exista de verdad)

Proto-Persona

Proto-Persona : Ana es la CEO de una empresa Energética

 

Durante la primera dinámica, cada uno de los equipos definirá de manera conjunta cómo es la Proto-Persona del área de trabajo en la que se encuentra. Los integrantes del equipo compartirán la visión que cada uno de ellos tiene del arquetipo de cliente con el que trabajan, alcanzando un consenso común que no tiene por qué ser necesariamente ni la intersección, ni la agregación de todos los modelos. Gracias a la puesta en común de la experiencia personal de cada uno de los integrantes del equipo de diseño, se matiza el sesgo o la falta de datos objetivos del ejercicio.

9+1 razones por las que trabajo en Sngular

Sngular MIT

Cuando me fui con Dani, Emilio y César a Boston

Una de las actividades a la que más tiempo dedico al día es a expresar de forma emocional, pero a partir de argumentos objetivos, por qué Sngular es la empresa más adecuada para hacer un proyecto digital construido sobre tecnología. Esa explicación debe ser única, específica para cliente con el que hablo y para cada proyecto que presento; y debe ser algo diferente de lo que podría contar cualquier otra empresa de las que están tratando de hacer las cosas que hacemos en Sngular. Hasta que no encuentro esa propuesta de valor diferencial no me quedo tranquilo, noto que algo me falta y no doy por terminada una propuesta.

Hoy en cambio voy a escribir sobre por qué creo que cualquier profesional de tecnología interesado por su carrera debería pasar por Sngular, marcarse unos objetivos a medio plazo, conseguirlos, y a partir de ahí comprobar si tiene recorrido o no.

1) Tenemos cultura de startup. Es normal, aplicamos los principios del agilismo, organizaciones distribuidas, equipos por conocimiento técnicos… y sobre todo, delegamos la toma de decisión porque no creemos en las organizaciones basadas en Comités y en Burocracias. No sólo tenemos cultura de startup, es que hace años montamos una y luego se la vendimos a Amazon. Todos los años invertimos en proyectos de emprendimiento, a veces tiempo, otras dinero, siempre en nuevas ideas que nos ilusionan y que pensamos que tienen futuro.

Soy una persona flexible que se adapta

2) Unidos somos mejores. Tenemos claro que el todo es más que la suma de las partes. Nos gusta trabajar en equipo porque sabemos que de la unión de las capacidades de las personas y de su mezcla se crea valor. Sabemos que en realidad el Llanero Solitario iba con su caballo Silver y con Tonto el Comanche.

Quiero llegar lejos, no quiero llegar rápido

3) Construimos software, no somos una empresa papelera. En Sngular nos dedicamos a crear e implementar la ventaja competitiva de nuestros clientes. No estamos aquí para rellenar documentos, ni queremos sepultar a nadie con papeles. Por cierto, que respetamos profundamente que haya gente que lo haga (siempre que sean responsables con el medio ambiente).

Me gusta construir

4) Acabamos lo que empezamos, nunca dejamos las cosas a medias. No sólo somos una empresa de tecnología, es que siempre terminamos lo que empezamos. Incluso a veces terminamos lo que otros empiezan. Eso significa “compromiso”, una de tantas palabras prostituidas del sector. Sabemos que las cosas se tuercen, incluso sabemos que algunas nacen torcidas. Sinceramente, nunca nos ha preocupado de quién sea la culpa, sabemos que alguien tiene que terminar los proyectos, y esos somos nosotros. Es nuestra forma de entender el “compromiso”.

Nada termina hasta que está terminado

5) Retos técnicos por doquier, porque nos gusta cacharrear. Tenemos la suerte o la desgracia de trabajar con tecnologías de vanguardia. Sí, esas de las que no hay mucha documentación, con tendencia a ser versiones previas o beta, adoptadas por pequeñas comunidades incipientes, donde quizá no haya mucha gente a la vuelta de la esquina para preguntar. Esas tecnologías disruptivas que traen una promesa de eficiencia y productividad que nadie quiere pasar por alto, y que alguien tiene que ser el primero en poner en producción. Como cuando empezamos a trabajar en entornos reales con Amazon AWS en 2009, con Angular y BackboneJS en el año 2012, con Polymer desde el 2014, etc.

Tengo espíritu aventurero y me gusta explorar

6) Reconocimiento y visibilidad de nuestros proyectos. En Sngular hacemos proyectos que impactan en la sociedad.Tiendas online, startups, apps móviles, bancas digitales, aplicaciones corporativas… nuestros proyectos salen a la luz y los usan las personas. Son prácticos porque tienen como objetivo hacer un poquito mejor la vida de la gente que los usa. A veces incluso lo consiguen. Lo importante es que nuestro trabajo no acaba en un cajón, ni cogiendo polvo en una biblioteca.

Por fin podré contarle a mi abuela a qué me dedico

7) Excelentes personas. Antes que profesionales somos personas, y en particular en Sngular además queremos trabajar con grandes personas. Con gente que tiene una mente abierta, que sabe compartir, que cree en el trabajo en equipo, y que deja lo que está haciendo para ayudar a un compañero en apuros. Esa clase de personas que nunca son un obstáculo ni un pero, sino un apoyo. La gente que quieres tener a tu lado cuando llegan los problemas, porque te hace sentir que no estás solo. La verdad es que para mí es una suerte trabajar con tantas personas que el mero hecho de intentar nombrarlas sería sonrojante. También ha sido una suerte haber trabajado con otras muchas personas que luego tomaron otros caminos como las sucias comadrejas que son.

Lo importante son las personas

8) Referentes técnicos. Siempre decimos que no importa la antigüedad o la experiencia, en Sngular esperamos que todo el mundo sea el mejor en su trabajo. Fomentamos una cultura en la que cualquiera puede aportar y donde de todo el mundo se puede aprender. Nos gusta que las personas tengan un referente, es más, nos gusta que las personas puedan convertirse en referente. Es una pena que nuestros compañeros tengan más interés por trabajar, aprender y construir que por conseguir followers; pero aquí se aprende cada día.

Reconozco que tengo mucho que aprender

9) Aspiraciones en el largo plazo. Si llevamos desde el año 95 en tecnología y seguimos creciendo año tras año es porque nunca tomamos decisiones pensando en el corto plazo y en salir del paso. A veces nos toca tomar decisiones difíciles, pero lo hacemos siempre desde la coherencia con nuestros valores, y pensando que en el largo plazo será lo mejor. Y sobre todo, que nos gusta poder mirar a los ojos a las personas y poder cruzarnos con ellas por la calle sin tener que agachar la cabeza.

Quiero construir catedrales, no picar piedras

Seguramente cada uno de las 320 personas que hacen Sngular tendrán sus propios motivos de por qué han elegido trabajar aquí; estos sólo son los míos y responden a mi vivencia personal después de 6 años. Se que habrá gente que lo verá de otra manera, lo cual es respetable y sano. Pero estos son mis 9 motivos, si los recorres verás que el más importante es TU CARRERA. Si crees que son lo suficientemente buenos para ti, echa un vistazo a nuestras oportunidades en Madrid, Oviedo, Badajoz, Dallas, Birmingham o Ciudad de México http://sngular.team/es/jobs

¿Y en tu caso? ¿Qué es lo que hace que todas las mañanas vayas a tu trabajo, y no a otro?

House D. T. (Design Thinking)

Bien, empecemos por el principio. ¿Qué es el Design Thinking? Es una aproximación a la resolución de problemas. Ah, muy bien. ¿De qué tipo de problemas? Problemas de todo tipo. Nos pensamos que esto sólo vale para crear servicios y productos digitales, pero no. Ah, qué pasa, ¿qué antes no se podía innovar? Por supuesto que sí. ¿Entonces por qué se ha puesto de moda? Por lo mismo que las aproximaciones Lean al ciclo de vida de un producto digital, o el desarrollo ágil a la construcción de software. Porque está orientado al éxito en el mundo de la transformación digital, caracterizado por la incertidumbre, la necesidad de adaptación al cambio y la evolución tecnológica que habilita la disrupción.

Vale. ¿Y qué tiene que ver HOUSE en esto?

House Design Thinking

Manos a la obra (Imagen de Cris HE)

No se si alguna vez habéis visto esa serie. Va de un doctor insoportable que dice todas las impertinencias que se le pasan por la cabeza disfrazándolas de honestidad, pero la gente se lo consiente porque acababa por resolver los casos más difíciles del hospital. Bueno, cuando termines de leer este post podrás decir que el Design Thinking es como un capítulo de HOUSE, sólo que sin un cojo cabrón que te da bastonazos (y sin que muera gente cuando te equivocas)

No es Lupus

Gracias a House descubrimos lo que es el Lupus, ya que era una hipótesis prácticamente en todos los episodios. Bueno, para mí el DT es en cierta medida el proceso de diagnóstico diferencial que hacía el doctor House con su equipo.

Si recordáis en todos los capítulos (casos) se probaban diferentes hipótesis, ninguna era la buena, salvo la que se probaba antes del final del episodio. Cosa normal por otra parte, forma parte del estilo de este tipo de series; en CSI el sospechoso culpable es el último al que interrogan y en Mentes Criminales la chica secuestrada siempre está en la última granja que registran.

Lo primero que tienes que saber sobre DT es que es un proceso para resolver problemas de forma iterativa, lo que significa que después de unas actividades más o menos descritas y consensuadas como corpus del proceso, se llega a una hipótesis. Y en la propia naturaleza del proceso se encuentra materializar esa hipótesis de una forma que permita ponerla a prueba rápidamente, antes de que caduque, y así obtener conclusiones que permitan el refinamiento. Y vuelta a empezar en el proceso.

Por tanto recuerda: nadie espera que soluciones un problema a la primera; ni House ni Horatio han resuelto un caso en su vida a la primera, pero se han hinchado a Emmys.

Los Síntomas no son la Enfermedad

Cuando los niños tienen fiebre, se les puede dar Dalsy para que les baje; pero sólo explorando el oído y viendo la otitis se les puede dar antibiótico, reducir la inflamación, curar y en el proceso, le bajará la fiebre. Pues esto es lo mismo. Aplicar el proceso de DT supone olvidarse de los síntomas del problema; e invertir tiempo en conocer y comprender sus causas, en lugar de paliar sus síntomas.

House Design Thinking

Abre tu mente, Quaid (Imagen de Peter Pham)

Una de las diferencias que aporta el Pensamiento de Diseño a otras metodologías de innovación es que las primeras etapas del proceso, el research se centra en las personas y sus propósitos, para detectar sus pain points o necesidades no detectadas. Es quizá la importancia que tiene la observación de la persona y sus problemas lo que diferencia este proceso, de otros en los que o bien el centro de la innovación es un proceso que se busca mejorar (por lo general para eficientarlo o desintermediarlo) o en los que se trabaja sobre grupos de clientes a partir de agregados estadísticos (impersonales porque se sustentan en la fuerza del número)

Todo el Mundo Miente

Hemos visto que una de las características principales de DT es que se busca el origen del problema en la experiencia / vivencia de la persona (usuario, cliente, empleado, recurso… cuanto antes olvides esas palabras y vuelvas a usar la palabra “persona”, mejor) Por eso,  una de las formas de referirse o definir DT es Human Centered Design. Podría traducirse como Diseño Centrado en la Persona, a mí al menos me gusta más, porque Diseño Centrado en el Humano suena un poco ridículo (no va a ser Diseño Centrado en el Wookie)

Precisamente, una de las frases recurrentes en los capítulos de HOUSE es que todo el mundo miente. El paciente miente. Y parte del trabajo del episodio era descubrir que el niño lleva sordo desde los 7 años pero no lo quería reconocer, que el padre oye voces, o la madre se mete unos tiros cuando nadie mira. A veces los médicos tenían incluso que colarse en casa del paciente para descubrir que tenía moho en el cabecero de la cama, etc.

En general, sabemos menos de nuestros clientes de lo que nos gusta reconocer. Por eso es tan importante para mí el pensamiento crítico, la habilidad de sacar conclusiones a partir de la objetividad evitando el sesgo o el prejuicio. Cada vez que alguien dice “es que los clientes no quieren (pon aquí lo que sea)” deberíamos preguntarle en qué datos se sustenta esa afirmación. Y si alguien dice “mi madre no usaría (pon aquí lo que sea)” hay que invitarle amablemente a dejar el equipo.

El Equipo

Aunque no lo parezca, House trabaja con un equipo de doctores que se involucran tanto en el proceso de descubrimiento del paciente, como de diagnóstico de la enfermedad; y además se reparten los papeles durante la parte de aplicar el tratamiento. Y esto es así porque cada miembro del equipo aporta desde su propia especialidad y experiencia.

De la misma forma, otra de las características del proceso de DT es la creación de equipos multidisciplinares e interdepartamentales. De esta manera, se comparte a lo largo de la organización no sólo la visión del cliente y su necesidad (¿habéis conocido a alguien de Compras a quién le importe el cliente final?) sino la resolución del problema a través de la creación de un producto o servicio. Además, se rompen silos de información y estructuras monolíticas… vamos, todo ventajas.

Deja al Doctor, que sabe lo que hace

En muchos episodios los pacientes cuestionan el conocimiento o capacidad de las personas que les están atendiendo; bueno, en episodios y en la vida real. En general y por sobre-simplificar, un doctor adquiere durante la carrera un conocimiento general de muchos temas y luego se especializa en un área concreta en la que se desarrolla profesionalmente. En el caso de HOUSE, no es sólo la especialidad la que les lleva a entrar al Departamento de Diagnóstico Médico, sino su forma de pensar, abordar problemas y en general, apertura de miras.

House Design Thinking

Vicodin, divino tesoro (Imagen de Nancy L. Stockdale)

Podríamos decir que en el caso del DT la aproximación es equivalente. Quizá el campo de conocimiento o formación en DT no tiene la formalidad ni el reconocimiento de una carrera de Medicina, es más amplio y a la vez difuso (pese a que algunos centros de formación aspiran a erigirse en referentes). Pero igualmente, serán la especialización del profesional en competencias relacionadas con la creatividad y el diseño, junto con su forma de pensar y amplitud de miras las que le llevan a formar parte del equipo de diseño.

Como decía un poco más arriba, hay una serie de prácticas o técnicas que se asocian con el proceso de DT, aunque la verdad es que son comunes a muchas metodologías y disciplinas creativas, tanto del mundo del diseño industrial, la experiencia de usuario, el desarrollo de software o la gestión de la innovación en general. Hay también un cierto consenso es que no es tan importante la formación en el proceso general, como el dominio en el uso de las técnicas concretas que cada equipo emplee durante su proceso creativo.

A veces el Enfermo Empeora

Claro, como en HOUSE el caso tiene que durar lo que dura el episodio, en el proceso se prueban diferentes alternativas hasta dar con la causa (igual que Horatio, por mucho Horatio que sea, interroga y acosa policialmente a siete antes de trincar al malo) (no como Colombo, que siempre sabía quién era el asesino desde el principio, pero ese es otro post) Durante ese proceso iterativo, House y su equipo se enfrentan al fracaso, recogen nuevas hipótesis y vuelven a empezar.

Por eso también podríamos decir que el proceso de DT requiere una predisposición mental al proceso creativo, un orden para dar con la solución, y una importante tolerancia a la frustración para ser capaz de aprender y volver a empezar.

Quizá ese es el motivo por el que en muchas organizaciones la entrada en este proceso se hace a través de pequeños experimentos (como la gaseosa)

House es Hugh Laurie

Por último, no olvidemos que HOUSE es una ficción. Una ficción que además tiene como nombre el del protagonista. Hay una serie de 8 temporadas con su nombre porque House es el dueño absoluto e indiscutible de la resolución del caso, muchas de las veces por una genial ocurrencia de última hora (durante los últimos 10 minutos del capítulo, en el bloque que sigue a la última pausa para los anuncios).  

¿Y el equipo? Los del equipo están ahí como actores secundarios, para aportar equilibrio a la trama o para dinamizar la narración.

Bien, quizá esta sea otra de las lecciones a aprender de la serie. No existe la magia. No existe House. House en realidad es un actor inglés que se llama Hugh Laurie y acabó odiando su personaje y padeciendo secuelas físicas.

No puedes confiar en la ocurrencia genial de última hora. Sólo el Chamán te dirá que el éxito en el proceso de innovación depende del Chamán. En realidad, el éxito de proceso está en manos del equipo.

Manual del Saboteador Corporativo

El 17 de Enero de 1944, la Oficina de Servicios Estratégicos de los Estados Unidos (una organización encargada de las tareas de espionaje y comando durante la Segunda Guerra Mundial, y precursora de lo que hoy en día es la CIA) lanzó el denominado “Manual de Bolsillo del Saboteador“. Este documento contenía instrucciones precisas de pequeños sabotajes cotidianos, al alcance de la mano de cualquier quintacolumnista que quisiera hacer su parte por la victoria de los Aliados tras las líneas enemigas.

saboteador

¿Cuál de estos trabajadores de la Krupp no enroscaba las espoletas de los proyectiles del 88? (Imagen de Homini:)

Publicado hace más de 70 años, el “Manual de Bolsillo del Saboteador” fue desclasificado para nuestro disfrute en el año 2012, y a día de hoy es una joya que sigue plenamente vigente y en uso. Querido lector: tu organización está condenada. Competidores, agentes de gobiernos extranjeros, espías, ácratas anti-sistema, miembros de la secta y amantes del caos infestan tu empresa. ¿Quieres exponer y detectar a los saboteadores que interrumpen tu camino hacia el éxito? ¿O por el contrario, quieres recuperar la alegría de vivir convirtiendo en un infierno la vida de tus compañeros? En cualquiera de los dos casos, sólo tienes que tener presentes los consejos de esta pequeña guía.

Cómo sabotear una Reunión de Trabajo

El mundo laboral está lleno de reuniones. Por alguna razón un pequeño porcentaje de ellas todavía son efectivas, y eso no se puede consentir.

  1. Insiste en que se sigan los canales de comunicación establecidos y los cauces oficiales en la toma de decisiones. No permitas que nadie aproveche resquicios o atajos para que se alcance una decisión ejecutiva.
  2. Haz discursos. A la gente le gusta escucharte. Tienes mucho que compartir. Ilustra tus argumentos con anécdotas, lo más irrelevante posibles. No pierdas la ocasión de hacer pararelismos entre tu vida personal o la de tu cuñao y el asunto de la reunión. Resalta en cualquier caso cómo aplicaste los valores corporativos a aquella situación, aunque fuese la paella del domingo.
  3. Usa el comodín del comité siempre que una situación de duda o incertidumbre pueda requerir un estudio adicional por parte de una instancia jerárquica superior. Si es posible, propón la creación de un nuevo comité. Bajo ningún concepto permitas que se cree un comité con menos de 5 miembros, siendo 7 un número más que suficiente para que las líneas de comunicación lo saturen y lo vuelvan ineficaz.
  4. Abre asuntos de debate fuera del orden del día, y asegúrate que sean irrelevantes para los objetivos de la reunión.
  5. Puntualiza y exige precisión en el uso de palabras comunes, aunque no den lugar a ambigüedad. Por ejemplo, no permitas que alguien se refiera a un “programador” sin que se detalle su área de especialidad tecnológica, nivel, antigüedad en el puesto o estatura.
  6. Reabre decisiones que se hubieran tomado en reuniones previas, especialmente si las personas que tomaron parte en dicha reunión no están presentes. Intenta que se revisen esas decisiones aportando nuevos datos que no se hubieran tenido en cuenta. Invéntate esos nuevos datos, usando fuentes difusas con visos de autoridad. Por ejemplo, “la gente ya no compra con el móvil, lo dicen los estudios de ComScore”
  7. Aboga por la cautela y la prudencia. Muéstrate razonable, y pide a tus compañeros que también lo sean. Evita que se tomen decisiones precipitadas que puedan dar lugar a desastrosos resultados. Ante la duda, revisa el punto 3.
  8. Reclama el respeto de ámbitos de decisión. Si pese a haber desplegado con éxito las anteriores 7 técnicas de sabotaje, la reunión está a punto de terminar con una decisión consensuada, muestra tu preocupación sobre si dicha decisión trasciende el ámbito de autoridad del grupo. Enumera aquellos aspectos que te hacen pensar que o bien la decisión corresponde a otras instancias, o está en contra de otros acuerdos alcanzados previamente.
  9. Dinamita los resultados. Si todo lo demás falla, sal de la reunión y comenta con aquellas personas que no hayan asistido, las decisiones que se han tomado en contra de su criterio. Resalta tu descontento con que se les haya ninguneado.
burocracia

La función pública oculta un auténico nido de saboteadores (Imagen de Pedro Domingo)

Manager de Día, Saboteador de Noche

Tener la responsabilidad sobre los objetivos y el trabajo de un grupo de personas es el sueño del saboteador profesional. La posición de Manager es el equivalente al Nirvana, uno de los puestos que te permitirá desarrollar las mejores y más divertidas técnicas de sabotaje empresarial. Acaba con la moral de tus compañeros con estos sencillos consejos:

  1. No aceptes una petición que no se te haya comunicado por escrito. En caso de que se te comunique por correo electrónico, asegúrate de que vayan en copia todas las personas en la cadena jerárquica desde el CEO hasta ti. En caso contrario, ignora el correo.
  2. Si aún así se te comunican las instrucciones por escrito, aseguráte diligentemente de haberlas entendido. Abre hilos de debate interminables solicitando aclaraciones posteriores, elevando riesgos o dudas, y a ser posible manteniendo en copia a todas las personas en la cadena jerárquica desde el CEO hasta ti. Incorpora aleatoriamente a otras personas que pudieran participar en la realización, verse afectadas por los resultados, o simplemente te apetezca incordiar.
  3. Retrasa la comunicación de órdenes e instrucciones todo lo que puedas, hasta que el plazo de su ejecución sea inviable. Aunque haya partes de la tarea que se hayan completado (por los motivos que sea siempre habrá alguien que lo consiga) como responsable haz que los resultados se entreguen tarde. Si es posible, haz las comunicaciones por canales inesperados, provocando el mayor retraso en su recepción por parte del equipo. Por ejemplo, si todo el mundo espera un email, escribe un memorando y súbelo al Basecamp (la mayor parte de la gente lo recibirá en la actualización semanal) No mandes comunicaciones en horario laboral, no vaya a ser que alguien las lea a tiempo.
  4. No solicites más trabajo hasta que se hayan acabado las tareas. Esto hará que se produzcan lapsos de tiempo de desasignación entre tareas, logrando así la ineficiencia organizativa. Si trabajas con material fungible, no pidas repuestos mientras tengas stock. Por ejemplo, espera a que se acabe el tóner para pedir otro (seguro que no lo has agitado lo suficiente)
  5. Exige para tu proyecto profesionales sobrecualificados, especialmente si son escasos en la organización y no tienen disponibilidad. No consientas que asignen mejores personas o medios a  proyectos que no sean el tuyo, y discute habitualmente sobre ello (sobre todo cuando no estén presentes los responsables de dichos proyectos). Amenaza con las posibles consecuencias en términos de sobrecoste o pérdida de calidad.
  6. Asigna antes las tareas menos importantes. Y al mismo tiempo, encarga siempre aquellas labores en el camino crítico o más prioritarias a personas que no tengan la cualificación adecuada, o se hayan mostrado abiertamente ineficientes. Especialmente si trabajan en otros centros de trabajo y no pueden coordinarse de forma directa. Procura que estas personas reciban el peor equipamiento disponible. El Eclipse arranca con 2 GB de RAM de toda la vida de Dios, y no hace falta un MacBook Pro para trabajar con el Photoshop. Cuando se lamenten de lo poco adecuado de su material, culpa a otros Managers de su falta de generosidad, o dinamita en general la equidad de la organización.
  7. Mantén un elevado nivel de exigencia en las tareas menos importantes, y permite que los elementos clave del proyecto salgan a producción con el menor control de calidad posible. Esto tiene una doble vertiente positiva: los resultados del proyecto serán lamentables, y te granjeará las simpatías de los desarrolladores más perezosos.
  8. Confunde las áreas de responsabilidad. Envía instrucciones y tareas a los equipos incorrectos, de manera que el trabajo se asigne a personas que ni lo esperen, ni tengan la cualificación necesaria. Por ejemplo, pide al equipo de experiencia de usuario que diseñe las API REST de integración.
  9. Da instrucciones incompletas e imprecisas. Deja espacio a la ambigüedad de manera que nadie tenga claro los resultados esperados. Alega estar dando “espacio para la creatividad”. Después, rechaza los resultados y solicita que se rehaga la tarea. Procura perder en esta revisión suficiente tiempo para así interrumpir la nueva asignación de esa persona.
  10. Recompensa a los peores y castiga públicamente a los mejores. Mantén una doble moral y un doble rasero. Concede recompensas, aumentos de sueldo y promociones a quien menos lo merezca, especialmente si está socavando la moral del equipo, destruyendo sus resultados y prostituyendo los valores corporativos. Y haz escarnio público de los pequeños errores que cometan las personas más productivas y comprometidas, hazlos evidentes ante la dirección y comenta en voz alta lo decepcionante que es todo.
  11. Convoca reuniones cuando más trabajo haya. Hazlo por sorpresa, sin avisar de los objetivos de la misma ni de qué tienen que hacer sus asistentes para prepararlas. Aplica sin dilación los 8 pasos del capítulo anterior.
  12. Se creativo a la hora de invitar a gente a las reuniones. Convoca a personas de otros departamentos que no tengan nada que ver con el objetivo de la misma; y olvida convocar a miembros del equipo cuya presencia sí sea relevante. Avísales cuando la reunión haya comenzado. Socava su moral diciéndoles que cuánto tiempo están dispuestos a hacer esperar al resto. En otras ocasiones, mantén fuera de la reunión a personas relevantes, e insinúa al resto que realmente su presencia no es necesaria.
  13. Aumenta exponencialmente la burocracia. Inventa nuevos procesos y súbelos al lugar más insospechado de la intranet corporativa, enterrados bajo tres niveles de enlaces. No comuniques a los implicados su descripción o sus requerimientos. Cuando alguien manifieste su desconocimiento, déjale en evidencia diciendo que “está publicado en la intranet”. Procura que en todos los estados de aprobación se involucren al menos 3 personas más de las necesarias.
  14. Se riguroso. Haz que se cumplan las normas y procesos al pie de la letra. Es la única forma de acabar con toda esta anarquía.
accidente

“Te dije que empujases, no que tirases” Los accidentes pasan cuando menos te lo esperas (Imagen de Bill Dimmick)

El Saboteador del mes

Para muchos, recibir un salario por tomar tres cafés al día, navegar por internet, actualizar el Facebook y poner a parir a sus compañeros no es suficiente. El Manual de Bolsillo del Saboteador incluye todo lo que necesitas para convertirte en otro engranaje oxidado de la maquinaria. Por el contrario, si estás pensando en tirar la toalla porque ves que tu esfuerzo no da resultado, descubre si te están boicoteando esas miserables comadrejas a las que llamas compañeros.

  1. Satura los canales de comunicación corporativa. No dejes ocasión para comentar u opinar sobre cualquier aspecto. Recuerda que tu silencio es cómplice: si no respondes no estás generando trabajo para nadie. Al contrario, cuando escribas en los canales de comunicación corporativa alguien se verá obligado a procesar tu respuesta. Nada las aguas de la sutileza y la ambigüedad.
  2. Pierde documentos y sube versiones obsoletas de los mismos. No importa el gestor documental que se utilice, siempre tienes la posibilidad de bajar una versión anterior, modificarla y subirla, destruyendo la versión actual del mismo. No es recomendable hacer esta práctica con código fuente, ya que el control de autoría de versiones es más utilizado y tus sabotajes pueden llamar la atención de compañeros colaboracionistas.
  3. Nunca pongas en copia a todos los interesados. Añade y elimina arbitrariamente a los interesados de un hilo de debate, de manera que siempre haya una persona que pierda información. Se recomienda que no sea siempre la misma persona, para no levantar sospechas. Cambia a discreción el canal por el que se realiza la comunicación, para que no haya una única herramienta donde seguirla.
  4. Practica la delegación hacia arriba. Eleva todas tus dudas y preocupaciones, y nunca asumas la responsabilidad de aquellas tareas que puedan ser clave, aduciendo su impacto y relevancia para la organización. Expón tus argumentos de manera convincente y exhaustiva. Explota la actitud paternalista de tus superiores, y deja que su productividad se venga abajo haciendo que sean ellos los que las finalicen.
  5. Abraza la rumorología y el chismorreo. Las personas necesitan cosas de las que hablar para llenar sus vacíos interiores, así que puedes hacerte importante entre tus compañeros expandiendo rumores maliciosos. Recuerda que cuanto más graves sean, mayor será tu reputación.
  6. Interrumpe tu trabajo y el del resto. Internet y los smartphones no nos proporcionan suficientes interrupciones. Hay personas que consiguen concentrarse en su trabajo, y eso es un desastre para La Causa. Existen dos argumentos clave para interrumpir con éxito a una persona: alimentar su ego y excitar su curiosidad. En el primer caso, conviértele en el Oráculo de Delfos al que acudes para pedir ayuda y consejo a la hora de acabar una tarea. En el segundo, piensa que nadie puede evitar una conversación que empieza con la frase “¿Te has enterado de…”?
  7. Pide más instrucciones. Finge que las indicaciones que has recibido no son precisas, o son difíciles de entender; y solicita todas las aclaraciones que sean necesarias en forma de disyuntivas. Alternativamente, muestra tu entusiasmo con la tarea y satura a tu responsable celebrando los pequeños avances que consigas.
  8. Quéjate frecuentemente de los medios que se te han dado y hazlos responsables de tus retrasos e ineficiencias. Recuerda de manera recurrente cómo otras empresas como Google o Apple se han hecho grandes asignando a sus trabajadores los mejores equipos disponibles en el mercado.
  9. Mantén la oscuridad y jamás te conviertas en un referente o una fuente de aprendizaje para un compañero recién llegado o de menor cualificación.
  10. Dinamita las áreas administrativas. Por lo general, las áreas de servicios comunes de una organización son centros de coste que viven permanentemente con una carga de trabajo por encima de su capacidad. Aumenta su malestar aparentando que sigues el proceso corporativo, pero falla subrepticiamente en los pequeños detalles.
tiempos modernos

Cualquier pequeño sabotaje puede ser la clave del fracaso (Imagen de dominio público de Wikimedia Commons)

¿Cómo detectar a un Saboteador?

No importa su nivel en el escalafón, un saboteador profesional puede acabar con la moral y el ambiente de cualquier organización. Una vez que cunde el desaliento en la empresa, se produce uno de los efectos más temidos: la fuga de talento. La mediocridad, la ineficiencia y los ambientes laborales nocivos suelen acabar por expulsar a las personas más brillantes.

¿Sospechas que tu empresa está siendo saboteada? Una sencilla hoja de cálculo te permitirá hacer el seguimiento de los comportamientos nocivos que encuentres entre tus compañeros. Apunta cada mes la recurrencia en las observaciones y consulta esta tabla de puntos:

  • Menos de 5. Esta persona es de tu entera confianza, está alineada con la organización y comparte sus valores. Todo el mundo tiene derecho a un mal día.
  • De 6 a 10. “El árbol que crece torcido, jamás su tronco endereza” Aunque no actúa de mala fe, alguien tiene que ayudar a esta persona antes de que sea demasiado tarde.
  • De 11 a 18. Alguien está haciendo sus pinitos en el sabotaje empresarial. Seguramente sea un empleado descontento que se está cobrando una venganza.
  • Más de 19. Se lo está tomando en serio. Está decidido a hundir la empresa, hay que tomar medidas correctivas urgentemente.
  • Más de 25. No descartes que esta persona haga espionaje industrial para tu competencia. Comprueba su historial laboral en la seguridad social, seguramente tenga una excedencia.
  • Más de 30. Enhorabuena ciudadano, has desenmascarado a un agente infiltrado de una potencia extranjera. Repórtalo a las autoridades militares para que procedan a su deportación inmediata.

(Este post fue publicado originalmente en el Blog Salmón el 11 de Junio de 2016)