5 puntos clave para iniciar un proyecto con éxito

En esta ocasión te voy a enseñar 5 lecciones importantísimas para comenzar bien un proyecto de backend.

Estas lecciones las he ido aprendiendo durante mi experiencia en diferentes empresas y sobre todo por estar durante un largos periodos de tiempo trabajando en el mismo proyecto. Esta es la única forma de darte cuenta de que has hecho cosas bien y cosas mal. ¿Es lógico no? Si cambias de proyecto con mucha frecuencia no te da tiempo a ver los errores que has cometido.

Permanecer durante mucho tiempo en un proyecto te enseña a ver tus errores y los de tu equipo para aprender de ellos y mejorar en el futuro.

Así que aquí van mis 5 puntos clave:

  1. Piensa bien la arquitectura. Es más importante incluso que el lenguaje a utilizar. ¿Por qué? Pues porque hay problemas en los que prácticamente se resuelve con una buena arquitectura, independientemente de la tecnología que utilices. Por ejemplo: si necesitamos compartir muchos datos entre todos nuestros clientes (o elementos del sistema) y todos necesitan el 100% de la información, montar una arquitectura P2P (peer-to-peer) ayudará al sistema a escalar. Porque cuantos más clientes hay, más rápido se comparte la información a medida que estos comienzan a tenerla disponible.
  2. Elige el lenguaje correcto para tu problema: claramente una vez que tienes la arquitectura a construir, será necesario buscar un lenguaje de programación que te ayude a crearla más fácilmente. Este punto es difícil de conseguir porque no siempre conocemos ese lenguaje y eso puede provocar que tomemos una mala decisión.
  3. ¿Utilizo framework?: por supuesto. Este punto está muy relacionado con el anterior porque será un framework del lenguaje de programación que hayas elegido. Será clave en la facilidad, velocidad y calidad con la que crearás tu aplicación. Es como que un carpintero tuviera una única herramienta para tallar la madera o que, por el contrario, tuviera muchas herramientas distintas para poder trabajar mejor. Tengo que aclarar que no es obligatorio, pero para un proyecto a largo plazo en el que trabajaréis varios desarrolladores, vendrá muy bien tener documentación de cómo funciona aunque haya una pequeña curva de aprendizaje. Además de no reinventar la rueda.
  4. Piensa en la seguridad: desde el primer minuto. Hoy en día es obligatorio un mínimo de seguridad y más en el backend. Da muy mala imagen una filtración de datos y puedes perder muchos usuarios con un tema tan delicado como la seguridad de sus datos, cuentas, etc.
  5. Y, por último, la escalabilidad. Es necesario saber cómo tiene que escalar la aplicación. Si tiene que dar soporte a 100, 1.000 ó 1.000.000.000 de usuarios a la vez. Además, este punto está muy unido a la infraestructura que utilizará tu aplicación.

Obviamente hay muchos más puntos clave a tener en cuenta, así que te invito a que los comentes para que podamos hablar de ellos en otros posts. Todos estos puntos forman parte del core de tu aplicación, la definirán desde la primera línea de código y pueden provocar cambios muy importantes en ella.