Navigating the complex cloud native world

Malek Kazdaghli
3 min readApr 27, 2021
CNCF Cloud Native Landscape https://landscape.cncf.io/

The Cloud Native Computing Foundation (CNCF) has an amazing tool called the Cloud Native Landscape. It is an interactive map that aggregates more than 900 cloud solutions and platforms represented visually as cards in an (see photo).

The map is an reference for anyone looking for benchmarks or alternative tools and technologies. However, it can be intimidating for beginners and even seasoned cloud developers and engineers. How to catch up with the ever increasing complexity of the cloud native world ? Which tools should we learn ? How to keep up with the new technologies and trends ? How not to get trapped in a learning running wheel ?

The Cynefin model — Photo from Wikpedia

For years, we have been approaching technology learning with an analytical mindset based on the premise it is possible to craft a detailed learning plan. We just had to map the technologies trends with the learner’s objectives. For example, if you are new to the cloud native development world, you just have to follow the right course, read the right books or even get a certification that showcases your expertise.

Unfortunately, this approach does not stand the test of time, and by time I mean merely months. Learning a new skill will make you discover all the other skills you still have to master. The more you know the more you realize there is more to be known. I have recently undertaken the Udacity Cloud Native Developer Nanodegree. After four months of extensive learning, I still overwhelmed by the amount of things I still have to go through.

The Cynefin model offers an solution to this conundrum. Instead of trying to analyze predict which learning path we should follow, we might just consider our learning journey as a complex problem. The complex domain is the realm of the unknown unknows. By acknowledging that a problem is complex we accept that we cannot analyze and totally grasp it beforehand. Applied to our cloud native landscape, it means that we simply cannot know and learn every tool and technology. Instead, we should follow an iterative probe, sense, respond approach.

Probing means experimenting. Starting somewhere in the landscape. Just have a look at a current project you are working on or pick a good course. You only need a starting point. I think a good option in the cloud world is to go with a good Kubernetes course. Kubernetes platforms are at the center of the landscape and chances are you will get a good coverage of other topics.

Then, once you finished your course, go back to the landscape go though the listed tools and technologies. This is the sense step. You are trying to gather empirical information on your knowledge level. For each quadrant, you can apply the MosCoW prioritization method to build your own map. You need to identify tools and technologies that you already know, Must learn, Should learning and most importantly Will not learn. You can also use the CNCF trail map. It has a beautiful illustration of cloud native technologies organized in a map that has 10 steps starting from containerization.

CNCF trail ma — source : https://www.opscruise.com/cncf-trail-map

Once you have your MosCow list, start planning your next learning cycle using the top Must learn items. You are now responding to the feedback you have gathered by preparing a new iteration. This way, learning becomes a continuous and agile undertaking. We do not need to carry the burden of trying to know everything. We just accept that the technology world is a complex maze and that the best we can do is to navigate it and be ready to regularly deal with new emerging technologies and trends.

But what about expertise ? How could we build an in-depth technical expertise when we are always learning and exploring new technologies ? I will try to answer this question in the next post. Stay tuned..

--

--

Malek Kazdaghli

Director of Software Engineering - I help engineering managers tackle technical and human challenges.