Standardized CI/CD: Same Pipeline, Still Too Much Manual Work
You've got a pipeline. Every team uses it. Code goes in, builds run, tests execute, and deployments happen. But somehow, getting a change to production still feels like pulling teeth. The pipeline is there, but the process is slow. Someone has to approve every change. QA has to manually test the staging environment. Deployment to production requires someone to sit down and run commands or click buttons at a specific time.
This is Level 2 in the CI/CD maturity model: Standardized. Your organization has moved past the chaos of everyone doing their own thing. There is a shared pipeline. There is consistency. But there is still a lot of manual work that keeps delivery slow.
What Standardized Looks Like
At this level, the pipeline is no longer a mystery. Every team follows the same flow: commit, build, test, deploy to staging, and eventually to production. No one is building from their laptop with different tools or configurations. The build environment is consistent. The testing steps are defined. The deployment process is documented.
But here is the catch: the pipeline stops at staging. Or it requires manual approval to proceed. Or it needs someone to run a script. The automation exists, but it is incomplete. Humans are still in the loop for critical steps.
The diagram below shows the typical pipeline flow at this level, with manual steps highlighted in red.
The Approval Bottleneck
One of the biggest slowdowns at this level is the approval process. Every change that wants to reach production needs a sign-off from a specific person or group. That approval might come through email, a chat message, or a quick meeting. But it rarely comes quickly.
The person who needs to approve might be in another meeting. They might be on leave. They might be busy with an incident. Or they might just not want to be the one responsible if something goes wrong. So the change sits in the pipeline, waiting. Hours turn into days. The pipeline itself is ready, but the process is not.
This is not a tool problem. You can have the best CI/CD platform in the world, but if every deployment requires a human to say "yes", you are still bottlenecked by human availability.
Manual Testing Still Exists
Another sign of the Standardized level is that not all testing is automated. Unit tests and integration tests might run in the pipeline. But for certain scenarios, QA still needs to log into the staging environment, run through test cases manually, and write a report.
This creates a cycle. A developer pushes a change. The automated tests pass. But QA has to manually verify the feature. If they find an issue, the change goes back to the developer. The developer fixes it, pushes again, and QA repeats the manual testing. Every iteration takes time.
The problem is not that manual testing is useless. Some things are hard to automate, especially complex user flows or edge cases. The problem is that manual testing is treated as a gate that must be cleared before every deployment, even for small changes. This slows down the entire delivery process.
Deployment Is Still a Manual Step
Even with a standardized pipeline, deployment to production often remains a manual action. The pipeline might build and test automatically, but when it comes to pushing to production, someone has to run a command or click a button in a dashboard.
Some organizations still follow a release schedule. They deploy once a week or once a month, even though the pipeline is ready to deploy at any time. The reason is often fear. Without full automation and confidence in the process, teams prefer to batch changes and deploy during a scheduled window when everyone is available to handle problems.
This is understandable, but it defeats the purpose of having a pipeline. The pipeline gives you the ability to deploy quickly, but the process prevents you from using that ability.
Documentation Exists, But Is It Useful?
At the Standardized level, documentation starts to appear. There might be a wiki page explaining how to deploy, how to rollback, or how to handle common errors. But this documentation is often out of date. Or it is incomplete. Or people simply prefer to ask a colleague rather than read it.
The problem is that documentation is treated as a separate artifact, not as part of the process. It is written once and then forgotten. When something changes, the documentation is not updated. When someone new joins the team, they have to learn from others instead of from the docs.
The Good Part: Consistency
Despite all these issues, the Standardized level is a significant improvement over the previous level. The biggest benefit is consistency. Because every team uses the same pipeline, the build and test results are reliable. If a build fails, it fails for everyone in the same way. There is no more "it works on my laptop" because every change goes through the same path.
This consistency makes debugging easier. When something goes wrong, teams know where to look. The pipeline logs are standardized. The environment configurations are the same. The testing steps are predictable. This reduces the time spent on troubleshooting and increases trust in the process.
The Bad Part: Still Slow
But the downside is clear: too much manual work slows everything down. Every manual step is a waiting point. Approval, manual testing, manual deployment, outdated documentation — all of these add time between writing code and delivering value to users.
Teams at this level often feel like they have made progress. They have a pipeline. They have consistency. But they also feel frustrated because delivery is still not fast. They know they can do better, but they are not sure how to get there.
A Practical Checklist for Level 2
If you are at this level, here are some things to check:
- Is every approval step necessary, or can some be automated based on test results?
- Which manual tests can be automated and added to the pipeline?
- Can deployment to production be triggered automatically if all tests pass?
- Is the documentation updated as part of the deployment process, not as a separate task?
- Are teams waiting for someone else before they can deploy?
These questions help identify the biggest bottlenecks. The goal is not to eliminate all manual work at once. It is to find the steps that cause the most delay and reduce them one by one.
The Next Step: Self-Service
The Standardized level is a bridge. Your organization has the right foundation. The pipeline exists. The process is consistent. But you are not using it to its full potential. The next step is to reduce manual work until teams can manage their own deployments without waiting for others.
That is the self-service level. Teams can deploy when they need to, with automated checks replacing manual gates. Approval becomes exception-based, not the default. Testing is automated as much as possible. Documentation is generated from the process, not written separately.
But before you can get there, you need to recognize that having a pipeline is not the same as having fast delivery. Standardization gives you consistency. The next step gives you speed.
Takeaway
A standardized pipeline is a good start, but it is not the finish line. If your team has a shared pipeline but still struggles with slow approvals, manual testing, and scheduled deployments, you are at Level 2. The pipeline is ready. The process is not. The work now is to remove the manual steps that keep your delivery slow.