After years of refining my development environment, I've landed on a setup that maximizes productivity while minimizing friction. Here's a look at the tools, configurations, and habits that power my daily workflow as a cloud engineer.
Terminal Setup
The terminal is where I spend most of my time, so optimizing it pays huge dividends:
- iTerm2: Split panes, search, and instant replay are invaluable
- Oh My Zsh: Plugin ecosystem that adds autocompletions and aliases
- Starship prompt: Shows git branch, AWS profile, and Terraform workspace at a glance
- fzf: Fuzzy finder for command history and file navigation
Editor Configuration
VS Code remains my primary editor with these essential extensions:
- HashiCorp Terraform: Syntax highlighting, formatting, and validation
- AWS Toolkit: Direct Lambda invocation and CloudWatch log viewing
- GitLens: Inline blame and commit history exploration
- Error Lens: Inline error highlighting without hovering
- Thunder Client: API testing without leaving the editor
AWS CLI Aliases
Custom aliases speed up common operations:
# ~/.aws/cli/alias
[toplevel]
whoami = sts get-caller-identity
logs = logs tail --follow
cf-invalidate = cloudfront create-invalidation --distribution-id
Git Workflow
Consistent git practices keep projects organized:
- Conventional commits (feat:, fix:, docs:) for clear history
- Branch naming:
feature/add-blog-page,fix/cors-headers - Pre-commit hooks for linting and formatting
- Git aliases for common operations (
git co,git br,git st)
Task Management
I use Notion for project tracking with a simple Kanban board:
- Backlog: Ideas and future tasks
- This Week: Committed work for the current sprint
- In Progress: Maximum 2 items at a time
- Done: Completed work (archived weekly)
Focus Techniques
Tools alone don't create productivity—habits do:
- Time blocking: Deep work in morning, meetings in afternoon
- Pomodoro technique: 25-minute focused sessions with breaks
- Daily planning: 5 minutes each morning to identify top 3 priorities
- Weekly review: Reflect on what worked and what didn't
Documentation Habits
I maintain a personal knowledge base with:
- Runbooks for common procedures (deployment, debugging)
- Decision logs explaining why specific approaches were chosen
- Quick reference cards for AWS CLI commands and Terraform patterns
- Troubleshooting guides based on past issues
The Philosophy
The best productivity system is the one you actually use. I've tried complex setups with dozens of tools, but simplicity wins. Every tool in my stack earns its place by providing daily value, not theoretical benefits.
Start with defaults, add tools only when you feel pain, and regularly prune what you don't use. Your future self will thank you.