I agree that consulting experience is valuable, but I don't think that it's right for all engineers. The biggest difference in my experience is nothing to do with engineering, but that you're spending a lot more time wearing hats other than engineering.
A business doesn't hire a consultant to write code -- they hire developers on contract to do that. They hire consultants to figure if/when/where/how to write the code, and to navigate their business politics/procedures/processes/compliance/etc. Heck, I've completed several consulting contracts where I didn't write a single line of code -- they ended up being 100% strategy, design, planning, etc.
To do consulting successfully, you have to be in a mindset about solving business problems, regardless of what the resulting work looks like. For someone who wants to solve engineering problems, they might be highly disappointed (or ill-prepared) with what a consulting job entails.
A business doesn't hire a consultant to write code -- they hire developers on contract to do that. They hire consultants to figure if/when/where/how to write the code, and to navigate their business politics/procedures/processes/compliance/etc. Heck, I've completed several consulting contracts where I didn't write a single line of code -- they ended up being 100% strategy, design, planning, etc.
To do consulting successfully, you have to be in a mindset about solving business problems, regardless of what the resulting work looks like. For someone who wants to solve engineering problems, they might be highly disappointed (or ill-prepared) with what a consulting job entails.