DEV Community

Michelle
Michelle

Posted on

Day 1 of My 30-Day Cloud & DevOps Challenge — Project Setup

Today marks the start of my 30-day Cloud & DevOps challenge, and I focused on laying a strong foundation for the project. Before diving into code, I wanted to ensure the structure, documentation, and workflow are clear—because a well-organized project makes everything else much easier.

What I Did Today

  • Created GitHub repository — the central place to track code, documentation, and collaboration.

  • Planned project architecture — decided on a three-part system:

    • Frontend — the user interface
    • Backend — API and business logic
    • Database — persistent data storage
  • Created basic folder structure:

  /frontend
  /backend
  /infra       # Terraform configs for cloud infrastructure
  /k8s         # Kubernetes manifests
  /ansible     # Configuration management playbooks
  /jenkins     # CI/CD pipeline scripts
  README.md
  ROADMAP.md
Enter fullscreen mode Exit fullscreen mode

Why this structure?

  • Separates concerns clearly: each component has its own space.
  • Makes scaling easier—if I add more microservices, the structure can accommodate them.
  • Keeps infrastructure and deployment configurations isolated from application code.
  • Documentation (README.md, ROADMAP.md) stays at the root for visibility.

    • Added initial documentation:
  • README.md — outlines project goal, architecture, tech stack, and future progress.

  • ROADMAP.md — a detailed 30-day plan that breaks down daily tasks and objectives.

    • Planned Git branching strategy:
  • Using conventional commit prefixes for clarity:

    • feat/ → new features
    • fix/ → bug fixes
    • docs/ → documentation updates
    • chore/ → general maintenance tasks
  • Workflow:

    • main branch — always stable
    • develop branch — integration of features before merging to main
    • Feature branches (feat/...) branch off develop and merge back via pull requests.

Why These Decisions Matter

Starting with a solid structure and clear workflow ensures:

  • Consistency across development
  • Easier collaboration if others join
  • Smooth CI/CD and deployment setup later
  • Traceability of changes through meaningful commits and branches

Next Steps

Tomorrow, I’ll begin building the backend API and setting up the database. The foundation is ready, now it’s time to code, containerize, and gradually bring the infrastructure to life.


Top comments (0)