20 meses, 2.000 horas de trabajo, 200.000 € de pérdidas: una historia de perseverancia y costes hundidos





En pocas palabras, a veces es difícil saber si eres persistente o estás atrapado en una trampa de costos hundidos. Le di veinte meses a mi proyecto actual, trabajé en él un total de dos mil horas y “perdí” doscientos mil euros en mi decisión de hacer esto y no otra cosa. El proyecto aún no se ha completado. Debajo del corte: una historia sobre cómo fue.



Delineador de ojos



A principios de 2018, después de más de diez años como desarrollador a tiempo completo, estaba harto de las intrigas de la oficina y de perder el tiempo en reuniones. Tenía muchas ganas de renunciar a todo, convertirme en mi propio jefe y dejar mi huella en la realidad circundante.



Era un cruce entre un líder tecnológico, un jefe de departamento y un gerente de proyectos, ganaba buen dinero, tenía mucha libertad para organizar el trabajo, manejaba un excelente equipo, en general, no tenía nada de qué quejarme. Yo mismo decidí cómo organizar mi jornada o semana laboral, participé en proyectos interesantes y desafiantes, y el equipo fue maravilloso ... aunque ya he hablado de esto.



Y, sin embargo, estaba dispuesto a sacrificar todo esto, solo para probar algo nuevo en mis propios términos.



Primeros intentos



Tenía un colega y un amigo que también quería crear sus propios productos, así que empezamos a intercambiar ideas juntos. Nos tomó algo de tiempo encontrar la Idea (probablemente todos conocen este anti-patrón). Al final, pudimos proponer dos ideas que parecían prometedoras.



Uno fue el desarrollo de productos digitales para las escuelas para ayudarlos a rastrear alimentos, pagos, asistencia y más. Por lo que observamos en la experiencia de nuestros propios hijos, quedó claro que había problemas reales que debían abordarse. Se presentaron varios competidores en el mercado belga, pero no muchos, y para nuestra parte del país, ninguno en absoluto. Además, estábamos planeando un enfoque completamente diferente.



La segunda idea era crear una plataforma digital para restaurantes donde pudieran publicar menús personalizados, conectarse con sus clientes (por ejemplo, enviar ofertas especiales), construir una reputación, etc.



Empezamos a trabajar en un producto para escuelas. Dado que ambos somos desarrolladores full-stack, no hubo grandes dificultades técnicas. Discutimos nuestra idea con varias escuelas. Las personas con las que hablamos estaban muy entusiasmadas, pero no estaban seguras de poder sacar el dinero de su presupuesto. Además, las escuelas pertenecen al sector público, lo que significa que todavía teníamos que pasar por licitaciones. No me asustó demasiado, pasé bastante tiempo al otro lado de las barricadas, participando en la selección pública de postulaciones. Decidimos firmemente que valía la pena intentarlo. Pero después de un tiempo mi amigo se sintió abrumado por las dudas y dejó la empresa sin siquiera advertirme. Seguí trabajando, pero sentí agudamente que me habían dejado solo en el barco. Sintiéndome pésimo, estaba decepcionado.



Después de eso, tuvimos una conversación con otro colega que también estaba interesado en unirse a nosotros. Esto le dio un nuevo ímpetu, pensé que los tres tendríamos más probabilidades de tener éxito. Decidimos dejar la primera idea y abordar la segunda.



Esta vez, las cosas dieron un paso más: logramos meternos en la incubadora de startups. Esto nos dio la oportunidad de seguir adelante, elaborar un plan de negocios, etc. En el proceso, la idea cambió su apariencia varias veces, pero de todos modos comenzamos el desarrollo. Pero luego, desafortunadamente, todo siguió el mismo camino: el desarrollo tomó más tiempo de lo que pensaban los socios, los clientes potenciales no se pusieron al día inmediatamente con la idea. Los socios se preguntaron rápidamente si seríamos capaces de vender el producto. No sé si lo sabían o no, pero su motivación e interés por el proyecto se redujo a casi cero; Intenté seguir trabajando. Finalmente me di cuenta de que ya no estaban en el negocio y yo mismo abandoné ambas ideas. También perdí la motivación: fue difícil aceptar el fracaso y nuevamente caí en el desaliento.



Creo que con la llegada de COVID, el segundo producto podría convertirse en un producto estelar. Pero en ese momento, las personas con las que estábamos negociando no mostraron interés. Les preocupaba la trazabilidad y querían conservar la capacidad de evadir impuestos (lo digo en serio). Así que ahora nunca sabremos qué habría resultado.



Gancho a través de freelance



De una forma u otra, decidí implementar otra idea que se me ocurrió: postularme como freelance. Mi objetivo era mantener mis ingresos al mismo nivel y, al mismo tiempo, ganar algo de tiempo libre. Al principio pensé que podía ampliar mis horizontes mediante la consultoría. Por lo tanto, en enero de 2019, interrumpí mi carrera de diez años como desarrollador a tiempo completo durante un año y comencé mi propio negocio independiente . No había ningún riesgo particular en esto: en el peor de los casos, mi plan habría fallado miserablemente y habría regresado con mi antiguo empleador. Ya tenía un contrato con mi primer cliente (una pequeña startup belga de FoodTech) y estaba ansioso por luchar.



Sin embargo, después de unas semanas, mis sueños se convirtieron en una especie de pesadilla. Hice lo mejor que pude, pero de alguna manera no funcionó. No me gustó el ambiente y el cliente no estaba muy contento con mi trabajo. La situación se estaba poniendo tensa. Después de tres meses rechazaron mis servicios. Fue molesto y un poco aterrador, porque no había preparado ningún plan de respaldo. Por cierto, nunca me pagaron la última factura. Aparentemente, ya no veré este dinero.



Resultó que la empresa necesitaba un líder que pudiera declararse a sí mismo en voz alta y cosas así. Y siempre he sido una persona taciturna, el trabajo en equipo y una idea común del proyecto para todos es más importante para mí, no me esfuerzo por gritar a los demás. En general, mi estilo de trabajo, aparentemente, no encajaba en la cultura corporativa.



Encontré al siguiente cliente sin mucha dificultad. A finales de abril comencé a trabajar en otro proyecto y me quedé allí durante varios meses. En fin, todo le fue mucho mejor.

Todavía me perseguía la idea de crear mis propios productos. Parecía que este es el único camino que me conviene. Todavía lo creo. Cuando trabajas en una empresa o como autónomo, solo los sueños de otras personas se hacen realidad. El dinero es, por supuesto, bueno, pero no puedes escalarlo de ninguna manera y, además, sigues estando "en poder" de otras personas. Ya no quería eso.



Durante 2019, también trabajé en mi libro, y esto también requirió mucho tiempo y esfuerzo, casi un año entero.



El nacimiento del proyecto SaaS



En mayo de 2019, un antiguo colega me presentó a una persona: su esposo era un hombre de negocios que buscaba un socio para su nueva empresa. Por supuesto, estaba interesado en esa oportunidad. Me habló del proyecto y se lo presentó al tercer futuro fundador. Llevaban trabajando alrededor de un año y necesitaban un director técnico. El tercer socio se retiró.



El objetivo era crear un producto SaaS (B2B) que ayudara a las empresas a realizar reuniones de manera más eficiente. No sonaba muy atractivo, pero sabía por experiencia propia cuánto tiempo las reuniones pueden hacer perder a todos en la sala si no se organizan correctamente. Por tanto, la idea de cambiar el statu quo parecía bastante sensata.



Además, el tercer socio era un consultor lean con una gran lista de clientes potenciales, lo que hizo que el proyecto fuera aún más atractivo. No trabajó en TI y, sin embargo, logró crear su propia herramienta y metodología, que utilizó con gran éxito en el trabajo con los clientes. Así que no se trataba de una idea abstracta, había un problema específico y personas dispuestas a pagar por una solución. Como puede imaginar, me uní rápidamente a ellos.



Primeros meses



Estuve de acuerdo con mi segundo cliente autónomo para un trabajo a tiempo parcial, por lo que logré liberar unos dos días para un proyecto SaaS. No mucho, pero funcionará para empezar. Estaba nervioso, pero al mismo tiempo estaba en el séptimo cielo. Esto continuó hasta finales de agosto.

En esos primeros meses, me sumergí de lleno en el código base existente, clasifiqué la pila sin mucha molestia, hice un análisis GAP y me ayudé a crear una hoja de ruta clara y funcional para el proyecto de desarrollo y seguridad.



El proyecto utilizó CouchDB porque la idea era destacar de la competencia mediante la implementación temprana del soporte fuera de línea. Lo di por sentado y me puse a trabajar. Pronto quedó claro que el proyecto debía reescribirse prácticamente desde cero. Había demasiados problemas en el código base existente, era más como una prueba de concepto. Decidimos que haríamos este trabajo gradualmente para no tener que demoler todo de una vez. Posteriormente, resultó que la decisión fue incorrecta.



Entonces, de mayo a julio, clasificamos las historias de los usuarios, hicimos un story map, hicimos una hoja de ruta y aclaramos los volúmenes del producto mínimo viable. Creé wikipedia, porté el código al repositorio mono, creé y limpié el trabajo pendiente, y así sucesivamente. Entre julio y septiembre, hice esto y aquello: sistema de compilación, Docker / docker-compose, integración continua, autorización, localización de software y similares. También en septiembre, recorrimos Francia en un tráiler, la última gran aventura antes de COVID. Pero esa es otra historia.



Período de trabajo duro



En septiembre comencé a trabajar en el proyecto durante una semana completa. Este fue un paso arriesgado tanto para mí como para el negocio: perdí ingresos durante varios meses y los gastos siguieron siendo los mismos. Pero quería acelerar mi inicio de SaaS. Me molestó que avanzáramos tan lentamente.



Esperábamos tener el producto en el mercado a finales de 2019. Desafortunadamente, resultó, para decirlo de manera suave, diferente.



Sin embargo, de septiembre a diciembre disfruté dedicando todo mi tiempo al proyecto. Pude concentrarme realmente en eso, trabajé como me gustaba (¡finalmente!) Y sentí que el proceso avanzaba a buen ritmo. Configuré una automatización de la versión, hice una infraestructura de ventas (cambié a Kubernetes, probé AWS y finalmente me decidí por DigitalOcean), implementé el soporte HTTPS, implementé una función de búsqueda básica, rutas de navegación, cierre sesión, creé un conjunto de datos de prueba, una interfaz de línea de tiempo de comando y etc.



En diciembre, finalmente salió mi libro de ochocientas páginas sobre TypeScript (esto es más un ladrillo que un libro), así que me quité uno de los hombros y pude dedicar más tiempo a mi familia ... y al proyecto SaaS.



( )



Desafortunadamente, la pantalla más importante y más difícil de las reuniones se retomó solo en diciembre. Con un gran retraso, pero antes no lo logramos.



En ese momento, las dudas comenzaron a atormentarme sobre si habíamos elegido el enfoque correcto y cuán efectivo era. Estaba exhausto, pero las cosas iban muy lentamente. Y lees a la gente en Twitter: lanzan un producto terminado en uno o tres meses. Y me pregunté, “¿Qué estamos haciendo mal?”, Pero no pude encontrar una respuesta.



A finales de 2019 ya me había dedicado unas mil horas al proyecto, es decir, el lucro cesante para mí era de cien mil euros (esto es lo que habría ganado en este periodo de consultoría). Y, sin embargo, decidí no escuchar esta voz interior y centrarme en el desarrollo del proyecto. Me pareció que todo valdría la pena.



2020: tres trabajos, dos hijos y muy poco tiempo



En enero de 2020, quedó claro que teníamos un largo camino por recorrer. Todavía quedaba mucho trabajo pendiente (funcionalidad importante, correcciones de errores, agujeros de seguridad importantes), por lo que retrasamos la fecha de lanzamiento hasta junio de 2020. Mis socios eran más optimistas, pero yo ya conocía bien el ritmo real de trabajo y entendía que este tiempo no sería suficiente. Sin embargo, decidimos esforzarnos e intentarlo.



Al mismo tiempo, traté de encontrar un cliente para realizar consultas durante 1 a 3 días a la semana, pero no pude encontrar a nadie que aceptara esas condiciones. Por lo tanto, tuve que volver a trabajar en la empresa a tiempo parcial; esto se pudo arreglar, ya que estaba de baja por paternidad.



No esperaba tener que volver con mi antiguo empleador, y eso afectó mucho mi motivación. Después de regresar, perdí mi posición, estatus, equipo y todo lo demás. La sensación fue como si me hubiera arrastrado para pedir ayuda.



En mi antiguo lugar de trabajo, me convertí en una especie de bombero que soluciona problemas técnicos difíciles. Fue interesante, pero también doloroso: me gustaba trabajar en equipo y ahora tenía que actuar solo la mayor parte del año. Y cuando nos golpeó la pandemia, empeoró aún más ... Sin embargo, no debería quejarme: había suficiente salario para vivir, lo cual fue muy aprobado por la familia, y muchos lo pasaron mucho más mal.



Al mismo tiempo, traté de mantener mi empresa a flote de esta manera. Estos intentos tenían poco sentido. Utilicé toda la energía que pude reunir, renuncié al tiempo libre, los juegos, lo que sea. Me convertí en un autómata. Mientras trataba de mantener un equilibrio saludable, COVID mezcló todas las cartas. Y, sin embargo, pude ganar tiempo para los juegos de mesa entre miles de millones de horas de trabajo a la semana.



Entre enero y julio, no hicimos mucho por el proyecto SaaS en términos de funcionalidad. Las cosas fueron lentas y apretadas. Comencé a cuestionar mis habilidades y cómo trabajaba. Fui cada vez más enfático a favor de reducir el tamaño y centrarme en lo esencial, pero aún así no quería sacrificar la calidad del código. No es que exigiera demasiado al respecto, pero era inaceptable que no le prestara atención en absoluto. En cambio, insté a los socios a renunciar al menos por un tiempo a las cosas secundarias, por ejemplo, el modo fuera de línea (para el que ya hemos matado un mes completo) o el soporte para dispositivos móviles, sin los cuales al principio definitivamente sería posible prescindir.



Llegamos a la conclusión de que la UI / UX del producto es muy pobre y no impresionará a los usuarios. Esto se refería principalmente a la pantalla de reuniones, que era la más difícil. Decidimos contratar a un diseñador de UI / UX. Nos costó tres mil euros por cinco días-hombre. El precio era razonable, pero la integración del nuevo diseño requirió cambios en varias partes del sistema a la vez (reemplazamos Angular Material con Tailwind, creamos nuestro propio tema, refactorizamos el modelo de datos y algo más), y esto, a su vez, movió la línea de tiempo aún más. ... En cuanto al tiempo total invertido, lo dejamos pasar por más de dos meses, pero el efecto resultó ser excelente (aunque nos dimos cuenta un poco tarde). Este fue claramente el movimiento correcto.



Lo que mata la productividad



En junio de 2020, el producto mínimo viable estaba lejos de estar completo. Nunca terminamos la pantalla de la reunión y había un montón de otras imperfecciones. Aplazamos el lanzamiento nuevamente, esta vez hasta septiembre.



A lo largo del año, nuestras condiciones laborales fueron cambiando constantemente, y me parece que eso fue lo que más nos estorbó. Hablando de mí, trabajé en un proyecto SaaS los lunes y viernes, además de dos miércoles más al mes. Tuve que cambiar entre tareas radicalmente diferentes en una semana y fue muy difícil, principalmente psicológicamente.



Al mismo tiempo, uno de los socios (el que se está desarrollando conmigo) a menudo me pedía ayuda en días arbitrarios. Antes de emprender este proyecto, dejó la programación por muchos años, por lo que fue más difícil para él. Esto exacerbó aún más el problema de cambiar de contexto. Varias veces al día tuve que dejar lo que estaba haciendo para ayudarlo a despegar, lo que hizo la vida aún más difícil.



Por supuesto, no se puede juzgar unilateralmente aquí: mi socio tiene la mayor experiencia en hacer negocios, marketing y ventas y un círculo impresionante de conocidos, por lo que tampoco está privado de fortalezas.



Sin embargo, todos los problemas técnicos, administración de actualizaciones, corrección de errores, seguridad, documentación, trabajo atrasado, proyecciones, etc., recayeron sobre mí. Sucedieron muchas cosas, y esto definitivamente influyó en el tiempo de lanzamiento del producto.



La base de datos NoSQL tomó mucho de nuestro tiempo, y ahora me queda muy claro que no debería haber estado jugando con ella por el bien del modo fuera de línea. Al final, esto podría haberse logrado con otras soluciones. En ese momento, ya habíamos pospuesto la conexión fuera de línea hasta futuras versiones, y nuestro modelo de datos era muy relacional. Ya no había ninguna razón para aferrarse más a él. Ella solo nos ralentizó, complicando todas las operaciones.



Y, sin embargo, decidimos dejarlo, creyendo que los costos de recursos para la transición al RDBMS clásico serían críticos y nos llevarían demasiado atrás. No puedo decir con certeza que en esta situación sea más prudente: dedicar más tiempo a los cambios para mejorar con la esperanza de que en el futuro nos ahorren tiempo, o continuar implementando la funcionalidad con una pelea, arriesgando bajas tasas de trabajo ... Tomamos el segundo camino, no Sé si esta decisión fue lo mejor.



Después de la primera ola



Luego salimos de nuestro camino, introduciendo la autorización, configurando máquinas de estado para diferentes conceptos (ya que las colecciones tienen un cierto ciclo de vida, y esto nos parece muy importante desde un punto de vista organizacional), implementando validación y varias capacidades dentro de la aplicación - formato de texto, exportar a pdf y así sucesivamente. ¡Pero no se podía recordar el producto mínimo viable! Pero ya lo hemos recortado al máximo.



Al mismo tiempo, los fondos de la cuenta de la empresa se derretían como Olaf al sol. Pasaron los meses y poco a poco volvieron las dudas. Si bien hemos logrado mucho en algunos aspectos, el trabajo parecía avanzar insoportablemente lento.



¿Ahora que?



Alrededor de octubre de 2020, comenzamos a buscar dónde podríamos obtener fondos. Pensamos si tomar un préstamo con un seguro del 50% del Fondo Europeo de Inversiones, o quizás intentar sacar dinero del presupuesto regional o nacional. Acudimos al banco, hicimos una solicitud de financiamiento del presupuesto regional, y así sucesivamente, pero hasta ahora nada ha pasado.



Desafortunadamente para nosotros, debido a COVID, los clientes con los que más hemos contado (hospitales) ahora claramente no pueden tomarse el tiempo para integrar nuestra solución. Es decir, incluso si preparamos todo para ellos, ellos mismos no estarán listos. Entonces tuve que mirar otros segmentos de audiencia y reevaluar la escala. Esto nos llevó a esbozar una versión "siguiente" para nosotros, donde habrá suficiente funcionalidad para persuadir a otros clientes a comprar el producto. Pero a nuestra velocidad actual, dicha versión estará lista a fines de 2021, siempre que continuemos trabajando durante media semana laboral.



A la luz de nuestras dudas sobre el ritmo de desarrollo y el estado del mercado, comenzamos a considerar otros métodos de arranque. Actualmente estamos considerando comenzar con un modelo de servicio para ganar tiempo y calentar, y luego pasar a SaaS. Pero hasta ahora esto es solo al nivel de una idea. Todo es bastante confuso.



Y ahora, principios de 2021, otras mil horas gastadas, lo que significa doscientos mil euros de lucro cesante, y sigo trabajando en este proyecto, en lugar de hacer otra cosa ... Y el proyecto ni siquiera tiene oportunidad de entrar al mercado en lo previsible futuro.



Estrés y duda



Hasta la fecha, he invertido dos mil horas en el proyecto y esta cifra parece enorme. Casi me avergüenza pensar en lo poco que podemos cobrar por esos costos. Quizás esté bien, quizás no. Honestamente hice mi mejor esfuerzo, pero a veces siento que no sé nada y no soy capaz de nada en mi profesión (hola síndrome del impostor, cómo te extrañé). Trabajé duro, me senté en un proyecto por la noche y los fines de semana, tratando de acelerar el proceso, pero aún es lento.



A estas alturas, la cuenta bancaria de mi empresa claramente ha entrado en territorio negativo. No durará seis meses. Estaba agotado por el estrés (aunque todavía podía poner una cara tranquila y sonreír). Sigo trabajando a tiempo parcial y probablemente seguiré así durante la mayor parte del año. Sería genial volcarte todas estas obligaciones en ti mismo y dedicar todo el tiempo y la energía al proyecto, pero hasta ahora no funcionará. Hay un camino largo y triste por delante y todavía no estoy seguro de nada.



Es posible que hayamos decidido dejar la base de datos NoSQL en vano. Quizás todo se vea socavado por la necesidad de dividir los contextos. Puede que sea un mal desarrollador. Quizás estemos prestando atención a algo incorrecto. Quizás estoy demasiado preocupado por la calidad del código. Quizás valió la pena rendirse hace un año. Quizás necesitemos otro programador. Quizás quizás quizás.



Parte de mí está decidida a continuar. Primero, porque todavía creo en el equipo y en el hecho de que el producto es realmente necesario y puede ayudar a los equipos y organizaciones a trabajar de manera más eficaz. En segundo lugar, porque todavía tengo mucha energía y perseverancia. Odio rendirme a mitad de camino. Finalmente, ya he dedicado mucho tiempo y esfuerzo al proyecto; si lo dejas ahora, resulta que todo fue en vano.



Y así, me siento aquí con mis dudas, mucho dinero perdido, mucho trabajo por delante y una total falta de confianza en nada. La sensación de que estaba atrapado en un círculo vicioso. Renunciar significa perder y, quizás, perder algo importante. Por otro lado, continúa la posibilidad de caer en una trampa de costos hundidos con el riesgo de perder aún más. No sé la respuesta correcta y nadie la sabe. Ambos escenarios son muy reales.



Conclusión



Perdóname, te engañé: este artículo no tiene conclusión. Ni siquiera hay preguntas específicas (aparte de las que dan vueltas en mi cabeza como un disco atascado). Esta es solo mi historia, no completa, pero en una versión abreviada.



Esto es lo extraño: en 2020, también pasé mucho tiempo escribiendo en blogs; aproveché la oportunidad para hablar sobre lo que aprendí mientras trabajaba en un proyecto SaaS, e incluso gané unos cien dólares con él. No hay nada de lo que presumir, pero iluminó mi año. Quizás fue esta experiencia la que me empujó a empezar a leer un libro nuevo.... Quizás esta voz interior me dice: “¡Basta! ¡Probemos algo diferente! " O quizás simplemente disfruto compartir conocimientos y ayudar a la gente. Esto también explicaría mi adicción a la consejería. Aunque no lo sé. No se nada.



Son las dos de la mañana, ya es lunes. Y los lunes ... estoy trabajando en un proyecto SaaS. Esto es lo que haré, porque todavía no he tomado una decisión, aunque la presión es poderosa. Quizás a finales de 2021, actualice este artículo con una historia sobre cómo conquistamos el mercado. ¡Y eso es todo por hoy!



All Articles