NEW
Font size
WorksheetsDevOps Quiz
Total questions: 69
Worksheet time: 35mins
Why is it important to keep development, staging, and production environments as close as possible?
Using completely different tools in each environment improves testing coverage.
Allowing major differences in OS, tooling, and configurations between environments ensures flexibility but may introduce subtle bugs and deployment failures.
Minimizing differences reduces environment-specific bugs and increases confidence in deployments.
Large time gaps between environments help identify hidden production issues.
Developers should only test code on their local machines to ensure speed.
Which statement best explains what an injection attack is in web applications?
It occurs when untrusted input becomes mixed with trusted data and alters how a query or command is interpreted.
It arises when validated data interacts with browser elements and unexpectedly shifts structural page logic.
It emerges when mismanaged request information blends with system routines and affects internal processing workflows in unpredictable ways.
It appears when formatted parameters collide with components and generate unintended operational outcomes.
It happens when trusted input is processed incorrectly and produces unexpected control behavior in modules.
What is the main purpose of root-cause analysis and incident management in a DevOps team according to the text?
To separate development and operations completely, leaving incident resolution to dedicated operations teams.
To rely solely on external notifications from users or dependencies to detect system failures.
To resolve incidents quickly, document actions, and identify underlying causes to prevent future occurrences.
To implement a comprehensive system of logging, monitoring, fire drills, and alerts while also tracking every minor change, user action, and dependency interaction to fully automate incident prevention.
To focus only on fixing the immediate issue without recording steps or analyzing causes.
What is the role of infrastructure in a DevOps environment?
Infrastructure only refers to physical servers that developers must manually configure.
Infrastructure provides computing resources, networking, and services that allow applications to run and scale reliably.
Infrastructure is limited to third-party cloud services, and private servers or custom networking configurations cannot be managed or automated by developers in a DevOps setup.
Infrastructure is solely the responsibility of sysadmins and not the development team.
Infrastructure only includes load balancers and CDNs, ignoring compute or storage resources.
What does the DREAD model help security professionals do?
Define the architecture of a system and its interface contracts for distributed components.
Automatically generate checklists for code reviews without human verification.
Prioritize firewall rules and network configurations to reduce external attacks.
Assign a score to threats based on damage, reproducibility, exploitability, users affected, and discoverability.
What is the recommended approach to handle data storage in an application to avoid multiple components introducing inconsistent rules and data?
Store all state in memory within the application tier for faster access and simplicity.
Use a centralized data storage system to ensure consistency across components.
Allow each component to manage its own data independently for flexibility.
Use temporary storage solutions to minimize data conflicts.
What is the recommended approach to ensure flexibility in data handling while maintaining validation and exposing a consistent API?
Allow each application service to access the database directly.
Encapsulate the data store behind a dedicated service.
Avoid validation or business logic and rely on external scripts.
Use multiple separate databases for each component.
What is a key advantage of using WebSockets over long polling in web applications?
WebSockets automatically cache all server responses to reduce network traffic.
WebSockets guarantee message delivery even if the client loses connection temporarily.
WebSockets allow two-way communication without creating a new connection for each message.
WebSockets convert all JSON responses into XML for easier parsing in browsers.
Why should developers avoid assigning positive (non-zero) tabindex values when managing keyboard navigation?
It disables default focus behavior so custom JavaScript handlers must replace it.
It prevents screen readers from detecting dynamic updates triggered by scripted UI changes.
It can create inconsistent navigation order that breaks alignment between visual flow and DOM structure.
It forces all interactive elements to require ARIA roles even when native semantics exist.
According to the text, what is a key practice for effective monitoring and logging in a production system?
Automatically fix errors as they occur, without the need to log or monitor metrics for incidents.
Collect all logs together without separation, relying on post-incident review to find relevant errors when needed.
Store every possible piece of data, including sensitive information, in a single log, and aggregate all metrics regardless of relevance, to ensure complete historical records for any analysis.
Separate logs by concern, capture sufficient context for errors, and set meaningful metrics and alerts to detect issues early.
What is the main purpose of using tools like Vagrant or containers for development environments?
They allow developers to create reproducible environments that match production as closely as possible.
Containers and Vagrant can replace all infrastructure management, including firewalls, scaling, and more.
Developers must manually install all dependencies on each machine for consistency.
They eliminate the need for any deployment scripts or automation entirely.
Why is it important to integrate security into the design and development of web applications?
Because adding security only at the end of development ensures all vulnerabilities are automatically fixed.
Because using complex passwords alone guarantees that the system cannot be compromised in any way.
Because outsourcing all security responsibilities to external tools eliminates the need for developer involvement.
Because integrating security early ensures vulnerabilities are addressed proactively.
Why is relying solely on security by obscurity or a single layer of protection not sufficient for comprehensive defense against attacks?
Because relying solely on security by obscurity or a single layer of protection provides comprehensive defense against all possible attacks.
Because a system is only secure as its weakest point, requiring careful planning to prevent unauthorized access.
Because multiple layers of security increase the complexity of attacks, making them impossible.
Because obscurity ensures attackers cannot find vulnerabilities in the system.
What is the primary purpose of monitoring in a DevOps environment?
To rely on users reporting issues, such as social media posts, as the main indicator of system problems.
To track every technical detail, including all logs, metrics, and user interactions, for exhaustive analysis, even if it doesn’t immediately prevent outages.
To collect large amounts of data primarily for post-mortem analysis without providing real-time alerts.
To detect potential problems early through metrics and logs, allowing the team to respond before users are affected.
Why is it generally recommended to use `
`
`
`
`
Why are database migrations important in application development?
They permanently lock the database schema so no changes can be made in the future.
They automatically improve the performance of all database queries without any developer input.
They allow developers to modify the database schema incrementally, ensuring compatibility and reducing errors.
They automatically disable outdated database queries to prevent system crashes.
What is the purpose of database migrations?
They convert NoSQL databases into relational databases to simplify data handling.
They remove the need for indexes and optimization by restructuring the entire database.
They allow you to safely change the database structure while keeping data consistent.
They automatically optimize database queries for faster performance.
What is the main difference between continuous delivery and continuous deployment?
Continuous deployment avoids using pipelines or CI/CD tools, and instead requires developers to manually copy code to production after each commit.
Continuous deployment only prepares code for release but requires manual deployment.
Continuous delivery ensures changes are ready for release, while continuous deployment automatically releases every change to production.
Continuous delivery ignores automation and relies on manual testing for every release.
Why should on-call teams rely on well-maintained runbooks?
Because runbooks reduce the need for logs in diagnosing failures.
Because runbooks eliminate the need for domain knowledge entirely.
Because runbooks provide clear steps for resolving known classes of incidents.
Because runbooks automatically sync across all deployed regions.
Why must environment-specific configuration never be stored in code?
Because configuration rarely changes, so storing it in code has no effect.
Because code-based config loads faster on multi-core processors.
Because environment config makes deployment pipelines optional.
Because environment-specific configuration can vary across deployments and should be managed separately.
Why should accessible components avoid relying solely on hover-based interactions?
Because hover states load additional fonts that reduce UI performance
Because hover actions exclude users on touch devices and keyboard-only navigation
Because hover effects require high refresh-rate displays to function correctly
Because hover styling always increases layout shift during rendering
Why is versioning important when evolving an API over time?
Because versioning allows changes without breaking existing client integrations
Because versioning eliminates the need for load balancing in microservices
Because version numbers dictate server memory allocation policies
Because API upgrades automatically propagate when no version is defined
Why must alerts remain actionable rather than overly noisy?
Because alerts should always fire regardless of severity
Because alert systems function best when thresholds are never adjusted
Because actionable alerts let engineers focus on real issues instead of filtering distractions
Because noise increases alert durability for long-term storage
Why is output encoding effective at preventing XSS attacks?
Because encoding neutralizes script injection by treating malicious input as text
Because encoded values increase CPU load making attacks harder
Because encoded output disables caching for security-related content
Because encoding forces browsers to ignore all client-side logic
Because encoding blocks all inline styling from loading on the page
Why are foreign key constraints crucial in relational systems?
Because relational databases require no validation when constraints are absent
Because foreign keys reduce application logic and remove the need for caching
Because constraints only exist to reduce physical disk usage
Because foreign keys improve UI responsiveness in large dashboards
Because they prevent inconsistent relationships and maintain data integrity
What is the main purpose of using a "screen-reader-only" technique such as the modern .sr-only CSS class?
It converts icons into captions so graphical elements behave like full text labels.
It forces browsers to replace background images with readable labels automatically.
It blocks hidden text from search engines to avoid duplicate semantic information.
It removes text entirely so visual layouts remain cleaner for all device categories.
It hides text visually while keeping it accessible to assistive tools that rely on the DOM.
What is the primary purpose of programmatically restoring focus after an interactive element is removed from the DOM?
To ensure the user interface remains responsive in large dashboards
To prevent inconsistent relationships in relational databases
To improve accessibility for users relying on assistive technologies
To block hidden text from search engines to avoid duplicate semantic information
What is the main purpose of salting a password hash in web applications?
To create a visually complex password that contains numbers, symbols, and capital letters automatically.
To store a backup copy of the original password in a separate database for verification purposes.
To combine multiple passwords together so that users must enter several secrets at login.
To add a unique random value to each password hash, making dictionary attacks and hash collisions more difficult.
Why is it important to consider deployment early in the web application development process?
Because ignoring deployment considerations can not lead to scalability, storage, and operational issues that will not impact the application's stability and user experience.
Because deployment constraints can affect design decisions like session storage and file handling.
Because deployment only matters after the application is fully built and tested.
Because developers do not need to understand the environment their app will run in.
What does preventing unexpected focus loss in web applications achieve?
It converts all removed components into static content visible only to assistive tools.
It forces screen readers to re-announce all page regions regardless of user context.
It disables default navigation so custom keyboard shortcuts replace the tab sequence.
It prevents unexpected focus loss that would otherwise send keyboard users back to the top of the page.
What is the main advantage of using REST over SOAP (Simple Object Access Protocol) for web APIs?
REST can only be used with XML, limiting the formats supported for responses.
REST requires strict schemas and additional tools for request formatting and debugging.
REST reuses standard HTTP mechanisms, making requests simpler without special libraries.
REST mandates a single URL endpoint for all API requests regardless of resource type.
What is the recommended way to handle secrets like API keys or passwords in a web application?
Embed them directly in the source code to make deployment easier and reduce configuration steps.
Share secrets freely among all developers so anyone can debug or deploy without restriction.
Keep them separate from source code, restrict access to a need-to-know basis, and rotate them regularly.
Use hidden URLs and obscure names for sensitive endpoints to ensure attackers cannot guess them.
When designing an API, which of the following is the most recommended approach for handling client errors such as invalid requests?
Always redirect the user to the home page without explanation.
Display a plain text message in the browser console only.
Return a structured JSON error message detailing the validation issues.
Send the full server stack trace in the HTTP response for debugging.
What is a key benefit of applying DevOps practices with automation and feature flags?
Teams can deploy smaller, more frequent changes, reducing risk and speeding up delivery.
Teams must deploy all changes manually to ensure safety and accuracy.
Automation eliminates the need for any configuration or environment management.
Feature flags allow changes to be deployed without testing or control.
What is a key consideration when introducing dependencies or libraries into a web application?
Security is not important for front-end dependencies, so they can be added without review.
Only major libraries need auditing, as smaller or nested dependencies rarely contain vulnerabilities.
Introducing new dependencies without assessing their maintenance, community support, or update history can increase the likelihood of security breaches in your system.
You can assume all libraries are secure if they come from popular public repositories without additional checks.
What is the main principle of immutable infrastructure in DevOps?
Updates to infrastructure are made incrementally on the live environment to avoid downtime, rather than replacing it entirely with a fresh deployment.
Immutable infrastructure applies only to test environments, not production systems.
Only the code changes, while the underlying infrastructure is modified in place.
Infrastructure is replaced entirely with a fresh deployment, rather than being modified incrementally.
Why should error responses in APIs follow a predictable structure?
Because consistent formatting helps clients handle issues programmatically
Because structured errors eliminate the need for API versioning entirely
Because predictable structures reduce storage cost for archived logs
Because varied error formats improve logging diversity across environments
Why should logs be collected as continuous event streams?
Because streaming logs enable centralized aggregation and real-time monitoring
Because event streams automatically compress themselves without storage cost
Because page rendering depends directly on streaming log throughput
Because streaming guarantees that logs contain no duplicate entries
Why are blameless post-mortems recommended after incidents?
Because assigning blame helps identify which team needs fewer engineers
Because incident reviews must primarily focus on rewriting user documentation
Because they encourage honest analysis focused on systemic improvement
Because post-mortems should measure UI satisfaction rather than root causes
Why is proactive monitoring vital for production reliability?
Because high-volume traffic negates the need for alerting
Because monitoring reveals early signs of failure before they affect users
Because monitoring tools require user action to trigger events
Because metrics remain accurate only when monitoring is disabled
Because proactive systems replace the need for traffic load balancers
Why must database schemas be designed with future scalability in mind?
Because relational constraints reduce performance under all conditions
Because scalable schema models eliminate the need for indexes
Because unplanned schemas work fine as long as queries remain simple
Because schemas automatically rebuild themselves when structures degrade
Because poor schema design becomes expensive to correct as data volume grows
Why use HTTPS for all production traffic, even for non-sensitive endpoints?
Because encrypted traffic disables caching to improve data freshness
Because HTTPS forces clients to refresh tokens after every request
Because HTTPS removes latency associated with round-trip communication
Because TLS automatically compresses payloads for faster delivery
Because encrypted transport prevents manipulation or inspection of any transmitted data
Why should passwords be hashed rather than encrypted with a reversible method?
Because encrypted passwords automatically expire after a session
Because encrypted passwords synchronize more slowly across servers
Because encrypted passwords are easier to decrypt with brute force
Because hashing ensures passwords cannot be reversed, enhancing security
Why does hashing make stolen password data unusable to attackers?
Because hashing requires fewer code changes during deployments
Because hashing makes stolen password data unusable to attackers
Because hashing allows faster authentication under heavy traffic
Why is capacity planning essential before peak traffic events?
Because peak traffic reduces required memory usage
Because capacity increases only when endpoints return HTTP 500
Because planning ensures the system can handle expected load without degradation
Because hardware adds capacity automatically during downtime
Why is immutable infrastructure more reliable than mutable servers?
Because immutability forces all apps to use the same database schema
Because immutable servers replace the need for application logging
Because immutable hosts automatically upgrade dependencies
Because immutability eliminates configuration drift between deployments
Why should session tokens be rotated periodically?
Because token rotation is needed only when the UI theme changes
Because token rotation ensures faster garbage collection in memory
Because rotation limits the usefulness of a compromised token
Because session tokens degrade visually when reused too often
What is the main difference between a key-value store and a document store in NoSQL databases?
Key-value stores are optimized for analytics, while document stores are optimized for transactions.
Key-value stores use fixed schemas, while document stores use dynamic schemas.
Key-value stores store data as simple key-value pairs, while document stores store data in structured documents.
Key-value stores are faster for large-scale queries, while document stores are slower.
What is the primary difference between a key-value store and a document store in terms of data retrieval?
A key-value store retrieves data only by a unique key, while a document store allows queries based on the content inside the document.
A key-value store is always distributed across multiple machines, whereas a document store must run on a single server.
A key-value store stores data in tables with rows and columns, while a document store stores all data as plain text files.
A key-value store is optimized for graph traversal, while a document store only allows sequential reads.
What is the primary purpose of using ARIA (Accessible Rich Internet Applications) roles in web development?
They guarantee that all dynamic UI updates are announced visually without requiring additional logic.
They replace the need for keyboard-friendly interaction patterns by simulating default browser controls.
They provide assistive technologies with semantic meaning that native HTML cannot convey in complex custom components.
They allow developers to bypass semantic HTML so all elements can be freely styled as plain containers.
Which HTTP status code indicates that a request has succeeded and the server has returned the expected response?
400 Bad Request indicates that the request was invalid or could not be processed properly.
200 OK indicates the request was successful and the response contains the expected data.
404 Not Found indicates the requested resource could not be located on the server.
302 Found indicates a temporary redirection to another URL for the requested resource.
What does the HTTP status code 201 Created indicate?
A new resource has been created successfully at a specific URL.
The server has successfully processed the request but returned no content.
The request was invalid and could not be processed.
The server encountered an error while processing the request.
What is the main principle of executing an app as one or more stateless processes?
The app should keep session data in memory for faster response times.
Each script should terminate without using a backing store for files.
State can be stored locally if the server has sufficient memory capacity.
The app must not store state locally and rely on an attached backing store for data.
According to the text, what is a key practice for effective monitoring and logging in a production system?
Focus only on business KPIs and analytics.
Automatically fix errors without logging.
Separate logs by concern, capture context, and set meaningful metrics and alerts.
Store all data including sensitive info in one log.
What is the main difference between continuous delivery and continuous deployment?
Continuous delivery automatically deploys all changes to production.
Continuous deployment avoids CI/CD tools.
Continuous delivery prepares changes for release, while continuous deployment releases automatically.
Continuous deployment only prepares code for release.
Why is it important to integrate security into the design and development of web applications?
To reduce the cost of development.
To ensure faster deployment of applications.
To protect sensitive data and prevent vulnerabilities.
To improve the aesthetic design of the application.
Why is it important to carefully plan security measures to prevent unauthorized access?
Because using complex passwords alone guarantees that the system cannot be compromised in any way.
Because relying solely on security by obscurity or a single layer of protection provides comprehensive defense against all possible attacks.
Because outsourcing all security responsibilities to external tools eliminates the need for developer involvement.
Because a system is only as secure as its weakest point, requiring careful planning to prevent unauthorized access.
What is a key practice for effective monitoring and logging in a production system?
Focus only on business KPIs and analytics, ignoring technical metrics and system health monitoring.
Automatically fix errors as they occur, without the need to log or monitor metrics for incidents.
Separate logs by concern, capture sufficient context for errors, and set meaningful metrics and alerts to detect issues early.
Store every possible piece of data, including sensitive information, in a single log, and aggregate all metrics regardless of relevance, to ensure complete historical records for any analysis.
What is the main difference between continuous delivery and continuous deployment?
Continuous delivery automatically deploys all changes to production without any checks.
Continuous deployment avoids using pipelines or CI/CD tools, and instead requires developers to manually copy code to production after each commit.
Continuous delivery ignores automation and relies on manual testing for every release.
Continuous deployment automatically deploys all changes to production after passing automated tests.
Continuous delivery ensures changes are ready for release, while continuous deployment automatically releases every change to production. What is the difference between continuous delivery and continuous deployment?
Continuous delivery prepares code for release but requires manual deployment.
Continuous deployment automatically releases every change to production.
Continuous delivery ensures changes are ready for release but does not deploy them automatically.
Continuous deployment requires manual intervention for deployment.
According to the text, what is a key element of an effective run book for handling incidents?
It should contain every possible technical detail about the system, historical logs, code references, and organizational changes, even if irrelevant for immediate incident response.
It only needs to include general advice and high-level guidance, leaving responders to figure out exact steps.
It primarily lists previous incidents without including specific steps or contacts for resolving new issues.
It should provide detailed step-by-step procedures, contact paths, and escalation instructions so responders can act correctly under pressure.
Why is semantic HTML important when building pages that work well with assistive technologies?
It replaces the need for progressive enhancement because scripts handle all accessibility.
It forces every component to use ARIA (Accessible Rich Internet Applications) roles even when native semantics already exist.
It preserves meaningful structure that assistive technologies can interpret correctly without relying on visual styling.
It ensures automated SEO tools apply fixed rankings regardless of content hierarchy.
Why should a twelve-factor app expose its services by port binding?
Using local files instead of network ports simplifies scaling, deployment, and independent process management across multiple servers.
Port binding allows the app to be self-contained and independent of external web servers.
Port binding ensures that the app can only be accessed locally for security purposes.
Port binding eliminates the need for network configuration during deployment.
Why is it recommended to perform sanitization at the edge of a system?
To avoid validation and rely solely on trusted internal data handling mechanisms
To ensure that users can inject any HTML or JSON content without limitations
To make the system faster by skipping checks on external inputs in other modules
To ensure data leaving or entering the system is safe and reduce risks of corruption
Why should developers avoid assigning positive (non-zero) tabindex values when managing keyboard navigation?
It prevents screen readers from detecting dynamic updates triggered by scripted UI changes.
It disables default focus behavior so custom JavaScript handlers must replace it.
It forces all interactive elements to require ARIA (Accessible Rich Internet Applications) roles even when native semantics exist.
It can create inconsistent navigation order that breaks alignment between visual flow and DOM structure.
What is considered the "golden rule" when handling user input in web applications?
Validate only administrative input while skipping normal users' data checks
Validate all input regardless of its source
Allow users to bypass validation for faster processing
Use default validation methods for administrative users only
What is the best practice for handling user input according to the provided material?
Always log user input without validation to ensure comprehensive auditing
Never validate input and rely solely on firewall protection against attacks
Sanitize input aggressively and ignore validation for faster processing
Validate input from users and sanitize output before displaying it
What is the primary reason the Build, Release, Run phases must remain strictly separated in an application's deployment process?
Keeping these phases separate prevents developers from tagging commits in version control, ensuring that configuration is always rebuilt dynamically whenever the service restarts.
Following this separation model ensures that all configuration changes automatically rebuild the source code, keeping every deployment perfectly synchronized with production edits.
Separating build, release, and run ensures consistent, traceable deployments, enables predictable rollbacks, and prevents runtime failures caused by missing dependencies or on-the-fly asset compilation.
Strict separation of phases guarantees that dependency servers never fail, eliminating the risk of downtime when restarting services on new machines or cloud-based virtual environments.
What is the main advantage of using REST over SOAP (Simple Object Access Protocol) for web APIs?
REST does not support caching or stateless interactions, which SOAP handles automatically.
REST can only be used with XML, limiting the formats supported for responses.
REST mandates a single URL endpoint for all API requests regardless of resource type.
REST is lightweight and supports multiple formats like JSON, making it more flexible and easier to use than SOAP.
Similar Resources on Wayground
70 questions
Networks and Communication Quiz 3
Worksheet
•
University
70 questions
Hệ Điều Hành
Worksheet
•
University
69 questions
Quiz sobre JavaScript
Worksheet
•
University
68 questions
Tin [Chuyên] - 11 - CKI
Worksheet
•
11th Grade - University
64 questions
TRACNGHIEM Process & Quality
Worksheet
•
University
74 questions
ER Model Fundamentals
Worksheet
•
University
70 questions
Extracted Questions
Worksheet
•
University
64 questions
Chương 4_Mạch Logic, Đường truyền và Hệ thống vào ra (64 câu)
Worksheet
•
University
