Now someone please let software companies know they need this as a separate, explicit role, instead of trying to make all their teams have only product engineers.<p>Product engineers are great at small companies that need people to take on multiple roles. As the company, teams, and codebase grows however, the complexity of the code increases and needs regular maintenance. This is where focusing on engineering is valuable as it prevents the codebase from becoming too fragile slowing things down and creating problems.