JAX DevOps Blog

JAX DEVOPS BLOG

JAX DevOps, 9-12 April 2018
The Conference for Continuous Delivery, Microservices, Docker & Clouds

5 Feb 2018

devops pipeline delivery

Organizations going to the cloud. Source: Shutterstock

DevOps is many things to many people but the problem is that one cannot turbo-charge their DevOps efforts without knowing exactly where this movement is going. We talked with Daniel Bryant about the movements springing out of DevOps, what makes a good DevOps practitioner and more.

JAXenter: What are your DevOps predictions for 2018? What should we pay attention to?

Daniel Bryant: I believe that DevOps is to some degree becoming “normalized” now, in that what we conceptualize as DevOps is becoming best practice within all kinds of organizations. For example, concepts such as increasing shared responsibility, breaking down silos, encouraging empathy, engineering for feedback, Infrastructure as Code (IaC).

There are a few movements springing out of DevOps, and some are more specialized (or arguably subsets) — like DevSecOps or BizDevOps — and some are applying similar principles to separate areas of the process of delivering value to customers through software — like Developer Experience (DevEx).

Where DevOps may have focused more on introducing collaboration and agile into operations, DevEx is all about “minimizing the friction” for a developer between having a good idea, coding and deploying this, and ultimately getting feedback from customers using the feature in production.

JAXenter: What makes a good DevOps practitioner?

Daniel Bryant: This is a difficult question, as DevOps is many things to many people, but I would suggest the following traits and skills are useful:

  • Empathy
  • Communication
  • Leadership
  • Systems thinking
  • Metrics/feedback-driven
  • Desire to automate

JAXenter: Do you think more organizations will move to cloud in 2018? Why/why not?

Daniel Bryant: I believe more organizations will continue to move to the cloud, particularly SMEs. I’m assuming that the default mode of operation for a startup would be cloud-based, and larger enterprises are moving to the cloud as part of bigger “digital transformations”. The economics of cloud are powerful, as is the flexibility, the potential decrease in time-to-market for software products, and shared security model.

DevOps is many things to many people

JAXenter: Will containers-as-a-service become a thing in 2018? What platform should we keep an eye on?

Daniel Bryant: I like to call this Container-Infrastructure-as-a-Service (CIaaS) — which I believe I borrowed from Adrian Cockcroft — and yes, this is a thing already! With the announcement of Amazon EKS at the AWS re:invent conference late last year, all of the major cloud vendors now offer a hosted Kubernetes offering.

Amazon has taken it one stage further with the announcement of AWS Fargate, where engineers can run containers without the need to manage a cluster, and this is an area of interest for me!

JAXenter:  Is Java ideal for microservices developments? Should companies continue to invest resources in this direction?

Daniel Bryant: My background is heavily influenced by Java and the JVM, and so I’m probably a little biased here, but I believe that Java is a good choice of language for microservice — particularly if this is the only language your development team knows!

Both the Java language and JVM have been battle-tested in production for 20+ years, and in general I also find Java code easy to read and maintain (in comparison with say, Scala or Ruby). Java microservices frameworks like Spring Boot, DropWizard and Spark Java also add a lot of value to the development experience.

Some of the microservice use cases where Java doesn’t shine is where a service is very simplistic — here a language like Ruby with the Sinatra framework, or Node.js can be very useful — or when you have infrastructure/platform resource constraints — here a (statically) compiled language like Golang can be useful.

JAXenter: Containers (and orchestration tools) are all the rage right now. Will general interest in containers grow this year? If yes, how are we going to handle the older applications?

Daniel Bryant: I think container technology is at the peak (or maybe just past the peak) of “inflated expectations” on the Gartner Hype Curve, and so I would container adoption will continue steadily.

Docker is doing a lot of work with their “Modernize Traditional Apps Program” in this space, and then a bunch of use from the community are writing blogs and articles on how to package and continuously deliver all types of application too — such as my “Containerizing Continuous Delivery in Java and Docker”, Arun Gupta’s Java and Kubernetes tutorials, Viktor Farcic’s DevOps 2.0 series, and Christian Posta’s great blog posts.


JAXenter: What challenges should Kubernetes and Docker address in 2018?

Daniel Bryant: The key focus of both platforms should be (and is) focusing on the developer experience or developer UX — i.e. minimizing the friction between a great idea, coding, testing, deploying and observing in production.

Many of us (myself included) have gotten very excited about containers, but now that the core container technology is maturing we have to get back to basics — as a developer this is all about focusing on delivering value to our users by coding and deploying new features.

JAXenter: How will serverless change in 2018? Will it have an impact on DevOps? How?

Daniel Bryant: Serverless is still a relatively young technology, and so practices are being developed (and co-evolving) with it. DevOps really grew alongside the programmable infrastructure and cloud IaaS space, and so we’ll probably see something similar grow out of serverless. I take a lot of my cues for this type of thinking from Simon Wardley.

JAXenter: Will serverless be seen as a competitor to container-based cloud infrastructure or will they somehow go hand in hand?

Daniel Bryant: I believe you will see serverless technologies running on containers and CIaaS — like Kubeless, OpenFaaS, Oracle’s Fn, and Fission — and so they will be (largely) complementary.

The development styles can be very different though — serverless FaaS is all about events driven architecture and creating stateless services, and containers can satisfy more traditional paradigms

JAXenter: Could you offer us some tips & tricks that you discovered this year and decided to stick to? (with regard to the technologies your are interested in or working with)

Daniel Bryant: As a shameless plug, all of the tools and techniques that I am interested in will be shared in my upcoming book with O’Reilly “Continuous Delivery in Java”. This should be published later in the year!

Thank you very much!

Check out JAX DevOps sessions by Daniel Bryant

Behind the Tracks

BUSINESS & COMPANY CULTURE
the process of becoming fully agile
CLOUD PLATFORMS
Cloud-based & native apps
DOCKER & KUBERNETES
Docker, Kubernetes, Mesos & Co
CONTINUOUS DELIVERY
Build, test and deploy agile
MICROSERVICES
Maximize development productivity
Business & Company Culture

Business & Company Culture

Cloud Platforms

Cloud Platforms

Docker & Kubernetes

Docker & Kubernetes

Continuous Delivery

Continuous Delivery

Microservices

Microservices

Monitoring & Diagnostics

Monitoring & Diagnostics