40 Questions
What is the main purpose of Git in the software industry?
To track development progress and manage source code versions
Which tool is known for automated code review and checking code for bugs, vulnerabilities, and duplications?
SonarQube
What is the primary role of Jira in software development?
Bug tracking and project management
Which tool is best suited for multi-language build automation and supports Java, C++, and Python?
Gradle
What is the main purpose of Docker in cloud computing?
Enabling dispersed development and automated deployment
Which platform is specifically designed for automated container-orchestration, managing containers at scale, and automating the distribution and scheduling of containers across a cluster of computers?
Kubernetes
What is the main focus of Jenkins as a CI/CD server?
Automating delivery pipeline stages
Which of the following features make Gradle faster than Maven in certain functionalities?
Incremental builds that check for changes in inputs and outputs
Which CI/CD server is not free like Jenkins?
Bamboo
Which configuration management tool is known for its declarative language and use of YAML?
Ansible
Which cloud service provider offers Azure DevOps as a part of its DevOps solutions?
Microsoft Azure
Which tool provides a full-stack performance and error monitoring solution for web and mobile apps with features like application performance monitoring (APM)?
Raygun
Which architecture is characterized by a single, self-contained, and independent entity integrating all business concerns?
Monolith architecture
Which DevOps tool provides numerous pre-built features and integrates well with Atlassian products like Jira and Bitbucket?
Bamboo
Which configuration management tool supports infrastructure management as code and manages dependencies intelligently?
Puppet Enterprise
Which DevOps tool provides an agentless architecture and uses YAML for configuration?
Ansible
What is the main benefit of containers compared to virtual machines?
Containers are compact, fast, and portable
How do containers achieve portability?
By sharing the machine’s OS kernel
What characteristic of containers allows them to boot up quickly?
Sharing of the machine’s OS kernel
Why are containers considered resource friendly?
Because they share the machine’s OS kernel
What is a key characteristic of containers that makes them suitable for cloud-native apps that scale horizontally?
Sharing the machine’s OS kernel
What is the role of namespaces and cgroups in containers?
To control the amount of CPU, memory, and disc for processes
What makes containers suitable to run anywhere, whether on a desktop, in traditional IT, or in the cloud?
Sharing the machine’s OS kernel
Why do containers eliminate the need for a separate OS instance for each program?
Because they share the machine’s OS kernel
What is the primary benefit of containers in modern development and application patterns?
Enabling microservice architectures
Which type of cloud computing allows anyone on the internet to purchase services?
Public cloud
What is the role of IaaS providers in cloud computing?
Offering virtual server instances and storage
What is an example of a platform as a service (PaaS) option?
Microsoft 365
What does a hybrid cloud mix in its architecture?
Public cloud services and on-premises private cloud services
What does a multicloud approach involve?
Migrating programs between cloud providers or running simultaneously on two or more cloud providers
What is the primary purpose of a community cloud?
Serving a specific community with similar issues
What is the first step in the DevOps lifecycle?
Creating, storing, analyzing, and evaluating source code
What type of application necessitates upgrading the entire stack by gaining access to the code base and constructing and delivering a new service-side interface?
Monolith
Which architecture approach depends on a collection of independently deployable services with their database and business logic, each with a specialized purpose?
Microservices architecture
Which architecture approach utilizes cloud services to enable dynamic and Agile application development techniques, taking a modular approach to building, running, and updating software via a suite of cloud-based microservices?
Cloud-native architecture
Which architecture approach is a software design methodology that enables developers to create and run services without managing the underlying infrastructure?
Serverless architecture
What is the advantage of monoliths early on in a project's existence according to the text?
Efficient code management
How do microservices contribute to complexity according to the text?
They make any complexity visible and more controllable
What typically goes hand in hand with adopting microservices according to the text?
DevOps
What promotes cooperation, efficiency, and productivity in application development according to the text?
Microservices architecture
Study Notes
- Containers are units of software that include application code, libraries, and dependencies, packaged to run consistently across different environments.
- Containers use operating system (OS) characteristics like namespaces and cgroups to isolate programs and control resources.
- Containers share the OS kernel with the host machine and do not require a separate OS instance, making them compact and resource-friendly.
- Containers can boot up quickly, support modern development patterns, and enable microservice architectures for more granular scaling.
- Cloud computing refers to services provided via the internet, including infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS).
- Cloud computing can be public or private and offers quick, scalable access to resources through a remote data center or cloud infrastructure.
- IaaS providers, like Amazon Web Services, offer virtual server instances, storage, and APIs for users to transfer workloads to a VM.
- PaaS providers offer development tools on their infrastructures, allowing users to access technologies and build and host applications over the internet.
- SaaS applications are software services accessed through the internet, providing access to application software and databases.
- Cloud computing deployment models include private cloud, public cloud, and hybrid cloud, with varying levels of access and control.
- Enterprises are increasingly adopting a multicloud approach, which involves utilizing various IaaS providers, to reduce risk and take advantage of competitive pricing.
- DevOps tooling, such as Git, Jira, SonarQube, and Gradle, are essential for managing source code, tracking issues, automating builds, and ensuring code quality in the cloud environment.
- Git is a distributed source code management and version control system used for tracking development progress and managing branches.
- Jira is an issue and project tracking platform for managing project progress, creating branches, pull requests, and automating tasks.
- SonarQube is a free code review tool for static code analysis and bug detection in multiple programming languages.
- Gradle is a multi-language build automation tool for managing dependencies and building applications with support for Java, C++, and Python, among others.
Make Your Own Quizzes and Flashcards
Convert your notes into interactive study material.
Get started for free