Archivo de la categoría: Proyectos Web

Proyectos Web

AWS FullStack Podcast

Amazon Web Services en FullStackPodcast

AWS FullStack Podcast

Introducción

Desde hace un par de meses he vuelto a escuchar Podcasts, entre ellos algunos de temática de Desarrollo Web y Digital en general.

Hace pocas horas Antonio Pérez @apcano1978 ha publicado un episodio acerca de Amazon Web Services (AWS). Anteriores episodios han sido acerca de Back-end, Front-end y APIs. Precisamente adentrar en temas relacionados a Cloud era una inquietud que surgía, y me alegró saber que Antonio desarrollaría el tema.

Antes de oírlo tome unos apuntes de temas acerca de los cuales me gustaría aprender un poco más: ELB, EC2, S3, containers, RDS, las alternativas como Google Cloud y Kubernetes.

Preámbulo / Contexto

Recuerdo que en el 2012 en una empresa de noticias el área de TI con el que trabajaba tuvo entre otras tareas la de migrar a AWS.

En 2014 al evaluar el rendimiento de un portal de compra de tickets de bus conocí acerca de un trabajo de escalabilidad con AWS que había realizado un amigo y colega.

En 2015 un cliente me comentó que trabajar con AWS implicaría una curva de aprendizaje para dominar diversas tecnología, y que podría comprometer el aprendizaje de nomenclaturas particulares y atarse a una tecnología (a una infraestructura).

Hace unos meses vi una solución e-Commerce que considero que requiere un trabajo de despliegue en AWS. Encontré una guía oficial de AWS para desplegar Magento que se caracterizaba por la modularidad de la infraestructura. Un par de amigos están interesados en certificarse como Amazon Architects. Entonces son varios los factores que elevan mi interés y emoción por atender esta oferta.

Episodio de FullStack Podcast

Enlace al episodio

Comparto mis anotaciones contigo

Importancia

Antonio empieza contándonos que:

  • El 40% de sitios en internet se ejecutan sobre AWS
  • Importantes empresas lo utilizan: Netflix, Airbnb, Adobe, Nike…
  • El 60% de infraestructura gaming corre sobre Amazon.

Pros y Contras

  • Pros: Ahorro, Seguridad
  • Contras: Curva de aprendizaje, Costo de tiempo para gestionar los servicios

Servicio Lightsail

Es un servicio similar a un VPS. Se incluye un manejador del servidor.

Servicios Principales

EC2

  • Servicio de Computing. Machines. Se configuran por Cores (tipo y cantidad) y RAM.
  • Las opciones de RAM van desde 512 MB hasta 32 GB.
  • Las opciones de Cores va desde 1 o 2 cores hasta 96 cores.

S3

  • Almacenamiento: 25, 50, 100 GB. Es configurable y Amazon cobra por lo realmente utilizado.

IAM

  • Users & Permissions. Concepto de Policies.

CloudWatch

  • Alertas de acuerdo a condiciones en niveles de consumo en servicios.

Route53

  • Manejador de DNS.
  • CNAME, TXT, SPF (evitar spam)

Servicios para Desarrolladores

  • CodeCommit (code versioning)
  • CodeStar (task manajer, Jira)
  • Cloud9

Servicios interesantes

CloudFront

  • Ayuda a ahorrar recursos de servidor. Caching.

Lambda

  • Un caso: Pasar un CRON a una forma más eficiente. Como función a partir de un trigger.
  • Otro caso: Al subir imagen en aplicación, almacenarla en 3 formatos/tamaños.

Glacier

  • Almacenamiento barato para backups. Cuesta utilizar el backup (recuperarlo, desplegarlo o descargarlo)

RDS

  • Servidor de BD Relacionales. Con la finalidad de dedicar recursos exclusivos a I/O o R/W a la BD.

SES

  • (Mailer). Me hace recordar a Sendgrid

BeanStalk

  • Aprovisionamiento automático de recursos. A partir de condiciones monitoreadas, disponer el arranque de servicios.

Outsourcing de Proyectos Web

Integración de Estrategia Web en la Empresa

Antes que nada entendamos el título de este artículo. Outsourcing, la tercerización, el servicio externo, nos referimos a tareas que serán realizadas por equipos de profesionales con alto nivel de expecialización. Proyectos Web, no el desarrollo o programación web sino el servicio total de diseño, desarrollo, infraestructura, usabilidad, estrategia de contenidos, acciones en redes sociales, utilización de herramientas web disponibles, etc. Estos conceptos contextualizados en algún o algunos rubros en internet.

Luego de una ligera investigación en internet encontré un texto bastante bueno que expone este tema: Managing Web Development: Insourcing vs. Outsourcing de Tim Bourgeois. Traduzco al español el texto, con cierta fidelidad al original aunque con un acercamiento al mercado local (Perú, Latinoamérica) y apreciaciones personales.


La contratación externa no es tan simple como volcar el trabajo a terceros y esperar lo mejor. La preparación es la clave para convertirlo en un paso positivo para nuestro negocio.

Los pros y contras del outsourcing han sido debatidos por años y los administradores encaran con frecuencia la decisión de desarrollar o adquirir. Algunas veces estas decisiones son simples, como en el caso de la limpieza o de la nómina, pero en la mayoría de situaciones la determinación de la tercerización está basada en las circunstancias únicas de la organización y su cultura. Encontramos esto en el caso del desarrollo web. Los administradores de todos los rubros están lidiando en cómo ejercen más efectivamente la consecución de sus estrategias en Internet. Este artículo provee un marco para evaluar la opción de asociarse a una empresa de desarrollo web o de realizar el desarrollo por cuenta propia de la empresa.

Primero, Establecer las Metas

Como en cualquier proyecto, establecer los objetivos antes de empezar. Durante el transcurso del proyecto los objetivos pueden ir ajustándose o cambiar bastante, de todas formas es importante contar con una base. Preguntémonos a nosotros mismos qué es lo que buscamos con nuestra estrategia en Internet. Un foro online presenta muchas oportunidades de negocio que son importantes para nuestra organización? Deseamos incrementar nuestras utilidades? Mejorar el marketing? Elevar la competitividad? Optimizar las operaciones? Todo lo anterior?

Internet significa diferentes cosas dependiendo de nuestro negocio específico y el panorama competitivo. Por ejemplo, los bancos requieren presencia en internet (leímos reputación online) para ser competitivos mientras que las compañías de construcción, en general, no. Definamos lo que Internet significa para nuestra organización y establezcamos objetivos reales. Si no tenemos una idea de un buen punto de partida encarguemos esto a una persona de la empresa con habilidades generales o contratemos una firma de Estrategia Web para realizar el análisis por nosotros. Sea cual sea el camino, asegurémonos de involucrar a las áreas de tecnología, marketing y ventas.

Criterios de Evaluación

Los principales criterios son: costo, tiempo y expertise. Si otros pueden realizarlo con mayor rapidez, mejor calidad y menor costo se debería tercerizar. Las firmas consultoras generalmente ofrecen sus servicios alrededor de estos tres componentes: nosotros ya lo hemos realizado antes (expertise), nosotros lo podemos realizar con una mejor efectividad de costes, nosotros lo podemos desarrollar de manera más eficiente (rapidez).

Pero, como con cualquier medio, Internet tiene su ideosincrasia. Lo siguiente deberían ser las consideraciones primarias durante la evaluación de los recursos para el desarrollo Web.

– Costo: Un efectivo equipo interno de Desarrollo Web le cuesta a una organización al menos 600,000 soles ($250,000 con el nivel y exigencias de los mercados más desarrollados) al año. Este incluye las personas y algunos equipos para las labores de diseño, desarrollo y marketing. Siendo bastante ahorrativos podríamos incluir esto y los costos administrativos y otros gastos menores. Para pequeños y medianos negocios, mantener ese equipo es prohibitivo a nivel de costos, por lo cual ellos solicitan a sus diseñadores in-house, desarrolladores y marketeros que desarrollen una doble o triple función. Si seguimos esta estrategia preparémonos para afrontar los costos de una empinada curva de aprendizaje y entender que el costo de realizar algo una única vez es alto. Recordemos también que no es realista esperar que los resultados sean los mejores a partir de un equipo interno que está realizando algo por primera vez. Muchas compañías pequeñas tercerizan grandes proyectos de internet y tienen equipos internos trabajando conjuntamente con sus consultores web para optimizar el retorno de la inversión en Internet.

– Capacidad y Experiencia (expertise): Las firmas de desarrollo web que construyen y mantienen sitios web durante el tiempo ofrecen un profundo y preciso expertise en el medio de Internet. Ellos conocen los trucos del oficio, comparten las mejores prácticas a través de clientes en diferentes segmentos de la indutria y rápidamente reconocen los riesgos potenciales. Como resultado, utilizar una firma externa minimiza el riesgo y trae mejores resultados. En las compañías más grandes, los sofisticados equipos de Internet brindan el soporte para varias unidades de negocio y adquieren el expertise al atender nuevos requerimientos de los clientes internos. Las pequeñas y medianas empresas no cuentan típicamente con ese lujo.

– Velocidad: Algunas veces la tercerización es atractiva simplemente porque los equipos internos están exigidos al máximo. O porque el costo de oportunidad asociado con retirarlos de un proyecto en curso es bien grande. Una firma externa puede garantizar que llegaremos a alcanzar deadlines agresivos y sin quedar atrapados en espinosos asuntos internos, una promesa que es extremadamente difícil de hacer para los equipos internos.

– Propiedad/Seguridad: Un beneficio de mantener el desarrollo web en casa es el total control sobre todos los sistemas y aplicaciones. Las cuestiones de seguridad son de suma importancia en estos días y muchas organizaciones no se sienten cómodos con los datos sensibles a disposición de empresas externas.

– Nuevas Formas de Pensar y Transferencias del Conocimiento: Una buena empresa de desarrollo web -una con habilidades de consultoría estratégica- nos ayudará a mirar nuestros negocios de nuevas maneras, y entender como pueden encajar en la “nueva economía”. Esta es también un buen camino para adquirir la versión Libro Coquito para realizar negocios en Internet. Un socio en desarrollo web puede educarnos en cómo deberíamos integrar Internet en nuestro negocio y conseguir poner en marcha un sitio efectivo en corto plazo. Algunas empresas consideran sus relaciones con empresas de Internet como una inversión en formación.

Socio Experto en Internet

Realizar el análisis

Miremos antes de saltar. Tomémonos algún tiempo para pensar en cómo queremos movilizar nuestra estrategia de Internet, tanto en el corto como el largo plazo. Hagamos el análisis. Observemos los factores cuantitativos -el costo, la velocidad, la gestión riegos- y desarrollemos el análisis de costo/beneficio. Dirijamos luego la mirada hacia los factores cualitativos -propiedad, transferencia de habilidades, calidad de entregables- determinemos su nivel de importancia en nuestra organización. Hablemos con nuestros compañeros, con el personal interno, y las personas “que han estado allí, que han hecho eso”. No saltemos al proyecto sin tomar en cuenta el trabajo de campo necesario.

Considere las opciones de Internet

Las inversiones en Internet disminuyeron luego de la implosión de las punto com, pero pocos dudan del impacto que tiene Internet en los negocios, ahora y en el futuro. El respetable Jack Welch, ex presidente de General Electric comentó: “El punto a recordar es que el negocio electrónico no es un nuevo negocio. Es una nueva tecnología que cambiará los negocios para siempre”. Debido al considerable efecto de la Internet, no es de extrañar que el medio requiere de un set de habilidades para llegar a poder usarla efectivamente.

Los proyectos en internet tienen distintas necesidades de recursos. “Las ventas modernas y los programas de marketing requieren un conjunto de habilidades y recursos técnicos muy diferentes, y la mayoría de ellos tienen que venir de socios externos. Encontrar y proveer la amplia variedad de habilidades necesitadas para ejecutar los sofisticados programas de E-business resultará más complicado que contratar una agencia de publicidad. Los que sepan lo que están adquiriendo, y hacen bien en adquirirlo, tendran una ventaja sobre los que tomen malas decisiones o contraten agencias incapaces“, comenta Stephen Diorio, autor de Beyond e: 12 Ways Techology Is Transforming Sales & Marketing Strategy.

Mirar a largo plazo

El rol de Internet en nuestro negocio va a aumentar a medida que un creciente porcentaje de la población se mueva On Line, se sienta más cómodo usando la web, y empieza a investigar y comprar productos y servicios. Como resultado, su organización tendrá que realizar inversiones contínuas para mantener su entendimiento de la web. Mientras muchas pequeñas y medianas compañías vagaron con sus estrategias web en los últimos años de los 90s, ahora es una urgencia definitiva para las compañías el conducir el negocio profesionalmente en Internet. En nuestros días los usuarios de Internet son sofisticados y las estrategias chicha o chacra tendrán un efecto muy negativo sobre nuestro negocio. Asociémonos con expertos para hacer las cosas bien -como probablemente lo haríamos en las áreas legal, contable y publicitaria- o hagamos las inversiones internas necesarias para armar un equipo capaz.


Cuando Tim Bourgeois redactó el texto era CEO de Pixel Bridge Inc, una empresa consultora con base en Boston especializada en ayudar a pequeñas y medianas empresas a utilizar la Internet para mejorar su marketing, ventas y operaciones.

Pixel Bridge cuenta actualmente con 20 empleados, fue fundada en 1999 con 4 empleados.

Pixel Bridge es partner de Acquia, la empresa más importante ligada a Drupal.

En Enero de 2010 fue adquirida por AMP Agency

Notas de pie (para nuestra consideración):

1.- Ingeniero de Sistemas o el Informático no recibe actualmente una formación en experiencias en internet, los que completan este perfil acuden a experiencias laborales como son las que se reciben dentro de o interactuando con medios, agencias de medios, agencias de marketing o agencias de comunicaciones.

2.- La Ingeniería Electrónica y Eléctrica son disciplinas distintas a las Ingenierías de Sistemas e Informática. Esto no es razón de que estos ingenieros desconozcan la elaboración de proyectos web o su conducción, ya que como todo buen profesional puede formarse y aprender, desempeñarse muy bien. Pero ante todo hay que tener en claro este común denominador.

La Ingeniería de Telecomunicaciones actualmente provee una base sobre la que trabaja la Ingeniería de Sistemas y el trabajo no es de interacción directa con ellos en casos generales, distintos a las empresas operadoras de telecomunicaciónes.

En general los trabajos de ingeniería crean y adaptan tecnologías que la labor ténica se encarga de ejecutar para la industria. Aspectos que las empresas pueden aprovechar de los ingenieros es su formación en la dirección de proyectos, su experiencia de interacción con otros profesionales, su claridad de conceptos por la profundidad estudiada en las ciencias que otorgan respuestas a situaciones de naturaleza matématica, estadística, etc. Sería buena idea que revisemos una currícula de calidad de la carrera de Ingeniería Informática.

Hasta pronto! Éxitos en sus proyectos web!
» Leer más