Header Ads Widget

Ticker

6/recent/ticker-posts

Calcular el costo total de ejecutar un producto API

 




Entonces, desea desarrollar y distribuir una API. Conectar a las personas con sus servicios es una excelente manera de construir una base de usuarios. También es un camino hacia la monetización. Este éxito no llega gratis. La cantidad de obligaciones monetarias detrás de la ejecución de una API puede sorprender a algunos desarrolladores. Los gastos, tanto iniciales como continuos, varían de una empresa a otra.

Nuestro objetivo es estimar el costo mensual de ejecutar una API . Si es propietario o desarrollador de un producto, esperamos que estas cifras generales le proporcionen una idea de sus posibles costos operativos. Esto implica algunas conjeturas de nuestra parte, así que tome estos números con cautela. Dicho esto, las fuentes de estos costos son 100% legítimas. Desglosaremos los diversos factores en juego al desarrollar y ejecutar su producto API.

Presentamos nuestro caso de uso

Por el bien de nuestro ejemplo, diremos que nuestra API admite 100 cuentas de desarrollador, cada una de las cuales representa 10,000 llamadas por mes, un millón de llamadas API totales en el mismo período. Este nivel de participación ayudará a formar la base de nuestras otras estimaciones. Calcularemos estos costos desde el desarrollo hasta la producción, incluyendo el mantenimiento a largo plazo. Primero abordemos lo que consideraríamos los costos iniciales asociados con el desarrollo.

Evaluación del tiempo de desarrollo

Probablemente el aspecto más complicado de la fijación de precios sea el desarrollo, ya que el proceso de diseño de la API incluye numerosas contribuciones de múltiples partes interesadas. Tendrá miembros permanentes de su equipo, pero algunas etapas de desarrollo pueden requerir una consulta externa. Supongamos que contratamos a contratistas para que nos ayuden a conceptualizar y desarrollar la API. Podemos calcular los posibles costes adicionales desde aquí:

Investigación

Hay muchas consideraciones importantes en su API. ¿Quiénes serán tus usuarios? ¿Qué datos o integraciones de terceros deben incluirse? Estas decisiones sentarán las bases para su API. También influirán en el tiempo que su equipo pasará en la etapa de investigación.

Digamos que contratamos a un desarrollador de software por contrato a tiempo completo y dedicamos tres días a la investigación. Según Glassdoor , los ingenieros de software a tiempo completo ganan un promedio de $ 86,774 por año. Eso es $ 7,231 mensuales. Sin embargo, hay más cálculos por hacer. Los contratistas independientes ganan aproximadamente un 50% más que sus contrapartes asalariadas:

  1. $ 7,231 x 1.5 = $ 10,847 mensuales (contratista)
  2. $ 10,847 / 30 días = $ 362 por día (contratista)
  3. $ 362 x 3 días = $ 1,086 (costo del contratista en la etapa de investigación)

Una vez que tenga sus ideas escritas en papel, es hora de comenzar a construir sus componentes. Debido a que la base de datos es tan fundamental para la API, lo abordaremos a continuación.

Diseñar estructuras de datos

La base de datos es el elemento vital de su API, la columna vertebral de la información crucial que ofrece a sus clientes y usuarios cotidianos. Desarrollar esto de la manera más compatible y estructurada impulsará el éxito de su API. Podemos seguir los mismos principios vistos anteriormente con la etapa de investigación. El diseño lleva tiempo, al igual que el establecimiento de las medidas de seguridad adecuadas. Esto puede llevar entre 5 y 10 días . Lo promediaremos en 7.5 días para nuestros cálculos:

  • $ 362 por día (contratista) x 7.5 días = $ 2715

El siguiente paso es la creación de prototipos, la etapa exploratoria de desarrollo.

Creación de prototipos

Una vez que sus estructuras de datos y seguridad estén definidas, es hora de unir la funcionalidad experimental. Este paso precede al desarrollo de un MVP. La creación de prototipos verifica la conectividad de su API y confirma que los puntos finales son funcionales. Esto puede demorar de 3 a 5 días :

  • $ 362 por día (contratista) x 4 días = $ 1,448

Hacer un producto mínimo viable (MVP)

El MVP es esencialmente su producto principal, menos las campanas y los silbidos. Esta API despojada generalmente excluye características adicionales que eventualmente se convertirán en producción. Dado que esta versión es básica, se espera que sea funcional antes de que entren en juego las adiciones. Por lo general, esto toma alrededor de cinco días:

  • $ 362 por día (contratista) x 5 días = $ 1,810

Monitoreo y galvanización

Estos dos pasos van de la mano. Querrá establecer una supervisión basada en métricas de su API para evaluar cómo el tráfico impacta su ecosistema general. Puede utilizar la supervisión para fortalecer su solución. Esto incluye identificar cuellos de botella, agujeros de seguridad y más. Las funciones de registro y limitación pueden estar integradas. También tendremos que crear nuestras alertas.

Este paso requiere planificación y experimentación, generalmente extendiendo nuestra asignación de tiempo a 5 a 10 días (o 7.5 días en promedio):

  • $ 362 por día (contratista) x 7.5 días = $ 2715

Documentación

Las personas usarán tu API, por lo que debes asegurarte de que las instrucciones y los casos de uso se presenten de manera adecuada. Estos documentos explicarán los entresijos de la API. Esto lleva aproximadamente tres días. Los escritores técnicos suelen asumir estas responsabilidades. Un escritor interno de nivel medio cuesta un promedio de $ 30 por hora, adaptado de las cifras de Glassdoor . Convirtamos esa tasa:

  1. $ 30 por hora x 8 horas = $ 240 por día
  2. $ 240 diarios x 3 días = $ 720

Esta es una estimación aproximada, por supuesto, pero nos da una idea de cómo funcionan los costos durante el incremento. Sus costos iniciales constituyen la mayor parte de sus gastos relacionados con API, pero no está fuera de peligro. Ahora, pasamos a los costos continuos.

Costo inicial estimado (todos los elementos de desarrollo): $ 10,494

Costos de implementación y mantenimiento

Pasar del desarrollo al despliegue significa dar a conocer su API. Esto incluye alojamiento, mantenimiento y otras actividades para ayudar a que su API llegue a los usuarios. Desglosaremos estos elementos uno por uno.

Costos de hospedaje y bases de datos remotas

Su API actúa como intermediario, conectando a sus usuarios con sus servicios de alojamiento. El valor de su API reside en su capacidad para procesar estas solicitudes, una y otra vez. Los proveedores de alojamiento de calidad ofrecen el máximo tiempo de actividad y velocidad. Si nosotros estamos Fielding aproximadamente un millón de llamadas mensuales, es probable que sea mejor optar por una solución de nivel empresarial (en contraposición a la auto-hosting).

Elegir Amazon API Gateway

Afortunadamente, Amazon API Gateway tiene un nivel gratuito. Si nuestras 1,000,000 de llamadas mensuales se realizan a través de una API REST o HTTP, sus primeros 12 meses serán gratuitos, siempre que sus llamadas no excedan ese umbral. Esto es genial, pero si escalas más, tendrás que pagar tarifas escalonadas. Si su API (conociendo nuestro uso mensual) es una API de WebSockets, su límite superior es de 750.000 llamadas mensuales, lo que lo empuja a niveles pagados. Estos son esos precios :

  • API REST: $ 3.50 mensuales por millón adicional (hasta 333 millones de llamadas)
  • API HTTP: $ 1.00 a $ 1.17 mensuales por millón adicional (hasta 300 millones de llamadas, regional)
  • API de WebSockets: $ 1.00 a $ 1.24 mensuales (hasta mil millones de solicitudes iniciales, regionales). Más $ 0.31 por minuto de conexión

Tenga en cuenta que las llamadas HTTP se miden en incrementos de 512 KB, por lo que cualquier solicitud de usuario sobre esa cantidad incurrirá en una llamada adicional. Esto puede llevarlo al siguiente nivel. La optimización es clave para mantener bajos los costos. De manera similar, las solicitudes de WebSockets se miden a 32 KB, por lo que cualquier solicitud que exceda eso se procesa como dos (o más).

Elección de DigitalOcean para bases de datos

¿Qué pasa si decide integrar un servidor de base de datos externo en lugar de crear el suyo propio? DigitalOcean ofrece multitud de planes en función de la memoria que necesites. La empresa integra bases de datos MySQL, Redis y PostgreSQL totalmente administradas, sobre una plataforma de VM. Este enfoque reducirá (o eliminará) su tiempo de desarrollo interno. Los costos pueden variar ampliamente según la memoria y los nodos en espera:

  • $ 15 a $ 480 mensuales sin nodos en espera (depende de la memoria), más $ 0.022 a $ 0.714 por hora
  • $ 50 a $ 1,600 mensuales con un nodo en espera (dependiente de la memoria), más $ 0.074 a $ 2.381 por hora
  • $ 70 a $ 2240 mensuales con dos nodos en espera (dependientes de la memoria), más $ 0.104 a $ 3.333 por hora

Costos de mantenimiento

Su API finalmente está en funcionamiento, pero necesitará un mantenimiento ocasional. Los problemas surgen debido a ataques, altos volúmenes de tráfico y raras interrupciones del servidor. Estos problemas a menudo son manejados internamente por ingenieros de DevOps. Estos profesionales ganan $ 115,666 al año , en promedio, o $ 60 por hora cuando se redondean.

Siempre que realice de 8 a 24 horas de mantenimiento mensual, ese es un costo total de $ 480 a $ 1,440 en mantenimiento mensual (cuando se utilizan estrictamente los salarios de los empleados). Siguiendo esta ruta, no hay costos adicionales, como los que habría al tener en cuenta la administración de terceros. Tenga en cuenta que no está pagando a los empleados internos una prima adicional por encima de su salario; solo estamos viendo asignaciones proporcionales.

Idealmente, podemos automatizar estos procesos tanto como sea posible para evitar una intervención humana excesiva (costosa). Incluso las comprobaciones y pruebas de salud periódicas pueden reducir los costos de mantenimiento al detectar cualquier problema antes de que aumente su gravedad. Herramientas adicionales como CircleCI y Gitlab, que pueden ser necesarias, también pueden generar cargos adicionales. A medida que su aplicación se amplía, ese precio puede aumentar considerablemente.

A mayor escala, se estima que los costos totales de mantenimiento son más del 50% de los costos del ciclo de vida completo del desarrollo de software (SDLC) . El mantenimiento puede ser increíblemente caro, lo que hace que los desarrolladores tengan la responsabilidad de crear un producto API de preproducción fiable.

Costos mensuales estimados (todos los elementos de implementación y mantenimiento): $ 496 a $ 3684, más primas de tiempo de actividad de alojamiento y base de datos

Promoción y marketing

Cuando tenga 100 cuentas de desarrollador asociadas con su API, deberá apoyar a esas personas lo mejor que pueda. Ayudar a los desarrolladores a aprovechar al máximo su API los mantendrá felices e impulsará una mayor adopción. Con suerte, las ganancias resultantes compensarán sus costos de insumos. Los defensores son “ un puente entre el equipo de ingeniería y la comunidad de desarrolladores. ”Estos técnicos transmiten los comentarios que recopilan y, finalmente, conducen correcciones y desarrollan funciones en el futuro.

Supongamos que contrata a algunos defensores de los desarrolladores para difundir su producto. Son las voces de su base de usuarios, brazos de apoyo y oradores públicos. Los defensores ganan un promedio de $ 45,152 al año . Si contrata a un pequeño equipo de tres, son $ 11,288 mensuales en gastos de personal. ¿Un promotor de desarrolladores solo defenderá su API insignia? Eso es poco probable. Sin embargo, gran parte de su tiempo se dedicará inicialmente a ayudar a que este producto despegue para alcanzar la viabilidad a largo plazo.

Márketing

También deberá considerar los costos de marketing adicionales, incluido el personal, los contratistas o las agencias externas. Su API es un producto, pero único, considerando que está vendiendo tanto a desarrolladores como a propietarios de productos. Encontrar esa voz adecuada es vital. Encontrar profesionales que puedan desarrollar una estrategia sólida es más desafiante.

Puede ser más rentable contratar trabajadores autónomos para lograr estos objetivos de marketing. Los miembros del equipo de tiempo completo son más costosos de contratar. Su esfuerzo de marketing puede ser un bombardeo a corto plazo para presentar su API a los desarrolladores, a través de numerosos medios. Es posible que los enfoques de marketing a largo plazo no sean necesarios.

En aras del presupuesto, digamos que contratamos a un contratista para que trabaje a tiempo parcial (10 horas por semana) para ejecutar varias estrategias de marketing. Este individuo trabaja durante cuatro semanas, a razón de $ 40 por hora. Eso es un costo único de $ 400 a menos que se contrate a esa persona para proyectos en curso.

Costos mensuales estimados (promoción y marketing): $ 11,688

Herramientas de terceros

Si bien nuestro enfoque hasta ahora ha sido decididamente interno, hay una variedad de herramientas de terceros disponibles para la administración. Las soluciones externas a menudo se aplican para cosas como administración de API, pruebas de API, servicios de seguridad, agregación de métricas de rendimiento y más.

Varios servicios como Microsoft Azure API Management, IBM API Connect y RedHat 3scale proporcionan plantillas para el diseño, además de herramientas para aumentar la seguridad y la escalabilidad. Los desarrolladores pueden reducir los tiempos de desarrollo utilizando estas plataformas "llave en mano". Hablando de seguridad, la plataforma Apigee de Google ofrece muchas opciones de autenticación, SAML y encriptación. ¿Cuáles son los desgloses de precios?

  • API de Microsoft Azure : según nuestros niveles de llamadas, $ 4.20 por millón de llamadas a ~ $ 147.17 mensuales
  • IBM API Connect : $ 100 por cada 100,000 llamadas a la API, o $ 1,000 + mensuales
  • RedHat 3scale Pro: $ 750 mensuales

La elección de una solución de terceros ofrece muchos atajos, pero no son gratuitos. Dependiendo de cómo crezcan sus llamadas mensuales (asumiendo que escalará con el tiempo), estas soluciones pueden ser bastante costosas, tanto a corto como a largo plazo. Por ejemplo, optar por una puerta de enlace autohospedada de Azure le costará aproximadamente $ 1,000.10 mensuales .

Evaluación de nuestros totales

No se puede argumentar que el desarrollo de API puede ser costoso. Es posible que las empresas más grandes estén más dispuestas, o puedan, a desembolsar más dólares al poner un proyecto en el centro de atención. Las nuevas empresas más pequeñas encontrarán formas de ahorrar dinero si pueden encontrar una manera de presupuestar un producto API. Como resumen, aquí están nuestros totales:

  • Costos iniciales y únicos : $ 10,894 (desarrollo más marketing durante un mes)
  • Costos mensuales continuos: $ 11,784 a $ 14,972, más costos adicionales de tiempo de actividad . Sujeto a aumento si se utilizan herramientas de terceros

El desafío principal de este ejercicio es elegir números adecuados e incluir todas las variables basadas en costos a lo largo del ciclo de vida de la API. Las empresas tienen sus propios presupuestos y requisitos de funcionalidad. Las API más simples serán más baratas, mientras que ejecutar API más sólidas será costoso, tanto en términos de desarrollo como de mantenimiento. La complejidad del software conduce a más roturas y mantenimiento con el tiempo, lo que aumenta los gastos. Hay una gran cantidad de factores en juego cuando se ejecuta un producto API. Sin embargo, su producto API puede pagarse por sí mismo muchas, muchas veces si tiene éxito en el mercado.

Si desea estimar sus propios costos de API, DreamFactory ofrece una herramienta simple y útil para ayudarlo a tabular los gastos en curso.

Publicar un comentario

0 Comentarios