Many companies have a separate "Product Manager" role for that business, so that the brilliant engineers can brilliant SENIOR implementors. Have a dedicated professional worry about the customer impact, product requirements, etc., along with other non-programming tasks that many developers understandably prefer not to get bogged down in.