DevOps Tools Introduction #02: Modern Software Development

January 16, 2018 - by

The DevOps Tools Engineer exam starts with objective 701.1 which covers modern software development, including aspects of architecture and team organization. These are broad topics but, since LPI expects candidates to be experienced IT professionals, you will probably already have some background in this area. Therefore, we’ll focus on those aspects which are explicitly mentioned in the exam objectives.

The context of the exam is applications that follow modern approaches to software development. One of the most quoted sources related to this kind of applications is the Twelve-Factor App. This manifesto explains twelve best practices for designing software that runs in containers and clouds. These tips apply to any programming language and development ecosystem. After reading them, you should think about how to implement these best practices with your preferred language and platform. Try to reflect upon how your software handles the Twelve Factors.

A topic of special interest in the world of services are application programming interfaces; APIs for short. The exam objectives explicitly mention REST APIs and JSON data. A great introduction to APIs can be found on restful.io. Likewise, jsonapi.org illustrates how to represent data in JSON and links to documents explaining JSON in greater detail.

Two other terms mentioned in the exam objectives are ACID properties and CAP theoremes. Although there are many explanations, a number of answers to the question of the relationship of these terms are given in a quora thread. This discussion also covers properties of relational and NoSQL databases; a field that we will shortly meet again when talking about cloud services.

Learning about architectures and development techniques involves a lot of reading and almost no coding. It is a dusty topic for sure. However, the contents of this topic build the base upon which all of the other topics of the exam can be placed. In their own way, each technology covered in the exam supports the architectures and collaboration models explained in this objective. Having this big picture in mind helps you to recognize the relationships between the tools and explains design decisions made by the creators of the tools covered in the exam. Therefore, bookmark the most useful texts you found when working through the links above. Review them at the end of your studies and see how the technologies you’ve learned in the meantime fit in.

Fabian Thorns is the Director of Certification Development at Linux Professional Institute, LPI. He is M.Sc. Business Information Systems, a regular speaker at open source events and the author of numerous articles and books. Fabian has been part of the exam development team since 2010. Connect with him on LinkedIn, XING or via email (fthorns at lpi.org).

Your name

Comment *

LPI is a non profit organization.

LPI is the global certification standard and career support organization for open source professionals. With more than 600,000 exams delivered, it's the world’s first and largest vendor-neutral Linux and open source certification body. LPI has certified professionals in over 180 countries, delivers exams in 9 languages, and has hundreds of training partners.

Our purpose is to enable economic and creative opportunities for everybody by making open source knowledge and skills certification universally accessible.