Cuento 3. El servidor de producción no responde y el equipo técnico dice “Te lo dije” ¿cómo balancear la deuda técnica y las iniciativas de producto?
Cómo priorizar la deuda técnica
For English version, click here / scroll down.
En el cuento n1, 📖 dijimos qué la responsabilidad del equipo de producto es llevar al equipo a resolver el problema correcto, y la responsabilidad de ingeniería es hacerlo bien🛠️. Entonces porque puede pasar qué el servidor de producción no este operativo y el equipo técnico mire al equipo de producto y diga “Te lo dije.”😬. Les cuento el cuento…
Manuela 👩💼 es la directora de producto de ConciertosApp, una aplicación 📱 para comprar las entradas a los conciertos de tu artista favorito 🎤. ConciertosApp estaba ganando nombre en el mercado y el equipo de ventas cerró dos contratos importantes con ArenaFantástica, una de las plazas más importantes de eventos en Ciudad de México 🏟️. El 28 de noviembre, el artista urbano del momento, Bad Bunny 🐰, tendría un concierto legendario 🎶.
El equipo de ingeniería 🛠️ le manifestó a Manuela la importancia de modificar la arquitectura del sistema para distribuir la carga de usuarios en diferentes servidores y optimizar los tiempos de respuesta ⏱️. Manuela, a su vez, tenía que liberar la funcionalidad de pago con tarjetas de crédito, que era fundamental para que los usuarios pudieran hacer la compra de sus boletas 💳. Dada la importancia del pago y la premura del tiempo, el equipo de producto priorizó la experiencia de pago sobre la modificación de la arquitectura del sistema.
El 20 de noviembre salieron a la venta las boletas 🎟️. La descarga de la app fue un récord, pero los usuarios no podían pagar porque el servidor no respondía. La cantidad de peticiones recibidas al tiempo superaba la capacidad de la solución y por más que subían la capacidad, el servidor no respondió. 🚫💳
¿Cómo balancear la deuda técnica con las necesidades del negocio?
Parte de ser un efectivo líder de producto es entender los diferentes esfuerzos y componentes necesarios para lograr la estrategia de negocio. Una organización por lo general tiene 4 estrategias qué necesita balancear para tener un producto exitoso.
Estrategia de Funcionalidades⚙️: enfocada en entregar la propuesta de valor inicial, mejorarla y refinarla a través de la generación incremental de valor. En el caso de conciertosApp, pagar con tarjeta de crédito habilitaba la propuesta de valor. Para otras aplicaciones cómo Duolingo, puede ser un plan de aprendizaje personalizado y para aplicaciones cómo Global66, puede ser cobrar o pagar en México/Chile/Colombia etc💳🎓💸.
Estrategia de Crecimiento📈: enfocada en aumentar el uso de tu producto actual eliminando las fricciones que impiden el acceso o la distribución. Es decir, es una estrategia enfocada en maximizar la adquisición, la retención y la monetizacion. Una estrategia de crecimiento aplicada por los e-commerce es envío gratuito por compras de más de 50 USD, por ejemplo, para maximizar la monetización. En el caso de los SaaS (Software cómo Servicio) recurren a prueba gratis o versiones gratuitas para maximizar la adquisición.
Estrategia de Expansión🆕: enfocada en agregar nuevas líneas de producto o propuestas de valor. Esto se puede hacer adaptando el producto actual a un mercado complementario o agregando nuevos productos. En el caso de Neivor inicialmente la propuesta de valor servía a condominios y posteriormente se expandió para atender un mercado complementario qué son los multifamiliares y co-livings abordando el segmento de rentas residenciales.
Estrategia de escalamiento🛠️: enfocada en las inversiones estratégicas necesarias para habilitar el crecimiento y constante funcionamiento del producto. Es decir las inversiones qué el usuario percibe cómo el rendimiento, la seguridad, la disponibilidad de la plataforma pero qué no necesariamente están expresadas en una funcionalidad.
Para el cuento de ConciertosApp nos enfocaremos en la estrategia de escalamiento. A medida qué el producto crece, el escalamiento se convierte en una necesidad del producto qué garantizará el éxito del mismo. El escalamiento se puede ver desde tres perspectivas: la tecnología, los procesos y los usuarios.
Es comun qué product managers se enfoquen en liberar nuevas funcionalidades dejando de lado las partes del negocio complementarias qué permiten qué las funcionalidades sean exitosas. Es por eso qué los lideres de producto necesitamos entender a los usuarios, los procesos y las implicaciones técnicas del producto o servicio qué se estamos entregando.
Las necesidades tecnológicas del producto van evolucionando a la par del mismo. Desde una perspectiva técnica la evolución se puede ver en múltiples variables como:
Entorno📱: migrar una solución web a un ambiente móvil ó pasar de una experiencia basada en formularios a una asistencia por chat.
Plataforma⚙️: pasar de una tecnología a otra. Ejemplo de .NET a REACT
Modernizacion🆕: cambiar una herramienta propia de clasificación de contenido a una solución comercial cómo ChatGPT.
Desde el aspecto de procesos están:
Creación de un Entendimiento Unificado🤝: Dar contexto a los distintos equipos incluyendo al Product Manager, ingenieros, y diseñadores para garantizar un entendimiento unificado del objetivo a alcanzar con cada una de las iniciativas priorizadas.
Ciclos de retroalimentación📣: crean caminos de comunicación hacia el área de producto qué incluyen al equipo de ingeniería y a las areas qué están en constante contacto con el cliente cómo soporte técnico y servicio al cliente en temas relacionados a atributos de calidad del sistema cómo rendimiento, latencia, seguridad, entre otros.
Gestión de la deuda técnica⚖️: Integra de manera simultánea las necesidades técnicas y los requisitos del producto en la planificación del roadmap. Este enfoque garantizará un crecimiento saludable del producto al abordar tanto las demandas del negocio como los aspectos técnicos
Desde los usuarios:
Detectar practicas inadecuadas🚫: Monitorear transacciones de pago sospechosas para evitar fraudes.
Protección de usuarios🔕: Construir un sistema de monitoreo de notificaciones para evitar saturar a los usuarios
Nuevos casos de uso➕: Agregar nuevas formas de usar el producto.
Ahora, la pregunta clave es cuando enfocarse en estas iniciativas. Algunos síntomas de qué es momento de hacerlo pueden ser:
🚩Las prioridades estratégicas no se están alcanzando por limitaciones técnicas ó organizacionales.
🛠️ El producto no funciona correctamente, los procesos no entregan los resultados esperados, el crecimiento de usuarios se estancó por qué el producto no logra estar operativo.
📅Las iniciativas no se logran entregar en el tiempo y con el presupuesto inicial debido a problemas de escalamiento.
🔄El resultado final no es el planeado inicialmente. Un producto fue el qué diseño el área de producto y otro el qué ingeniería estuvo en capacidad de construir.
📉Las calificaciones de los usuarios negativas crecen y los usuarios reportan problemas en la calidad o rendimiento del producto.
En el cuento de conciertosApp las prioridades estratégicas no se están alcanzando y las críticas de los usuarios crecen porque reportan problemas en el producto. Por lo qué es relevante qué se priorice la estrategia de funcionalidades, crecimiento y escalamiento simultáneamente para así servir a los usuarios adecuadamente y por ende lograr el resultado de la compañía. El equipo de ConciertoApp puede trabajar de forma colaborativa con los equipos de ingeniería para construir conjuntamente las capacidades técnicas necesarias para entregar las funcionalidades qué la compañía demanda y separar un porcentaje de la dedicación de los equipos para construir esos habilitadores…y colorín colorado este cuento se ha terminado. 🎶
✍️Cuéntame… tu historia/pregunta, ❤️como mejorar.
Tale 3: The product server is not working and the technical team says, “I told you so”. How to balance technical debt and product initiatives?
In our tale, N1, 📖 we said that the product team's responsibility is to lead the team to solve the right problem, and engineering responsibility is to build the solution well. 🛠️ Then, let me tell you a story when the server wasn’t working and engineering said they knew it wasn’t going to work 😬
Manuela is the Chief Product Officer at ConciertosApp, 🎫 an application for buying your favorite artists’ concert tickets. ConciertosApp was growing fast, 🚀 and the sales team closed two important deals with Arena Fantastica, 🏟️ one of the major event venues in Mexico City. On November 28, Bad Bunny, the urban artist sensation, 🎤 would have a legendary concert. 🌟
The engineering team expressed to Manuela that the system architecture would need to distribute user load across several servers to optimize latency. 🛠️ Manuela also had to release the credit card payment feature, which was crucial to completing a ticket purchase. 💳 Due to the priority on payments, the product team prioritized the payment experience over the system architecture modification. ⏰💰
Tickets went on sale on November 20🎫📈. The app set a download record, but users could not pay because servers did not respond. The simultaneous requests amount exceeded the solution’s capacity and the server did not respond regardless of how much the capacity was increased 😞💔.
How to handle this type of situation? How to balance the technical debt with the business priorities?
Part of being an effective product leader is understanding the different efforts and components needed to achieve a business strategy. 🚀 Let’s discuss those efforts and how to balance them to have a successful product. ⚖️🌟
Feature Strategy: focused on delivering the initial value proposition and refining it through incremental value generation. In the case of ConciertosApp, paying with a credit card enabled the value proposition💳. For other applications like Duoling, it could be a customized learning program, and for applications like Global 66, it could charging or collecting money in Mexico/Chile/Colombia, etc.
Growth Strategy: focused on increasing product engagement by removing obstacles that hinder access or distribution. In other words, a strategy focused on maximizing acquisition, retention, and monetization. A growth strategy applied by e-commerce is free shipping for purchases over 50 USD to maximize monetization. In the case of SaaS (Software As A Service) 🆓 freemium or trials are common patterns to maximize acquisition. 🌐
Expansion Strategy: focused on adding new product lines or value propositions. This can be achieved by adapting the current product to a complementary market or developing complementary products. In Neivor's case, the initial value proposition served Home Owners Associations (HOAs), and later it expanded to address a complementary market, which includes multifamilies and co-livings, targeting the residential rental segment. 🏡💼
Scaling Strategy: focused on the strategic 💰 investment required to enable growth and product functionality. In other words, the investments users perceived as platform performance, 🔒 security, and ⏱️ latency, which may not necessarily be expressed as features.
For ConciertosApp’s tale, we will focus on the scaling strategy. 📈 As the product grows, scaling becomes a necessity that will assure success. Scaling can be seen from three perspectives: 🖥️ technology, 🔄 process, and 👥 users.
It is common for product managers to focus on releasing new features while 🔄 setting aside complementary business elements that enable the features to be successful. That’s why product leaders need to understand the users, the product or service process, and the technical efforts. 🚀
Product and technical requirements evolve in parallel. From a technical perspective, evolution can be seen in several variables:
🌐 Environment: migrating a web solution to a mobile environment, transitioning from a form-based experience to a chat-based assistance.
🔧 Framework: switching technology from one to another. For example, from .NET to REACT.
⚙️ Performance: use a custom in-house content classification tool or opt for a commercial solution like chatGPT.
From a process perspective: 🔄
Provide context to the different teams, including product managers, engineers, and designers to ensure a unified understanding of goals and prioritized initiatives 🤝.
Establish a feedback loop from engineers and customer-facing areas such as support and customer success, in topics related to system quality attributes such as performance, latency, and security. 📊🛠️
Address technical debt simultaneously with product requirements in the product roadmap. This focus will guarantee healthy product growth, addressing both business needs and technical aspects. 🚀💼🔧
👁️🗨️ From a user perspective:
🕵️♂️ Monitor fraudulent transactions 🚫💳
🛠️ Build a monitoring notification system to prevent user saturation 🚷📲
➕ Add new use cases to the app/platform 🔄📱
The key question is when to focus on these initiatives. Some symptoms that indicate it might be the right moment include:
🚩 Strategic priorities are not being met due to technical or organizational limitations.
🛠️ The product is not working correctly, processes are not delivering the expected results, and user growth has stalled because the product is not operational.
📅 Initiatives are not being delivered on time and within the initial budget due to scalability problems.
🔄 The final result is not the one planned initially. One product was designed by the product team, and another was implemented by engineering.
📉 Negative user ratings are increasing, and users are reporting quality and performance issues.
In ConcertApp'tale, strategic priorities are not achieved, and users' negative opinions increase because they reported issues with the product. It is relevant to prioritize the feature, growth, and scaling strategy in parallel to serve users properly and, as a consequence, achieve business results. ConciertApp's team can work collaboratively with the engineering team to build the technical requirements needed to deliver the features the company demands and schedule a time slot to work on those enablers… and with that, the tale is told. 🎶
✍️Tell me your … your story/question, ❤️how to improve.