Intrigued by the art of cloud architecture? Discover how to design, develop, and manage robust, secure, scalable, and dynamic solutions on Google Cloud as you prepare for the Professional Cloud Architect exam!
The software development lifecycle (SDLC) defines the stages a project moves through from idea to production and beyond. In a GCP environment, each stage uses specific tools and practices. During the planning phase, teams define requirements and design the architecture, often using Cloud Source Repositories to store design documents alongside code. The coding phase happens in version control, where developers commit changes to branches and review each other’s work. The build phase compiles code and packages it into deployable artifacts, and GCP’s Cloud Build automates this step. The test phase runs automated checks against the build, and the release phase promotes the artifact through environments such as development, staging, and production. The deploy phase pushes the artifact to the target infrastructure, and the operate phase monitors the running application using Cloud Monitoring and Cloud Logging. Finally, the monitor phase feeds observations back into planning, closing the loop. Defining clear handoffs between these phases ensures that every change is traceable and that no step is skipped.
Continuous integration (CI) and continuous deployment (CD) automate the steps between committing code and delivering it to users. In a CI pipeline, every code change triggers a build and runs a suite of automated tests inside Cloud Build. If the tests pass, the pipeline produces a validated artifact and stores it in Artifact Registry. The CD pipeline then takes that artifact and deploys it to one or more environments using Cloud Deploy. Teams can choose deployment strategies such as blue/green (running two identical environments and switching traffic) or canary (gradually rolling out the change to a small subset of users). The pipeline also includes approval gates, so a human can review a staging deployment before it reaches production. By automating these steps, the team reduces the risk of manual errors and shortens the time between writing code and delivering value.
When an incident occurs, a structured approach helps find the true cause instead of just fixing symptoms. The first step is to identify the problem using alerts from Cloud Monitoring and error reports from Cloud Error Reporting. Next, the team isolates the affected component by examining logs in Cloud Logging and traces in Cloud Trace to see the request path. Once the likely source is found, the team analyzes the data to determine the root cause—for example, a misconfigured firewall rule, a code bug, or a resource exhaustion. After the root cause is understood, the team fixes it, often by rolling back a change or applying a hotfix. Finally, the team verifies that the fix works and monitors the system to confirm the issue does not recur. A post-mortem document captures what happened, why, and what process changes can prevent a repeat. This systematic process turns every incident into a learning opportunity that strengthens the system over time.
Testing ensures that both the application code and the underlying infrastructure behave as expected. For software, teams write unit tests that check individual functions, integration tests that verify how components interact, and system tests that validate the entire application. Cloud Build can run these tests automatically on every commit, and Cloud Test Lab helps test mobile apps on real devices. For infrastructure, teams use Cloud Deployment Manager or Terraform to define resources as code, then validate the configuration by running syntax checks and dry runs before applying changes. Infrastructure tests can also verify that firewall rules allow only the intended traffic, that IAM policies grant the correct permissions, and that backup schedules are in place. By testing both software and infrastructure together in a staging environment that mirrors production, the team catches problems before they affect users.
A service catalog is a curated list of approved cloud resources and configurations that teams can request and provision on demand. In GCP, this catalog might include pre-approved virtual machine images, database sizes, network templates, and IAM roles. Provisioning is automated using tools like Cloud Deployment Manager, Terraform, or Config Connector, which create resources from templates stored in version control. When a developer needs a new environment, they submit a request through a self-service portal, and the provisioning system deploys the resources according to the catalog’s policies. The catalog enforces governance by restricting which services are available, setting default quotas, and tagging resources for cost tracking. This approach reduces manual work, ensures consistency, and makes it easier to audit what is running in the project.
Disaster recovery (DR) plans ensure that a system can recover from a major failure, such as a regional outage or data corruption. The plan defines two key metrics: the recovery point objective (RPO), which is the maximum age of data the team can afford to lose, and the recovery time objective (RTO), which is the maximum time to restore service. In GCP, teams achieve DR by replicating data across regions. For example, Cloud SQL supports cross-region replicas, Cloud Storage can use dual-region or multi-region buckets, and Compute Engine snapshots can be copied to another region. The compute tier can be pre-provisioned with managed instance groups in a secondary region, or the team can use Cloud Run or GKE to deploy containers that fail over automatically. The DR plan must be tested regularly through drills that simulate a failure and measure whether the RPO and RTO are met. A well-documented runbook with step-by-step procedures ensures that any team member can execute the plan under pressure.
Prepare and test your skills
Prepare and test your skills
Recovery point objective (RPO) is the maximum age of data that a team can afford to lose, whereas recovery time objective (RTO) is the maximum time allowed to restore service. Teams measure whether these two metrics are met by regularly testing their disaster recovery plan with drills that simulate a failure.
Blue/green deployments run two identical environments and switch traffic between them, whereas canary deployments gradually roll out a change to a small subset of users. Both strategies can be executed using Cloud Deploy to release validated artifacts from Artifact Registry to target environments.
A service catalog enforces governance by restricting which services are available, establishing default quotas, and tagging resources for cost tracking. It automates deployment using templates stored in version control through tools like Cloud Deployment Manager, Terraform, or Config Connector.