At a particular level in one's journey as a software engineer you go beyond studying programming languages, you start dwelling on technologies and how they come together, when you see a project you're not thinking about which code to write, you're thinking about which technology to deploy.
Beyond this level you start thinking beyond the software, you perceive the demand for a product, it's not about code or technologies anymore, you realize the customer doesn't care, they want a solution to their problems and that solution is a product.
There are mental steps a software engineer has to climb, these steps differentiate between job titles like junior software engineer, principal software engineer and CTO. You have to do better than write code to grow into more than a software engineer, you need to see the bigger picture, the business side to things. When you can present yourself as someone who understands the technology as well as the customers you tend to grow.