En la economía digital, su software es su ventaja competitiva
Muchas empresas responden a la competencia digital adoptando metodologías como la ágil, la creación de «centros de innovación», la adquisición de startups o la externalización del desarrollo de aplicaciones a firmas consultoras. Pero los verdaderos disruptores saben que en la economía digital gana quien construya el mejor software. Las empresas que quieren competir necesitan empoderar a sus desarrolladores y adoptar una «mentalidad de software»: asigne problemas a su equipo en lugar de tareas; realice muchos experimentos y tolere los fracasos; obsesiónese con la velocidad y mantenga a sus desarrolladores cerca de sus clientes.
Hace quince años, cuando trabajaba como gerente de producto en Amazon, Jeff Bezos declaró en una reunión general que Amazon no era un minorista, sino una empresa de software.
«Nuestro negocio no es lo que hay en las cajas marrones. Es el software que envía las cajas marrones en su camino», nos dijo. «Nuestra capacidad de ganar se basa en nuestra capacidad de organizar las partículas magnéticas en los discos duros mejor que nuestra competencia».
Poco después dejé Amazon para fundar mi propia empresa, Twilio. Pero la lección de Jeff me ha quedado grabada desde entonces, especialmente cuando visito a nuestros clientes, muchos de los cuales se dedican a la transformación digital. Esas empresas esperan emular a disruptores como Uber, Lyft, Airbnb y Spotify, y competir contra gigantes como Amazon y Salesforce. Pero muchos no se dan cuenta de lo que Bezos sabía hace mucho tiempo: en la economía digital, gana quien construya el mejor software.
Desafortunadamente, muchas empresas nunca han considerado el desarrollo de software como una competencia básica. Dependen de programas empaquetados vendidos por proveedores de software independientes y contratan consultores para escribir código personalizado. El problema es que los programas empaquetados son de talle único y no se pueden personalizar demasiado. Esto podría estar bien para sistemas back-end como RRHH y finanzas, pero para las partes de la empresa orientadas al cliente, el uso de software estándar ya no es un problema. ¿Cómo puedes diferenciarte y obtener una ventaja competitiva si utilizas el mismo software que todos los demás? En esa parte de tu negocio, tu elección ya no es «construir o comprar». Es «construir o morir».
Esto significa que las organizaciones deben crear sus propios equipos de desarrollo de software y capacitar a los desarrolladores para que resuelvan problemas de forma creativa. Las empresas pueden empezar por volver a capacitar al personal técnico existente. Estas personas se encuentran entre tus empleados más valiosos, pero a menudo son un recurso sin explotar.
Pero las empresas también deben contratar y retener ingenieros de software de primer nivel. ¿Cómo atrae una empresa no tecnológica a grandes desarrolladores? Debe cambiar la forma en que ve a los desarrolladores. Los mejores ingenieros no trabajarán para una empresa que los trata como «monos de código», atrapados en una oficina administrativa, produciendo código por orden. Los mejores desarrolladores quieren sentarse a la mesa. Involucrar a los ingenieros en la resolución estratégica de problemas y en la toma Dales voz para dar forma al futuro de la empresa y la libertad y autonomía para ser creativos.
Elevar el papel de los desarrolladores implica un cambio de poder sutil (o a veces no tan sutil) y, a veces, provoca una reacción violenta de partes de la organización que se sienten amenazadas por la creciente influencia de los tecnólogos. Para que esto funcione, tienes que cambiar la mentalidad de toda la organización. El compromiso debe empezar por arriba.
Una verdad incómoda
Los titulares suelen responder a la competencia digital adoptando metodologías como la agilidad y capacitando a miles de personas. Otras respuestas comunes incluyen la creación de «centros de innovación» separados de la compañía madre, la adquisición de startups con la esperanza de difundir su ADN en toda la organización y la externalización del desarrollo de aplicaciones a firmas consultoras.
Sin embargo, la mayoría de las empresas descubren que después de tomar estas medidas populares, nada ha cambiado realmente: los disruptores digitales siguen haciendo un rápido avance porque la creación de software es solo su ADN.
La buena noticia es que hoy en día es más fácil desarrollar software que hace una década. En lugar de escribir aplicaciones desde cero, los desarrolladores combinan microservicios, pequeños programas que ofrecen funciones específicas como comunicaciones y facturación. Las herramientas modernas para desarrolladores y la automatización también aceleran las cosas.
La payoff puede ser profunda. La creación de software de forma interna significa que los programas se pueden adaptar perfectamente a las necesidades únicas de su organización. En lugar de rogarle a Giant Software Co. una nueva función y luego esperar meses o incluso años para obtenerla, crea un equipo de ingenieros internos que ponen el código en producción en cuestión de semanas o incluso días.
Por ejemplo, cuando Patrick Doyle se convirtió en CEO de Domino’s en 2010, determinó que en un negocio de productos básicos la mejor manera de obtener una ventaja competitiva era ofrecer una mejor experiencia al cliente. Eso significaba tener un mejor software y excelentes aplicaciones móviles para smartphones. Domino’s expandió 10 veces su organización de desarrollo e integró a los desarrolladores con los equipos de marketing. Juntos crearon aplicaciones y funciones innovadoras, incluida una que permite a los clientes seguir el progreso de su pedido desde el horno de pizza hasta la puerta principal. Un gran software permitió a Domino’s adelantarse a sus competidores y convertirse en la cadena de pizzas más grande de Estados Unidos. Desde 2012, el precio de las acciones de Domino se ha disparado a 400 dólares desde 32 dólares, superando a Apple, Facebook y Google durante ese período de tiempo.
ING, uno de los bancos más grandes del mundo, inició una transformación similar cuando Ralph Hamers se convirtió en CEO en 2013. Tomando las señales de las startups tecnológicas, Hamers convirtió a ING en una organización que da prioridad a lo digital. Invirtió mucho en el desarrollo de software y alentó a los ingenieros de software a asumir riesgos y ser creativos, lo que incluía el desarrollo de programas locales para reemplazar los paquetes comerciales. En 2018, un pequeño equipo de ingenieros de ING desarrolló un programa a medida para reemplazar un costoso sistema de software empaquetado utilizado por los representantes de servicio al cliente del banco. El software interno supera al antiguo programa de software empaquetado y cuesta sustancialmente menos. Lo mejor de todo es que ING puede seguir añadiendo nuevas funciones cuando lo desee.
Una dinámica similar se está produciendo en Target, U-Haul y Allianz, la mayor aseguradora del mundo. Estas organizaciones están adoptando una «mentalidad de software», que se basa en algunos principios básicos:
Asigne problemas, no tareas. Tradicionalmente, las personas del lado empresarial presentan ideas y las entregan a los desarrolladores que tienen la tarea de convertirlas en código. En su lugar, deje que los desarrolladores contribuyan a la solución de los problemas empresariales. ¿Quién sabe mejor cómo aplicar software a su empresa que las personas que entienden profundamente la tecnología?
Tolerar fallos. La experimentación es el requisito previo para la innovación. Cree un entorno en el que los desarrolladores realicen muchos experimentos pequeños y en el que se celebre el fracaso en lugar de castigarse. Realiza autopías irreprendibles para descubrir por qué fracasó un experimento y qué puedes aprender de esa experiencia.
Obsesiona con la velocidad. Las startups insertan código nuevo constantemente, todos los días. Las empresas ya no pueden pasar meses desarrollando nuevos programas. Busca sin descanso formas de reducir el tiempo que se tarda en pasar de una «gran idea» a un código de producción funcional.
Mantenga a los desarrolladores cerca de los clientes. Elimine las barreras organizativas que separan a los desarrolladores de las personas que realmente utilizan su software. Cuando los desarrolladores hablan con los clientes, pueden ofrecer funciones mejores y más útiles en menos tiempo.
Cada organización adoptará la mentalidad del constructor a su manera. Sin embargo, estos principios proporcionan un marco para crear una organización de desarrollo de software de clase mundial, de modo que pueda responder más rápidamente a las necesidades de los clientes, adaptarse a un mercado en constante cambio y mantenerse al día con las Amazonas del mundo.