Useful Commands When Working with Bicep in Azure

Here are some useful commands when working with Bicep in Azure. Here I mostly focus on commands for when things go wrong or you need to troubleshoot deployments.

Working with subscription deployments

# List all subscription deployments
az deployment sub list

# Show only the names of subscription deployments
az deployment sub list --query "[].name" -o tsv

# Show details of a specific subscription deployment
az deployment sub show --name <deployment-name>

# Delete a specific subscription deployment
az deployment sub delete --name <deployment-name>

# Delete all subscription deployments using PowerShell
az deployment sub list | ConvertFrom-Json | ForEach-Object {az deployment sub delete --name $_.name}

# Delete all subscription deployments using bash
az deployment sub list --query "[].name" -o tsv | xargs -I{} az deployment sub delete --name {}

That takes care of subscription deployments. Likely you will have resource group deployments as well. Next, let’s look at resource group deployments.

Continue Reading

The State of AI-Assisted Software Development in 2025: Key Insights from DORA's Latest Research

This is a summary of DORA’s 2025 State of AI-Assisted Software Development report, highlighting key findings and practical advice for technology leaders navigating the AI transformation. It is based on survey data from nearly 5,000 technology professionals worldwide. This blog post provides an overview of the main insights, including the role of AI as an amplifier, the benefits and challenges of AI adoption, the DORA AI Capabilities Model, team profiles, and actionable recommendations for leaders.

Continue Reading

Steering Engineering Teams Through Shifts Without Losing Momentum

If there’s one thing you can count on in engineering, it’s that nothing stays the same for long. New tools, shifting priorities, acquisitions, reorganizations. Change is part of the job description. But as someone who has guided multiple teams through these transitions, I’ve seen firsthand how the way leaders handle these moments can either accelerate progress or derail it completely.

Continue Reading

The Recruiting Experience Starts at the Application

One of the responsibilities I take very seriously is hiring talent. While I’m not part of HR, I do care deeply about the recruiting experience. For most candidates, their first real interaction with your company isn’t a conversation with a recruiter or a hiring manager—it’s the application process itself. That means the recruiting experience doesn’t start with the interview, it starts the moment someone clicks Apply.

Continue Reading

Hiring Beyond Your Expertise: A Director's Guide to Building Teams in Unfamiliar Territory

After fifteen years leading engineering teams, I’ve learned that the most challenging and arguably most important hiring decisions happen when you need to build capabilities in areas where you lack deep technical expertise. Whether it’s expanding into machine learning, blockchain, mobile development, or emerging frameworks, every engineering leader eventually faces this challenge.

Continue Reading