In this series of blog post, Karthi discuss how Happiest Minds sees DevOps, why devops and how it evolved.
Is DevOps a myth, a buzz, a hype or a necessity?
Episode 1: Challenges in Software Delivery
DevOps has suddenly shot up to fame in the software development world with everyone speaking about DevOps tools, jobs and so on. Perhaps, DevOps Certification is the one thing to come by now! But, what is this DevOps anyway? Is it a necessity or just another fad? Before we deep dive into it, it is important to take a step back and analyze what are the challenges every software company has.
It doesn’t matter whether a company is on Cloud, Enterprise or Mobile… for any software company, stable software delivery on-time is the key to business success. Here are some important challenges in software delivery that you experience every day.
Agile Development Create Problems: Since software organizations have to rapidly deliver software to
keep up with the market, they adapt agile development and this increases the burden on operations. Operations teams need to be ready with pre-requirements including infrastructure, tools, software for all deployments coming in. This require the operations team to be extra agile to handle the changes coming from multiple agile development teams.
Mindset Mismatch: Software development teams try to create new features and changes that bring value to business, whereas, operations teams want to maintain reliability and stability (by resisting rapid changes) to reflect business integrity. This generates a conflict in mindset and approach, considering that both do the right thing for business.
Lack of Communication: There is a communication lag between development and operations which leads to working in silos. Therefore, sometimes operations are unable to deliver changes in production. A simple example would be, development hands off a package to operations which requires OS version a.yy, but Ops doesn’t know this (production has OS versiona.xx) and deployment fails.
Lack of Unified Process: There is no defined unified process throughout the entire lifecycle that development and operations can follow. Development defines their own processes while operations define their own. Some scenarios include how to bring up and maintain environments, maintain configurations and do the release.
Mind the Gap: In general, development takes care of Dev, SIT, QA environments and operations takes care of Staging and Production environments. To execute the same tasks like packaging, deployment method, applying configurations, development uses certain tools & methods while operations uses different tools & methods.
Firefighting When development and operations teams act within silos, they often spend too much time firefighting problems, which reduces the time available to build innovative new applications and services.
This list of challenges brings us to understand that companies need to address all these challenges; break inter departmental silos, figure out a way to bridge the gap between development and operations, define a unified set of goals, process, tools and methods that everyone can follow in order to deliver stable software on time.
But how to achieve this? Up next in Episode 2
ABOUT HAPPIEST MINDS
Happiest Minds enables Digital Transformation for enterprises and technology providers by delivering seamless customer experience, business efficiency and actionable insights through an integrated set of disruptive technologies: big data analytics, internet of things, mobility, cloud, security, unified communications, etc...