DevOps
DevOps je metodologija i kultura u software razvoju koja povezuje razvoj softvera (Development) i IT operacije (Operations) sa ciljem bržeg, češćeg, i pouzdanijeg development-a, testiranja, i release-anja aplikacija. Umesto da Development tim i Operations tim rade odvojeno sa različitim ciljevima i komunikacijom, oni rade zajedno od početka.
Tradicionalni pristup (pre DevOps): Development tim razvija aplikaciju za 3 meseca, zatim je prosleđuje Operations timu koji je deploy-uje u produkciji. Između razvoja i produkcije je često 3 meseca čekanja, i kada aplikacija dođe u produkciju, često postoji mnogo problema jer Operations tim nije znao šta je Developer tim zamisljaV.
DevOps pristup: Development i Operations timovi rade zajedno od početka. Development tim razume kako će aplikacija biti hostovana i maintainana. Operations tim razume šta aplikacija treblja i šta se treblja u produkciji.
Ključne prakse DevOps: (1) Continuous Integration (CI) – kod se automatski testira svaki put kada se commit-uje; (2) Continuous Deployment (CD) – kod se automatski deploy-uje u produkciju kada prođe testove; (3) Infrastructure as Code – IT infrastruktura se definiše kao kod, ne ručno; (4) Automation – automatizovanje svih ponavljajućih zadataka; (5) Monitoring – stalno praćenje zdravlja aplikacije u produkciji; (6) Collaboration – čestala komunikacija između development i operations timova.
Za startape: DevOps je kritično jer omogućava brzi ažuriranje aplikacije, brzi release novi feature-a, i brži odgovori na probleme. U competitive svetu, brza iteracija je prednost.
