The Product-Minded Software Engineer
This advice might work at Uber or as a consultant but for FTEs it sounds like a great way to get fired. I consider myself a product-minded software engineer, but trying to be this person has been a sisyphean task pretty much anywhere I’ve worked. In fact I have come to view that impulse to challenge assumptions, to strive to do work I’m proud of, as an example of my naïveté as a junior developer. Executives are not too interested in quality software; they are interested in shipping whatever is in their head, whether it’s good for customers or not. In startups they are interested in shipping literally anything at all to meet insane growth targets so they don’t lose funding or get replaced by the board. IME the only time interest in the product actually helps engineers is during the initial interview where you need to demonstrate your interest in the company’s mission. The reality is that despite how brainy the job happens to be, employers do not pay developers to think; they pay us to do the geek stuff they don’t understand. They view us, if you will, as pure functions that take a set of orders as input and produce a functioning app as output—no side effects please. This is why we’re going to be replaced by AI as soon as it’s good enough, and are currently being replaced by no-code products: we are already robots to management.