“Hope is not a strategy.”
“The definition of insanity is doing the same thing over and over again and expecting different results.” -- A. Einstein
| Accesible | Adaptable | Auditable |
| Versionable | Recuperable | Certificable |
| Integro | Documentado | Durable |
| Eficiente | Efectivo | Resiliente |
| Interoperable | Mantenible | Modificable |
| Seguro | De calidad | Entendible |
| Responsive | Robusto | Escalable |
| Compatible | Testeable | Monitoreable |
| Disponible | Administrable | Efectivo |
| Software Architects | Networking Engineers | Developers |
| Build Engineer | System Retrabitrty Engineers | Automation Engineers |
| Security Official | Functional Testers | Non Functional Testers |
| Designers | Cloud Engineers | Gerentes de Proyecto |
STEAMROOT="$(cd "${0%/*}" && echo $PWD)"
rm -rf "$STEAMROOT/"*
¿Alguien lo ha logrado?
¿Resuelven estos problemas de la misma forma?
¿DevSecOps?
No existe un acuerdo global de su definición.
Desarrolladores y Operaciones trabajando conjuntamente.
Desarrolladores, QA, Seguridad y Operaciones trabajando conjuntamente. (DevQASecOps ...)
- DevOps es una Cultura de Confianza y Colaboración
- en la cual las personas usan las Herramientas adecuadas
- para automatizar
- y así poder garantizar una Entrega Continua.
| DevOps | SRE |
|---|---|
| Herramientas y Automatización | Automatización y Minimización de trabajo manual |
| Medir Todo | Ve Operaciones como problema de software y define formas para medir disponibilidad, tiempo de arranque, daños, latencias, etc. |
| DevOps | SRE |
|---|---|
| Minimiza Silos Organizacionales | Comparte Empoderamiento |
| Accepta Fallos | Balance de Accidentes y Fallos con Nuevas Versiones |
| Cambios Graduales | Reducir costo de Fallos |
| DevOps | SRE |
|---|---|
| Herramientas y Automatización | Automatización y Minimización de trabajo manual |
| Medir Todo | Ve Operaciones como problema de software y define formas para medir disponibilidad, tiempo de arranque, daños, latencias, etc. |
Production Engineer
Equipo que cuenta con la experiencia y el conocimiento necesario para analizar y retroalimentar proyectos y productos de Software mejorando su:
- tiempo de entrega
- calidad
- operabilidad / administración
- visualización / transparencia
Desde su rol dentro del proyecto de software responda:
Infraestructura como código
Configuración como código
Aplicaciones
Datos como código
| IaC | CaC | A | DaC | |
| Versionar | ||||
| Probar | ||||
| Asegurar |
| DEV | Developers |
| BUILD | Build Engineer |
| QA | QA Team |
| SIT | Integration Testers |
| UAT | User Test |
| PROD | Operations |
Manifiesto Ágil
12 principios
Los sistemas grandes están compuestos de sistemas más pequeños y dependen de las propiedades reactivas de estos.
| I. Codebase | One codebase in revision control, many deploys |
| II. Dependencies | Explicitly declare and isolate dependencies |
| III. Config | Store config in the environment |
| IV. Backing services | Treat backing services as attached resources |
| V. Build, release, run | Strictly separate build and run stages |
| VI. Processes | Execute the app as one or more stateless processes |
| VII. Port binding | Export services via port binding |
| VIII. Concurrency | Scale out via the process model |
| IX. Disposability | Maximize robustness: fast startup and graceful shutdown |
| X. Dev/prod parity | Keep "environments" as similar as possible |
| XI. Logs | Treat logs as event streams |
| XII. Admin processes | Run admin/management tasks as one-off processes |
Servidores Fénix vs Copo de nieve