ITIL
ITIL
1. Introduction to ITIL 4
• Overview of ITIL
• Evolution from previous versions to ITIL 4
• Purpose and objectives of ITIL 4
3. Guiding Principles
• Risk management
• Continual improvement
• Information security management
• Knowledge management
• Service desk
• Incident management
• Problem management
• Change control
• Service request management
• Deployment management
• Software development and management
• Infrastructure and platform management
1. Introduction to ITIL 4:
ITIL (Information Technology Infrastructure Library) is a widely adopted framework that provides best
practices and guidelines for IT service management (ITSM). Here are the key points you should cover
under this topic:
a) Overview of ITIL:
• Understand the history and evolution of ITIL from its inception in the 1980s to the current ITIL 4
version.
• Learn about the purpose and objectives of ITIL, which is to provide a framework for
organizations to effectively manage and deliver IT services that support business objectives.
• Familiarize yourself with the previous versions of ITIL (v2 and v3) and the drivers that led to the
development of ITIL 4.
• Understand the key differences and improvements introduced in ITIL 4 compared to previous
versions, such as the emphasis on value co-creation, integration with modern ways of working (e.g.,
Agile, DevOps), and the adoption of a holistic service value system approach.
• Learn about the primary purpose of ITIL 4, which is to facilitate the effective and efficient
facilitation of value co-creation through service management.
• Understand the objectives of ITIL 4, including promoting efficiency, reducing costs, improving
service quality, and enabling better collaboration between IT and business units.
• Familiarize yourself with essential ITIL terminology, such as service, value, value proposition,
value stream, service relationship management, and the service value system.
• Understand the shift towards a more holistic and value-focused approach in ITIL 4.
----------------------------------------------------------------------------------------------------------------------------
Sure, here's an explanation of the history and evolution of ITIL from its inception in the 1980s to the
current ITIL 4 version:
ITIL was first developed in the late 1980s by the Central Computer and Telecommunications Agency
(CCTA), a former British government agency. The initial version was a collection of best practices for
managing IT services, primarily focused on improving efficiency and reducing costs.
ITIL v1:
- Provided guidance on areas like service support, service delivery, software management, and security
management
ITIL v2:
- Released in 2000-2004
- Consolidated and restructured the previous 31 books into 9 logically structured sets
- Introduced the concept of service lifecycle, which included service strategy, service design, service
transition, service operation, and continual service improvement
ITIL v3:
- Released in 2007
- Added new guidance on topics like service strategy, service design, and continual service improvement
ITIL 4:
- Released in 2019
- Introduces the service value system, a holistic operating model for service management
The service support area in ITIL covers the following key processes:
1. Service Desk: The service desk is the single point of contact for users to report incidents, request
services, or seek assistance related to IT services. It plays a crucial role in managing user interactions
and providing efficient support.
2. Incident Management: Incident management is the process of restoring normal service operation as
quickly as possible after an incident occurs. It involves recording, classifying, investigating, diagnosing,
and resolving incidents, as well as communicating status updates to users.
3. Problem Management: Problem management aims to identify the root causes of incidents and
implement permanent solutions to prevent recurring issues. It involves analyzing incident data,
identifying trends, and proactively managing problems to minimize their impact on IT services.
4. Request Fulfillment: Request fulfillment is the process of handling service requests from users, such
as requests for new hardware, software installations, or access permissions. It ensures that requests are
properly evaluated, approved, and fulfilled in a timely and efficient manner.
5. Access Management: Access management is responsible for granting authorized users the right to
access specific IT services, data, or resources while restricting access to unauthorized users. It involves
managing user identities, access rights, and access controls.
6. Event Management: Event management is the process of monitoring and responding to events that
occur in the IT infrastructure. It involves detecting, analyzing, and determining the appropriate actions
to take in response to events, such as alerts, notifications, or system messages.
SERVICE Delivery
In ITIL, service delivery refers to the set of practices and processes that are focused on the design,
creation, and deployment of IT services to meet the needs and requirements of customers and users.
The service delivery area in ITIL covers the following key processes:
Service level management is the process of defining, negotiating, monitoring, and reporting on service
level agreements (SLAs) and operational level agreements (OLAs). It ensures that the agreed-upon
service levels are met and maintained.
SLAs are external agreements between the service provider and the customer, focused on
service quality commitments.
OLAs are internal agreements within the service provider organization, focused on the
operational processes and interdependencies required to deliver the service defined in the SLA.
Service catalog management is the process of maintaining and managing a central repository of available
IT services, including their descriptions, pricing, and associated service level agreements.
3. Capacity Management:
Capacity management is the process of ensuring that the IT infrastructure and resources have sufficient
capacity to meet current and future service delivery requirements. It involves monitoring, analyzing, and
adjusting capacity to meet the changing demands.
4. Availability Management:
Availability management is the process of ensuring that IT services and supporting components are
available and accessible when needed by users and customers. It involves monitoring, analyzing, and
improving the availability of IT services.
IT service continuity management is the process of managing risks and ensuring the continuity of IT
services in the event of disruptions or disasters. It involves developing and implementing continuity
plans and recovery strategies.
7. Supplier Management:
Supplier management is the process of managing and coordinating the delivery of services from external
suppliers or vendors. It includes negotiating contracts, monitoring supplier performance, and ensuring
adherence to agreed-upon service levels.
The service delivery processes in ITIL are crucial for designing, implementing, and managing IT services
that meet the needs and expectations of customers and users. They ensure that services are delivered
consistently, reliably, and with appropriate levels of quality, security, and continuity.
Software Management:
Software management refers to the processes and practices involved in managing the lifecycle of
software applications within an organization. In ITIL, software management covers the following key
areas:
1. Software Asset Management: This process involves managing and controlling software assets
throughout their lifecycle, including procurement, deployment, updates, and retirement. It ensures that
software assets are accounted for, licensed, and properly utilized.
2. Software Control and Distribution: This process focuses on the controlled distribution and installation
of software across the organization. It includes activities such as software packaging, testing, and
deployment to ensure that software is delivered and installed correctly.
3. Software Development and Maintenance: This area covers the processes and practices related to the
development, testing, and maintenance of software applications. It includes activities such as
requirements gathering, coding, testing, and bug fixing.
4. Software Change Management: This process ensures that changes to software applications are
properly evaluated, approved, and implemented in a controlled manner. It helps to minimize the risks
associated with software changes and ensures that changes are aligned with business requirements.
Effective software management practices help organizations optimize their software investments, ensure
compliance with licensing agreements, and maintain the integrity and functionality of software
applications throughout their lifecycle.
Security Management:
Security management in ITIL refers to the processes and practices involved in protecting information
assets and ensuring the confidentiality, integrity, and availability of IT services and data. It covers the
following key areas:
1. Information Security Policies and Standards: This involves establishing and maintaining policies,
standards, and guidelines related to information security within the organization. These policies define
the rules, procedures, and controls for protecting information assets.
2. Information Security Risk Management: This process focuses on identifying, assessing, and mitigating
risks related to information security. It involves conducting risk assessments, implementing security
controls, and continuously monitoring and managing risks.
3. Access Control and Identity Management: This area deals with managing user identities,
authentication, and access control mechanisms. It ensures that only authorized individuals have access
to specific information assets and IT resources.
4. Security Incident Management: This process focuses on detecting, responding to, and recovering from
security incidents, such as data breaches, cyber-attacks, or unauthorized access attempts. It involves
incident reporting, investigation, and implementation of corrective actions.
5. Compliance and Audit: This area involves ensuring compliance with relevant security regulations,
standards, and legal requirements. It includes conducting security audits, monitoring compliance, and
implementing corrective actions as needed.
Effective security management practices are essential for protecting an organization's information assets,
maintaining the confidentiality and integrity of data, and ensuring the availability of IT services. It helps
to mitigate security risks, prevent data breaches, and maintain the trust of customers and stakeholders.
Sure, I'll explain the service lifecycle concept in ITIL in a way that an entry-level software engineer can
understand.
Imagine you're part of a team that develops and maintains a software application for a company. This
application is a service that the company provides to its customers or employees. The service lifecycle in
ITIL describes the different stages that this service goes through, from its initial conception to its ongoing
operation and improvement.
1. Service Strategy:
Before you even start developing the application, the company needs to have a strategy in place. This
strategy defines the purpose of the service, the target customers, and how it aligns with the company's
overall business goals. It's like creating a blueprint or a high-level plan for the service.
2. Service Design:
Once the strategy is defined, the next step is to design the service. In this stage, you and your team
would gather requirements, design the architecture, and plan out how the application will be developed,
tested, and deployed. You'll also consider factors like scalability, security, and how the service will be
maintained and supported.
3. Service Transition:
After the design phase, it's time to actually build and transition the service into a live environment. This
stage involves activities like coding, testing, and deploying the application to production servers. It also
includes training and documentation for those who will be using and supporting the service.
4. Service Operation:
Once the application is live, the focus shifts to operating and maintaining the service. This stage involves
activities like monitoring the application's performance, handling incidents and requests from users, and
performing routine maintenance tasks.
5. Continual Service Improvement:
As the application is being used, you'll gather feedback and data on its performance, user experience,
and any issues that arise. The continual service improvement stage involves analyzing this information
and identifying areas for improvement. This could lead to updates, bug fixes, or even new features being
developed, and the cycle repeats with a new iteration of the service lifecycle.
The service lifecycle in ITIL provides a structured approach to managing services from start to finish. It
ensures that services are designed, built, and operated in a way that aligns with business needs and
provides value to customers or users. As a software engineer, understanding this lifecycle can help you
see how your work fits into the bigger picture of delivering and maintaining high-quality IT services.
Sure, I'll explain these ITIL 4 concepts related to the service value system using examples that an entry-
level software engineer can understand.
The service value system is a holistic operating model for service management introduced in ITIL 4. It
represents a shift from a linear, process-based approach to a more flexible and integrated model that
emphasizes value co-creation with customers and stakeholders.
Imagine you're part of a software development team working on a new mobile application for a retail
company. The service value system provides a framework for how your team can collaborate with the
company and its customers to deliver a valuable service.
- Instead of just building an app based on predefined requirements, your team actively involves the
company's stakeholders (product managers, marketing, etc.) and potential customers throughout the
development process.
- You gather feedback, incorporate suggestions, and continuously refine the app to ensure it provides
value to the customers and aligns with the company's goals.
- It's a collaborative effort where the customers and stakeholders are not just passive recipients but
active participants in shaping the service.
- Your team follows an Agile development methodology, with frequent iterations and continuous
feedback loops.
- You adopt DevOps practices, automating the build, testing, and deployment processes for faster and
more reliable releases.
- You apply Lean principles, focusing on minimizing waste and maximizing value delivery.
- These modern practices help your team be more responsive, efficient, and aligned with the service
value system's emphasis on continuous improvement and value co-creation.
- As customer needs and market trends evolve, your team can quickly adapt and iterate on the app's
features and functionality.
- The service value system encourages a flexible mindset, where you can pivot and adjust your
approach based on changing business environments or customer feedback.
- Instead of being constrained by rigid processes, your team has the agility to respond to new
opportunities or challenges, ensuring the app remains valuable and relevant.
By adopting the service value system mindset, your software development team becomes a true partner
in delivering value to the customers and the business. It's a collaborative, iterative, and adaptive
approach that leverages modern practices to ensure the service (in this case, the mobile app)
continuously meets the evolving needs of its users and stakeholders.
As an entry-level software engineer, you would be involved in the entire lifecycle of the app, from conception
to operation and continuous improvement. Here's how the service value system would influence your work:
1. Understanding the value proposition: Before writing any code, you and your team would work
closely with the company's stakeholders (product managers, marketing, customer support, etc.) to
understand the value proposition of the app. What problems is it trying to solve? What needs does it address
for customers and drivers?
2. Collaborative design and development: Instead of working in silos, your team would collaborate with
stakeholders throughout the design and development process. You would gather feedback from potential
users, iterate on features, and ensure that the app is being built to deliver value to customers and the
business.
3. Embracing modern practices: To be more efficient and responsive, your team would adopt modern
practices like Agile methodologies, DevOps principles, and Lean thinking. This could involve practices like
continuous integration, automated testing, and frequent releases to quickly deliver value and incorporate
feedback.
4. Focusing on the end-to-end service: Rather than just building the app, you would consider the entire
service experience, from how users discover and onboard to how the app integrates with backend systems
and support processes. Your role extends beyond just writing code to ensuring the overall service delivers
value.
Continuous improvement: Once the app is released, your team would monitor its performance, gather user
feedback, and continuously improve and update the app based on changing needs and market conditions. It's
an ongoing cycle of value co-creation and optimization.
Imagine a factory that takes raw materials (opportunities and demands) and turns them
into finished products (valuable services) for customers. The service value system in
ITIL is like that factory, with different parts working together to create value. Here's a
breakdown of the key components for an entry-level software professional:
1. Guiding Principles: These are basically the golden rules that everyone in the
"factory" follows. They focus on things like always delivering value to the
customer and working together effectively.
2. Governance: This is the management team that oversees the whole operation.
They make sure the factory runs smoothly and everyone is following the rules.
3. Service Value Chain: This is the step-by-step process of taking an idea and
turning it into a working service. As a software professional, you'll likely be
involved in some of these steps, like design, development, and support.
4. Practices: Think of these as the tools and techniques used throughout the
factory. There are many ITIL practices, but some relevant to you might be things
like configuration management (keeping track of software versions) or incident
management (fixing problems).
5. Continual Improvement: The factory never stops getting better! This part
focuses on always looking for ways to improve the efficiency and quality of the
services produced. As a software developer, you might be involved in suggesting
improvements to the development process.
Essentially, these components work together to ensure the IT services you help create
deliver value to the business and its customers
L1/L2/L3 – Explained
Imagine a Pit Crew for Your Software Issues
Think of your software and its users as a race car. When problems arise (bugs, errors),
you have a team to fix them, just like a pit crew. This team is often organized into
different levels (L1, L2, L3) based on their expertise and the complexity of issues they
handle.
L1 (Level 1): These are the first responders, like the jack crew in a pit stop. They
handle common, well-defined problems that often have quick solutions. They
might reset configurations, restart services, or provide basic troubleshooting
steps.
L2 (Level 2): They're the more experienced technicians, like the tire changers.
They tackle issues that require deeper investigation or go beyond basic
troubleshooting. L2 engineers might analyze logs, diagnose root causes, or
implement workarounds.
L3 (Level 3): These are the pit crew's experts, like the engine specialists. They
deal with intricate problems requiring advanced knowledge or specialized skills.
L3 engineers might fix complex bugs, perform in-depth debugging, or involve
developers in resolving coding issues.
OLAs (Operational Level Agreements) are like the pit crew's playbook. They define:
Handoff Times: How long should L1 try to resolve an issue before escalating it
to L2? How long should L2 work on it before involving L3? These timeframes
ensure timely resolution and prevent issues from getting stuck at a single level.
Responsibility Levels: What types of problems are L1, L2, and L3 expected to
handle? This avoids confusion and ensures the right expertise is applied to each
issue.
Communication Protocols: How should issues be communicated between
levels? This could involve ticketing systems, escalation procedures, or specific
communication tools.
By understanding and applying these ITIL 4 principles, you can become a more
valuable software engineer, contributing to a well-coordinated and efficient IT service
delivery environment. Remember, these principles are meant to be flexible and
adaptable. As you gain experience, you'll learn how to best apply them in your specific
role.
Imagine these four dimensions as ingredients in a recipe. You wouldn't just use flour
and water to bake a cake, would you? You'd need all the ingredients working together to
create a delicious dessert. Similarly, successful service management requires a
balanced focus on all four dimensions.
In the world of IT service management, you'll encounter three key terms that deal with
different types of interactions: incidents, requests, and service catalog tasks (SCTasks).
Here's a breakdown for an entry-level software engineer:
1. Incident:
Imagine an unexpected disruption to a service or a reduction in its quality. It's
like hitting a bump in the road while using an app. The app might crash, or a
critical feature might stop working.
Your role: If you encounter an incident (maybe a bug in your code), you'd try to
fix it or find a workaround to restore normal service as quickly as possible. You
might also document the incident to help identify the root cause and prevent
future occurrences.
2. Request:
Think of a request as a standard service or piece of information a user needs.
It's like a smooth stretch of road where users ask for help with everyday tasks.
This could be resetting a password, requesting access to a specific software
program, or asking for help with a basic printer setup.
Your role: You might not be directly involved in fulfilling all requests, but
understanding them helps prioritize your work. For instance, a request to reset a
password might be less urgent than fixing a critical bug you identified.
3. Service Catalog Task (SCTask):
An SCTask is a specific pre-defined service offering listed in a catalog. Think
of it like a menu at a restaurant; each item is a service you can order. An SCTask
could be installing a new software program, configuring a user account, or
moving data to a new server.
Your role: You might be involved in fulfilling SCTasks by following documented
procedures. For instance, if an SCTask involves installing a new software
program, you might have a step-by-step guide to follow to ensure it's done
correctly.
Remember, these are different types of interactions within the IT service management
system. Understanding them helps you categorize issues and prioritize your work
effectively.
Imagine you're a software engineer working on a fantastic new feature for your company's software. To
get this feature to users smoothly, there's more involved than just writing code. IT service management
(ITSM) ensures everything runs efficiently behind the scenes. Here's how the four dimensions of service
management, like ingredients in a recipe, all contribute to success:
**1. Organizations and People:**
* **Team structure:** How your development team works together (e.g., Agile with daily stand-up
meetings).
* **Roles and responsibilities:** Who does what (e.g., you might focus on coding, while others handle
testing or deployment).
* **Skills and knowledge:** Making sure everyone has the training they need (e.g., understanding
coding best practices).
* **Communication tools:** Using platforms like Slack or project management software to stay
connected and share information.
* **Information management:** Systems for storing and accessing code, documentation, and project
details efficiently.
* **Version control:** Tools like Git that track changes to your code, allowing for collaboration and
easy rollbacks if needed.
* **Technology infrastructure:** The servers, databases, and other resources that run the software.
* This is like collaborating with other vendors to complete the meal. It includes:
* **External resources:** Maybe your company uses a cloud service provider to host the software, or
relies on a third-party library for a specific function.
* **Service level agreements (SLAs):** Agreements with these partners outlining the expected level of
service and how issues will be handled.
* **Value streams:** The overall flow of activities, from planning your feature to deploying it and
fixing any bugs that arise.
* **Processes:** The specific steps within each stage (e.g., code review process, testing procedures).
* **Continuous improvement:** Always looking for ways to streamline processes and deliver features
faster and more reliably.
By considering all four dimensions, your company can create a well-oiled IT service management system.
This ensures your fantastic new feature gets into users' hands efficiently, with a strong foundation for
future development!
Imagine you're building a fantastic new feature for your company's software. The ITIL Service
Value Chain is like a roadmap that helps ensure everything goes smoothly, from initial idea to
user satisfaction. Here's a breakdown of the key stages for an entry-level software engineer:
• This is like sketching the recipe and brainstorming ways to make it even better. It
involves:
o Strategy: Defining the overall goals and objectives for the feature.
o Demand management: Understanding user needs and prioritizing development
efforts.
o Continual service improvement (CSI): Always looking for ways to improve
existing features and processes.
• Your role: You might be involved in gathering user feedback or participating in
discussions about how to improve the development process.
• This is like finalizing the recipe and creating a detailed plan. It involves:
o Service design: Specifying the technical details and functionalities of the feature.
o Service catalog management: Documenting the feature's purpose and how it will
be delivered to users.
o Supplier management: Working with any external vendors or partners involved
in development.
• Your role: You might be involved in design discussions, providing technical expertise
about how the feature will be implemented.
3. Obtain/Build:
• This is like serving the dish and ensuring everyone enjoys it. It involves:
o Deployment: Releasing the feature to users in a controlled manner.
o Service operation: Monitoring the feature's performance and resolving any
issues that arise.
o Service desk: Providing user support for the new feature.
• Your role: You might be involved in testing the feature after deployment or helping
to troubleshoot any initial user issues.
• Remember, a great chef is always looking for ways to refine their recipes! CSI is like
constantly seeking ways to improve the feature and the development process. It
involves:
o Monitoring and measurement: Tracking performance metrics and user feedback.
o Incident management: Resolving problems that arise with the feature.
o Problem management: Identifying the root cause of issues and preventing them
from recurring.
• Your role: You might be involved in reporting bugs, suggesting improvements to the
code, or participating in post-release reviews to identify areas for enhancement.
By understanding the ITIL Service Value Chain, you can see how your role as a software engineer
fits into the bigger picture of delivering valuable features to users. You're not just writing code;
you're contributing to a well-defined process that ensures a smooth and successful journey
from idea to implementation.
1. Risk Management:
• Imagine constantly refining your coding skills and the development process. CI is
about always looking for ways to do things better. It involves:
o Monitoring and measurement: Tracking metrics like bug rates, deployment time,
and user satisfaction.
o Feedback and analysis: Analyzing data and user feedback to identify areas for
improvement.
o Process improvement: Implementing changes to the development process based
on your findings. (e.g., automating repetitive tasks, improving testing
procedures)
• Your role: You can contribute to CI by reporting bugs, suggesting improvements to
the code, and participating in discussions about how to streamline the development
process.
• This is like safeguarding your code and company data from unauthorized access or
breaches. It involves:
o Security policies and procedures: Guidelines for handling sensitive information
and protecting systems.
o Access control: Limiting who can access specific data or systems based on their
role.
o Data encryption: Securing sensitive data both at rest and in transit.
o Incident response: Having a plan in place to respond to security breaches.
• Your role: You can contribute to information security by following security protocols,
being mindful of what data you access, and reporting any suspicious activity.
4. Knowledge Management:
• This is like creating a cookbook for your development team. It's about capturing,
sharing, and applying knowledge within the organization. It involves:
o Documentation: Creating clear and up-to-date documentation for code,
processes, and procedures.
o Knowledge sharing: Encouraging collaboration and knowledge exchange
between team members. (e.g., code reviews, team meetings)
o Training and development: Providing opportunities for team members to learn
new skills and stay up-to-date with best practices.
• Your role: You can contribute to knowledge management by writing clear comments
in your code, participating in code reviews, and sharing your learnings with your
colleagues.
By understanding these general management practices, you can become a more valuable
software engineer. You'll not only write good code, but you'll also contribute to a secure,
efficient, and continuously improving development environment.
In the world of software development, a smooth-running operation relies on more than just
writing code. Service Management practices ensure a well-oiled system for handling user
requests, fixing issues, and keeping everything functioning efficiently. Here's a breakdown of
some key service management practices for an entry-level software engineer:
1. Service Desk:
• Imagine this as the first point of contact for users encountering problems or needing
assistance. It's like the help desk at a restaurant where customers can ask questions
or report issues. The service desk typically handles:
o Logging user requests: This could be anything from resetting a password to
reporting a bug in the software you helped develop.
o Providing basic troubleshooting: The service desk might be able to resolve
simple issues or provide users with initial guidance.
o Escalating complex issues: If a user reports a problem you can't resolve at the
service desk level, it might be escalated to you or another engineer for further
investigation.
• Your role: While you likely won't be directly involved in everyday service desk tasks,
understanding how it works can help you appreciate the bigger picture of user
support.
2. Incident Management:
• Think of this as the fire brigade for software issues. It focuses on restoring normal
service as quickly as possible when an unexpected disruption occurs. This could be:
o A critical bug in your code that prevents users from accessing a core feature.
o A server outage that takes the entire software offline.
• Your role: If you identify a critical bug in your code, you might be directly involved in
incident management, working to fix the issue and restore functionality.
3. Problem Management:
4. Change Control:
• This is like having a plan for any modifications made to the software or its
environment. It ensures changes are introduced in a controlled way to minimize risk.
Imagine redecorating your house; change control is like having a plan to avoid
accidentally knocking down walls! It involves:
o Evaluating proposed changes: Assessing the potential impact of any changes to
the software or infrastructure.
o Approving and scheduling changes: Following a defined process to ensure
changes are authorized and implemented smoothly.
o Documenting changes: Keeping a record of all modifications made to the
software system.
• Your code changes likely go through a change control process before being
deployed. Understanding this process helps you ensure your changes are introduced
safely and efficiently.
• This is like a menu of standard services users can request. It could include things like:
o Requesting access to a specific software program you helped develop.
o Asking for help setting up a new user account.
o Requesting additional storage space.
• Your role: You might not be directly involved in fulfilling all service requests, but
understanding them helps you prioritize your work. For instance, a critical bug fix
might take priority over fulfilling a request for additional storage space.
As an entry-level software engineer, you'll be focusing on writing great code, but the world of
software development involves more than just that. Technical management practices ensure a
smooth journey for your code from development to user hands. Here's a breakdown of three
key areas for you:
1. Deployment Management:
• Imagine this as the final stage where your fantastic code gets delivered to users. It's
like carefully placing the finishing touches on a dish before serving it. Deployment
management involves:
o Packaging your code: Preparing your code and any necessary resources into a
format that can be easily deployed to the live environment.
o Choosing a deployment strategy: Deciding how to release the new code to users
(e.g., gradual rollout or a single big update).
o Monitoring the deployment: Keeping an eye on how the deployment goes,
identifying and resolving any issues that arise.
• Your role: While senior engineers might handle the nitty-gritty of deployment, you
might be involved in testing deployments in smaller environments before they go
live.
• Imagine this as the foundation for your software, like the pots, pans, and oven
needed to cook your dish. It involves:
o Servers: The computers that run your software.
o Databases: Where your software stores its data.
o Networks: How the different parts of your software system communicate with
each other.
o Cloud platforms: Services like Amazon Web Services (AWS) or Microsoft Azure
that provide infrastructure and platform resources on demand.
• Your role: You might not be directly managing servers or databases as an entry-level
engineer, but understanding these components helps you appreciate how your code
interacts with the bigger system.