Log in from a computer to take this course

You'll need to log in from a computer to start Introduction to DevOps. But you can practice or keep up your coding streak with the Codecademy Go app. Download the app to get started.

apple storegoogle store
Learn

Although manual deployment isn’t always a bad thing, it can cause a lot of problems when trying to work on a large project with many developers. Let’s take a look at some common bottlenecks found within the deployment process.

For each of these bottlenecks, think about what issues can occur when scaled up to a large project. Select the dropdowns to see the answers.

Version Control Management

When Anita was working by herself, she used to create a branch and code a new feature. Merging wasn’t a concern since she was the only one working on the project. As a result, she typically waited until an entire feature was complete before merging into the main branch.

See the issue!

This can cause some problems on a large scale if developers are working on long-lived branches containing new features. Once the developers try to merge their code, it can cause a lot of merge conflicts and introduce new bugs.

Testing

Anita used to run tests when she felt it was necessary. She usually ran tests before merging a large feature branch or if she found a problem herself.

See the issue!

It is usually not enough to only run a test before merging a branch. Testing infrequently can lead to bugs being overlooked. Additionally, testing issues can compound once merge conflicts begin to occur between developers.

Infrastructure and Environments

Anita previously set up the servers and the environments herself. Before deploying her code on her staging or production server, she would configure the environment variables manually. A deployment would sometimes fail due to human error, but it wasn’t such a problem when she was working by herself. Now, the team relies on the servers working properly and can’t afford any simple mistakes.

See the issue!

Differences between various deployment environments can be tricky to manage. Setting up environments manually makes room for human errors that can cause the server to go down and delay production.

Instructions

Manually performing each part of the deployment pipeline can cause problems in a large project. How do you think these issues can be resolved?

See the answer!

Automation! By removing human involvement in tedious tasks, we can greatly speed up development and reduce bugs.


It is common for problems to appear when scaling up a project. In the next exercise, we’ll take a closer look at how automation can help scale up deployment processes and the benefits it brings to a project.

Take this course for free

Mini Info Outline Icon
By signing up for Codecademy, you agree to Codecademy's Terms of Service & Privacy Policy.

Or sign up using:

Already have an account?