DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Enterprise AI Trend Report: Gain insights on ethical AI, MLOps, generative AI, large language models, and much more.

2024 Cloud survey: Share your insights on microservices, containers, K8s, CI/CD, and DevOps (+ enter a $750 raffle!) for our Trend Reports.

PostgreSQL: Learn about the open-source RDBMS' advanced capabilities, core components, common commands and functions, and general DBA tasks.

AI Automation Essentials. Check out the latest Refcard on all things AI automation, including model training, data security, and more.

Related

  • Building a DevOps Culture Layer by Layer
  • Maximizing Developer Efficiency and Productivity in 2024: A Personal Toolkit
  • Elevate Your Terminal Game: Hacks for a Productive Workspace
  • Code Review That Matters: Tips and Best Practices

Trending

  • Getting Started With NCache Java Edition (Using Docker)
  • Being a Backend Developer Today Feels Harder Than 20 Years Ago
  • Modern Digital Authentication Protocols
  • Implement RAG Using Weaviate, LangChain4j, and LocalAI
  1. DZone
  2. Testing, Deployment, and Maintenance
  3. DevOps and CI/CD
  4. The Difference Between Day-0, Day-1, and Day-2 Operations

The Difference Between Day-0, Day-1, and Day-2 Operations

In this piece, the author explores the three core phases of operations in software development: day 0, day 1, and day 2.

By 
Andy Corrigan user avatar
Andy Corrigan
·
Jan. 10, 24 · Opinion
Like (3)
Save
Tweet
Share
3.4K Views

Join the DZone community and get the full member experience.

Join For Free

Operations teams have always been important in any organization that uses tech to do business. Thanks to DevOps (the best methodology we know to improve processes between developers and operations), we can see just how important they are when that business is tech.

Simply put, operations is a function as essential to software delivery as development. We all know software can't exist without developers. Unless it's a small project, software also can't run at all, or as long as it should, without those who set up, monitor, and maintain the environments it lives on.

Despite the unifying nature of DevOps, it feels like the software industry knows way more about development practices than operations practices. So, let's do something about that!

In this post, I explore the three core phases of operations in software development: day-0, day-1, and day-2.

Day-0 Operations

It's weird to start a numbered list of things with zero; I'll give you that. But, it makes sense given day-0 operations usually start before there's anything to, well, operate.

Which is to say, day-0 is all about planning.

Whether it's a brand-new product or new features, all interested parties meet to discover what's needed to make sure the software performs as expected.

Day-0 usually helps answer questions like:

  • Does the software architecture change at all?
  • Do we need new infrastructure or changes to existing infrastructure?
  • Do we need new hardware to make the changes?
  • Is there a need for new tooling in the pipeline?
  • Does the change affect databases? When do we back up or restore them?
  • Is there anything new we need to monitor?
  • Do we have any hard limits around finances? Can we afford how much this will cost, or do we need to scale back our ambitions?

The bigger your organization, the more questions you probably need to answer. As your software grows more complex, the answers may take longer to find.

Though the industry delivers many applications through the cloud where infrastructure setup can happen in a deployment process, you may find some bleed between day-0 and day-1 operations.

For example, the setup would start before deploying the application if using self-hosted servers to run the software. After all, you can't deploy to targets that don't exist yet.

Plus, if you need new tools in the pipeline, they'll need to be in place for deployment too.

Day-1 Operations

Day-1 operations is where ideas become reality. The development team completed their work and committed their changes. Packages now work their way through the deployment pipeline built and managed by the operations team.

That's right, day-1 is all about deployments.

Day-1 operations tasks include:

  • Setup or creation of new infrastructure if it doesn't already exist
  • Pre-deployment database backups and post-deployment restores
  • Starting the deployment (if the pipeline isn't fully automated)
  • Stopping the deployment and starting rollbacks if there are major problems

How deployments happen can differ between organizations, teams, and even projects. Manual deployments for small projects aren't uncommon, but they're not sustainable long term.

And hey, big or small, deployments done badly can become a huge cause of anxiety for many in an organization. The reason is that deployments are no longer only a case of running an executable on a server somewhere.

Deployment automation can help remove that anxiety in almost every case. Best practice methodologies, like DevOps and Continuous Delivery, recommend automating and improving your deployment process as much as possible.

Day-2 Operations

Day-2 operations is the Boxing Day of software development. The fun stuff is over. Celebrations over a 'successful delivery' are behind you. It's time to embrace reality for a while, at least until you start all over again.

If you're following Continuous Integration and Continuous Delivery well, however, that will happen way more often than once a year. In fact, it's a process that should happen constantly.

Yes, day-2 is the stuff that happens after deployment.

Day-2 operations tasks include:

  • Monitoring the application to prevent and respond to problems
  • Gathering data that will help improve the pipeline and its processes in the next sprint
  • Performing routine maintenance like backups and restores
  • Restoring service if infrastructure fails through spinning up new infrastructure or doing rollbacks

You can sum up day-2 operations as 'business as usual' operations tasks. It's the phase that keeps your product ticking over so your customers can enjoy it when they need it.

Fret not — another day-0 is just on the horizon.

Conclusion

There's a perception that day-2 is where all an operations team's work takes place (and if your organization has that perception, it might be a sign your teams don't collaborate as well as they should). Operations should be ever-present throughout the entire deployment pipeline.

As we talked about, operations teams can help keep ideas in check. They're important in tool discovery and finding out what developers need to make ideas real. They're active during the deployment process, and, finally, they're vital in the application's ongoing performance.

Happy deployments!

DevOps Productivity career

Published at DZone with permission of Andy Corrigan. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • Building a DevOps Culture Layer by Layer
  • Maximizing Developer Efficiency and Productivity in 2024: A Personal Toolkit
  • Elevate Your Terminal Game: Hacks for a Productive Workspace
  • Code Review That Matters: Tips and Best Practices

Partner Resources


Comments

ABOUT US

  • About DZone
  • Send feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends: