Comprendiendo el valor de negocio de tu aplicación

Rubén Medellín
Developer Serio
Published in
3 min readJun 25, 2016

Como desarrolladores full-stack no es suficiente con saber escribir código. Eventos como hackatones nos han enseñado a que tu aplicación no sirve de nada si no tienes un plan de negocio y una decena de clientes antes de planear qué es lo que vas a hacer. Es por esto que debemos de aprender a ver más allá de nuestro código y ver el verdadero valor de negocio que le ponemos a nuestro startup (si tienes un script de más de 200 líneas ya cuenta como startup).

Programar debe agregar valor de negocio como vemos en este ejemplo

Viendo la definición de “programar”, la RAE nos dice que es “Idear y ordenar las acciones necesarias para realizar un proyecto”, queda más claro si lo comparamos con un programa de actividades o un programa de televisión. Es así pues, que parte esencial de un programador es poder hacer buena planeación y tener las tareas bien categorizadas y ordenadas. Por lo mismo, debemos escoger las herramientas que nos lo permitan.

Si sabemos que nuestra planeación es impecable (donde hay al menos un ratio de 2 a 1 de managers vs programadores, considerada una buena práctica en empresas grandes), lo mejor será utilizar un lenguaje compilado como Java, C# o Cobol. Esto es porque podemos agendar nuestros tiempos de compilación y mejorar los números en nuestros reportes, los cuales obviamente están alineados con objetivo de negocio. De otro modo, si estamos en una etapa de rápido crecimiento y lo que necesitamos es escalabilidad, lenguajes como Rails y Javascript son la mejor opción, ya que no requieren compilarse y tienen características como threads y continuations que nos permiten darnos tiempo para tener juntas y trabajar en cosas como actividades de integración y recreativas.

Estos lenguajes tienen también la ventaja de que están pensados desde su origen en cumplir con las expectativas de negocio, ya que de acuerdo a economistas modernos, el dinero es el objetivo de negocio más importante. Jquery fue el primer lenguaje explícitamente diseñado para esto, ya que permite que cualquier persona pueda aprender a programar y hacer aplicaciones, incluso sin tener un contrato o un salario, lo cual nos reduce costos. Esto queda de manifiesto en su notación, donde incluso podemos asignarle un valor económico a los elementos de nuestros sitios con la notación del signo de dólar

Ejemplo de valor de negocio expresado con jQuery. Los otros valores como ‘7%’, ‘43’ y ‘79’ fueron producidos por economistas y estadistas de la empresa.

La evolución de jQuery es Angular, que tiene la notación `$$` para indicar aún más valor de negocio. Les recomiendo mucho que lean sobre React, que es una nueva versión de Angular que tiene características como retorno de inversión implícito dentro de las funciones (además que nos ahorra escribir `return` cada vez, double win!) y más dependencias que agregan valor.

Una vez que hayas escogido tu stack tecnológico, es necesario que identifiques las cosas que aportan al valor de negocio para que puedas enfocarte a ellas, aunque cada una amerita su propio artículo por separado:

  • Usa un control de versiones que te permita trabajar colaborativamente con otros, como Git o Excel.
  • Apóyate de herramientas de deployment que te permitan tener rápida escalabilidad y pivotear de una manera ágil mostrando su proposición de valor. Como aún nadie sabe bien qué es eso, puedes seguir usando lo que sea que uses ahora.
  • Realiza TDD y BDD, asegúrate de que las pruebas capturen el valor de la compañía y de que sean claras para que todos los steakholders — incluyendo el CEO — puedan entenderlas, modificarlas y validar que se están cumpliendo estos objetivos.
  • Asegúrate que las dependencias tengan una licencia compatible con el valor de negocio (pagar abogados siempre está en contra, a menos que tu empresa tenga abogados más caros que la competencia y tu estrategia sea demandarlos primero)

En resumen, para convertirte en un full-stack developer en la época moderna, tienes que complementar el código con nociones de estadística, economía y ciencia de los datos, que te ayudaran a tomar mejores decisiones serias sobre que stack tecnológico usar, y que además producirán programas de mejor calidad y sin bugs.

--

--

Rubén Medellín
Developer Serio

Developer, the kind that gets annoyed by tabs instead of spaces. Not null.