Aprovechando la tecnología para un desarrollo ágil

Post on 28-Jan-2018

300 views 0 download

Transcript of Aprovechando la tecnología para un desarrollo ágil

APROVECHANDO LA TECNOLOGÍA PARA UN

DESARROLLO ÁGILOsvaldo Mena Requena

Lead Engineer en Cornershop

CORNERSHOP• Grocery delivery.

• Presentes en Ciudad de México y Santiago de Chile.

• Inicio del proyecto: Enero del 2015.

• CTO + 2 iOS Developers + 2 Android Developers+ 4 Backend Engineers, 1 QA Engineer.

Customer apps Shopper apps

Operations Reporting and management

ORGANIZACIÓN

PIVOTAL TRACKERAdministración de Proyectos

SLACK

Mensajería Instantánea

Salas de Chat Privados

Integraciones

$$$

EMAILTecnología vieja, pero tecnología al fin y al cabo.

REUNIONESUn mal necesario.

DESARROLLO

GIT FLOW“branching model”

feature, develop and master branches

La historia es fácil de entender.

VAGRANT

• Entornos de desarrollo reproducibles.

• Muy similar al entorno de producción.

• Permite desarrollar y correr tests de forma local.

DOCKER

• Tecnología de virtualización.

• Mismos contenedores corriendo en desarrollo y en producción.

• Entornos reproducibles.

• Ecosistema emergente.

CIRCLE CIContinuous Integration and Deployment

Abstracción de memoria, CPU, almacenamiento, networking y cualquier otro tipo de recurso.

Permite “correr” procesos en un clúster distribuido.

Soporte para Docker Containers.

MARATHONMesos Scheduler

MONITORINGPorque después del deploy, vienen los fallos.

Application Performance& Server Monitoring

INCIDENT MANAGEMENT SYSTEMManda un mail a quien esté on-call.5 minutos después, manda un SMS.

5 minutos después, llámalo.Luego intenta con la siguiente persona disponible.

SENTRYReporte de “crashes” en

tiempo real.

Soporte para una gran cantidad de lenguajes y

plataformas.

Diagnóstico de crashes con información relevante.

LOGGLYAdministración, búsqueda y

resúmenes de logs.

Alternativa DIY: Logstash + Kibana + Elasticsearch.

CORNERSHOP

Alertas y notificaciones oportunas.

Avanzar rápido y en lo que importa.

Jugar con las economías de escala.

La importancia del equipo.

APROVECHANDO LA TECNOLOGÍA PARA UN

DESARROLLO ÁGILOsvaldo Mena Requena

Lead Engineer en Cornershop