What the serious fuck?
You've described non-technical management there... presuming that you're allowing said non-technical management to tell you what you should be putting the effort into, and micromangaing your design.
If you don't have the soft skills to understand where and why the things you code fits in to the greater scheme of things, you're building grand castles in the air. Whoopdy-yay.
Maybe we're talking at cross purposes. I don't necessarily mean "become a great sales droid" or "learn to seduce investors". I mean learn how to talk to the people who do and understand where they're coming from, so you can see how your work fits in, and know what to do and how to do it.
Otherwise you'll never be valuable for anything other than small, well scoped tasks that someone else can spec out for you.