No tenemos gerentes de producto dedicados hoy. O, más exactamente, los ingenieros administran los productos ellos mismos.
Algunos de nuestros lanzamientos recientes incluyen Stripe Connect, soporte para usuarios canadienses y Stripe.js versión 2. Fueron supervisados por Quora User y Ross Boucher, Sheena Pakanati y Alex MacCaw, respectivamente. Todos son ingenieros a tiempo completo.
A medida que hemos crecido, hemos tratado de tener cuidado con las estructuras que implementamos. Muchas empresas parecen adoptar de forma natural, casi mimética, una jerarquía bastante “normal”: gerentes de producto, ingenieros, diseñadores, gerentes de proyectos, etc. Dada su universalidad, parece plausible que sean más o menos óptimos.
- ¿A qué distancia está la realidad virtual de una arquitectura escalable y distribuible?
- ¿Cuáles son las mejores maneras para que un estudiante de cuarto semestre aprenda programación del mundo real en Java?
- ¿Qué herramientas o software de gestión de proyectos usa Spotify, si lo hay?
- ¿Qué es la modernización de software? ¿Por qué es importante para cualquier software? ¿Cuáles son las herramientas disponibles para la modernización del software?
- ¿Qué significan algunas plataformas como Youtube para desarrolladores?
Sin embargo, creo que tener gerentes de producto dedicados probablemente no sea ideal en todas las situaciones. Son muy efectivos en muchas empresas, y tener gerentes de producto a tiempo completo podría incluso ser adecuado para Stripe en algún momento, pero no es lo que queremos en este momento.
Creo que hay algunas razones por las cuales esto nos está funcionando bien hoy:
- Los ingenieros que construyen nuestros productos disfrutan y son buenos para averiguar qué debe hacer el producto, no solo cómo debería funcionar la implementación.
- Dado que muchas de las personas que trabajan en el producto Stripe son usuarios del mismo (la mitad de ellos ya habían usado Stripe antes de unirse a la empresa), tienen una buena idea de las mejoras del producto que podrían ser útiles o importantes.
- La mayoría de las personas que trabajan directamente en las partes de Stripe orientadas al usuario han administrado productos antes y disfrutan del proceso de averiguar cómo deberían funcionar y qué deberían hacer. Antes de Stripe, Saikat y Sheena construyeron Mockingbird. Alex creó Taskforce y una serie de proyectos de código abierto. Amber tenía una larga lista de productos en su haber. Ross fundó 280 North, construyó 280 Slides y co-creó el framework web Cappuccino. Ludwig solo diseñó y construyó Observer, una herramienta de análisis web en tiempo real. Ben comenzó Kickoff. (Como sucede, muchas personas que no trabajan directamente en las partes de Stripe orientadas al usuario también tienen una experiencia similar).
- Todavía somos bastante pequeños. En una empresa más grande, donde hay reuniones para asistir, socios externos con los que hablar, consideraciones legales para investigar, etc., los gerentes de productos pueden ayudar a lidiar con el trabajo que no sea de ingeniería que surja. Hasta ahora, nuestro flujo de trabajo ha sido que las personas que realizan la implementación trabajen directamente con el resto de la empresa para resolver estos aspectos. [1] Es posible que esto no se adapte a la complejidad bizantina, pero hoy funciona bien, y tener una imagen completa en la cabeza de alguien tiene mucho valor.
- Los ingenieros que construyen el producto son bastante autosuficientes y pueden piratear la mayoría de los niveles de nuestra pila. Si alguien quiere construir incluso una nueva característica importante, no requiere una coalición de ingenieros y un gerente para supervisar el esfuerzo. (Eso no quiere decir que las personas tienden a trabajar solas. Todo lo contrario: como no hay mucha jerarquía o un gerente de producto, suele haber mucha discusión, pruebas internas y sugerencias y ayuda de otros).
Obviamente, hay muchos gerentes de productos excelentes en el mundo. Aún así, en la medida en que tener un “gerente de producto” implica tener una separación entre la persona que construye el producto y la persona que lo administra, algunas desventajas parecen surgir repetidamente:
- Pueden retrasar la iteración que está en el corazón de la creación de excelentes productos. Si la misma persona está diseñando e implementando, el ciclo de retroalimentación tiene lugar dentro de la cabeza de esa persona. Incluso si los gerentes de producto tienen ideas igualmente buenas, es probable que no puedan experimentar con tantas de ellas.
- Aunque esto no siempre sucede, creo que es fácil para las estructuras de gestión de productos hacer que la programación sea menos divertida. La mayoría de las personas se enamoran de la programación debido a la facilidad con la que puedes saltar de una idea a una reificación tangible y funcional. Si ese camino se desvía a través de una organización de gestión de productos, mucha de la alegría puede disolverse. Siempre me preocupa cambiar el disfrute por una ostensible eficiencia. Incluso si es más eficiente, si alguien termina gastando un 30% menos de tiempo pirateando un proyecto porque es menos divertido, probablemente aún haya perdido.
Muchas personas en Stripe han fundado nuevas empresas antes (14 de nosotros, creo), y parte de nuestro objetivo en la configuración de la empresa no es solo construir un producto exitoso, sino también crear el mejor ambiente de trabajo a largo plazo que puede. Si algo es oportuno de inmediato, pero hará que las grandes personas estén menos satisfechas a largo plazo, no queremos hacerlo.
Al crear un producto, siempre he pensado que “considerar hacer algunas cosas que no escalan” es un buen consejo: agregar contenido manualmente, visitar a sus primeros usuarios en persona, revisar todas las contribuciones a mano, etc. Cómo eliminar las partes no escalables a medida que crece es mucho más fácil que tratar de diseñar la solución escalable desde cero.
Estamos tratando de hacer lo mismo con la organización Stripe. (Casi todos nuestros correos electrónicos son internamente públicos. ¿Cuánto tiempo podemos sostener esto? No estoy seguro). Hemos topado con muchos cuellos de botella, y la afirmación aquí ciertamente no es que hayamos resuelto todo. [2 ]
Aún así, no tener gerentes de producto está funcionando bien hoy, y sospecho que no terminaremos con algo que se parezca exactamente a la mayoría de las otras compañías de tecnología. Pero será interesante ver cómo se desarrolla.
[1] Aunque esta publicación se centra principalmente en la ingeniería de productos, los ingenieros que trabajan en otras partes de Stripe, sin mencionar a las personas que trabajan en diseño, negocios, soporte, etc., son bastante excepcionales. Sospecho que el flujo de trabajo descrito aquí funciona solo si todos se llevan muy bien y tienen una perspectiva similar.
[2] A veces, siento vagamente que las publicaciones de “cómo trabajamos” tienen la sensación de aldeas Potemkin. “Todos están felizmente felices y nada podría ser mejor”.