Problem vs Product Developers17 January 2017
We all know it, there are all types of developers in the world. Good ones and bad ones. Ones that work best during the night and ones that seem so much more productive than others. (By the way, they are not Rock Stars, they usually have flaws like many other perceived genius). There are also the ones that crack problems that mere humans seem to be unable to conquer.
The ones that I am always most impressed by are the product developers.
Great problem-solving developers are not great product developers.
All developers crack problems all day every day. This feature needs to do x, the UI needs to do y. We need to write the calculation engine to handle z. Problems are everyday work for the majority of developers.
Product developers take this to the next level. They consider their code and it’s impact within the product scope. “If I change this code here what is the impact?”. “How can I test all routes through this?”. “How can my tests ensure I have the correct logic?”. So far standard thinking for any good developer. In practice, many do not even have these thoughts. The product developer always goes further. They always write Clean Code and will refactor code that they see as unclean. They consider changes and dependency’s when added to the project to minimise technical debt. They question the UI and they feedback to the customer and question design choices. They are part of the design process and feedback loops. They are mindful of the impact of their approach and choices to the product.
They are the best developers to work with because they care. Solving the hardest problem in the world is to have amazing talent. Building a product that your customers love is to have empathy with you customers. They will not care what you cracked to build the product they are using. They will love that product and they will keep loving it.
These are the developers you want to hire to build your next product. These are the developers I want on my teams.