I feel like you're missing out on a ton of awesome features by not using a debugger? Step backs are super useful, inline/live commands save you from re-running the code to see a different value, you can change values on the fly.
And it's nice to say "think about your code more" but when you're working with large teams, on legacy codebases, you don't often have the opportunity to "think about your code" because you're trying to decipher what someone wrote 3 years ago and they don't even work with the company anymore.
I have indeed. We even practice pure TDD and won't accept PRs without test coverage, but it doesn't change the fact that sometimes bugs happen, and when they do it tends to be much more effective to work through the problem with a debugger than make guesses at what things need to be logged, or poked into or whatever.
If what you're doing works for you, more power to you, but in my opinion I'd never give up a tool in my toolset because it makes me far more productive than I'd be without it.