Engineers are creative creatures who like to solve problems and build things. When you build something it becomes a part of you, no wonder that IKEA desk that took you 2 hours to assemble in an apartment has a lot of sentimental value than the Haverty desk you paid 3 times the price and just shipped it to home. Gardeners are also like that and the blackberries I grow in my backyard have a lot of sentimental value than the sweet ones I can buy from the store even though the home grown are sour 50% or more times .
Given a problem there can be many designs to solve it and sometimes we pick one design and worked tirelessly for days to add few new classes and a shining new framework and then send it for code review and someone outsider with a devil's advocate view comes up with a new simple design to solve the same problem or sometimes unconsciously you would come up with another simple solution to the same problem but you hold back and you keep investing time trying to make the original design work which seems like Sunk Cost fallacy. You even become defensive and vehemently oppose the review by your teammate. I have myself been a victim of this and am trying to improve on this. Remember if we create something we have to maintain it and six months down the line it may be you or someone else maintain it, its much easier to maintain a simple and elegant design than the complex ones.
In my career I have met very few engineers who can take an outsider perspective and throw away the code and start all over again without fussing and I have found a fresh respect for engineers who can do this as they are resilient and this resiliency will not only help at work but also in life because no matter what life throws at you, you can just brush off and always start fresh. Of course you have to be a pragmatic Engineer and if the project is already delayed and you need to ship then ship the complex design out but eat your ego and in next release refactor to the simple design.
Infact, Entrepreneurs have a similar concept of starting all over called as pivoting and Engineers who at some point in career want to transition to become Entrepreneurs can learn to be resilient early in the career.
"Sometimes the thing you think made you successful may be the very thing that is actually holding you back." I saw an episode on Chef's Table on Netflix where a Michelin star chef would every few years throw the perfected recipes and start fresh to create new recipes and in turn he became even more successful than before.
Comments
Post a Comment