I think you're onto something there. Starting out in software engineering can be a great way to enter the workforce, mainly because it allows you to join a team in a very high-value role. If you avoid jobs where you're a cog, and instead find a role where you help build a product with a team, you'll learn a lot - and again, because you can create the software, you'll have a pretty central role. There are plenty of good places to go from there.
The downside to this attrition is that software engineering (or development if you'd prefer to avoid a charged term) really does need experienced people who understand the long term impact of design, technical debt, what to pursue and what to abandon, mentor and develop new talent, and so forth.
The downside to this attrition is that software engineering (or development if you'd prefer to avoid a charged term) really does need experienced people who understand the long term impact of design, technical debt, what to pursue and what to abandon, mentor and develop new talent, and so forth.