Reflection – Week 2
By Sakeena Sajid Week 2 of the DevOps Micro Internship completely changed how I think about working with AI. Going into it, I assumed Claude Code was just a smarter chatbot that lived in my terminal. By the end of the w
By Sakeena Sajid
Week 2 of the DevOps Micro Internship completely changed how I think about working with AI. Going into it, I assumed Claude Code was just a smarter chatbot that lived in my terminal. By the end of the week, I realized it's something closer to a configurable, extensible teammate — and that shift in understanding came from hands-on work with Skills, Subagents, MCP, and Memory.
The first big "aha" moment came with Skills. Building a .claude/skills/ folder and running /scaffold-terraform to generate a full Terraform setup from scratch felt different from just asking Claude a question — it felt like triggering a controlled, repeatable workflow. Seeing tf-plan's frontmatter restrict it to Bash, Read, Grep (explicitly no Write) made it click: skills aren't just prompts, they're permission boundaries. That's a very DevOps way of thinking about AI — least privilege, applied to an assistant instead of a server.
Subagents pushed that idea further. Comparing the cost-optimizer (running on Haiku, read-only) against the security-auditor (also read-only, but with a very different job) taught me that model choice and tool access aren't arbitrary — they're design decisions tied to risk and task complexity. The tf-writer agent using inherit instead of a fixed model made sense once I thought about it as flexibility for variable-complexity work, rather than a missing configuration.
Then came Memory, which was honestly the most "wow" part of the week. Teaching Claude a project rule, closing the session completely, reopening VS Code, and having it recall CSS gradient values, breakpoints, and a "no JavaScript" rule — without me repeating anything — made persistence feel real instead of theoretical.
The biggest challenge wasn't conceptual, it was environment setup: fixing a broken jq PATH in Git Bash, cleaning a 143MB Terraform provider binary out of my git history, and wrestling with slow pushes taught me more about Git internals than any tutorial could have.
One habit I'm taking forward: before pushing any commit, I'm going to run git status and actually read it — not just skim it — because every major mess-up this week traced back to not catching something there early enough.
Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.