We spend most of our lives finding our ikigai, or raison d'etre, our purpose of existence.
The lucky ones were able to find it early, while others are doomed in the life-long and sisyphean task of seeking it.
After a few months of learning to code, I have come to term with the realisation that coding is not my ikigai. I have enjoyed coding tremendously, and will continue coding and learning for a good long time.
But the more I learn, the more I am aware that programming is not my competitive advantage or edge, and that it is likely not my calling to be a programmer/engineer as a career. If I take this as a career, I likely won't end up in as the top 5% engineer even when I am at full potential. On the other hand, I feel my potential ceiling is a lot higher in other domains.
And I am completely fine with this. Going into this sabbatical, I decided to learn coding for two reasons: one, to challenge myself, and two, to get a deeper understanding of modern tech and development process. I have been able to complete projects I set out myself, and building stuff is no longer a scary unknown black-box process.
So for now, perhaps a good way for me to approach and structure my learning is not setting out to be the best programmer, being able to write great clean code, being able to solve algorithm challenge easily; but rather, someone who can understand and build things - whether through putting together packages, finding plugins, re-using other's components, reading through documentation/source code.
Prioritising learning to build, rather than learning to code.
My ikigai probably lies somewhere in building and growing team/company and digital product, making use of my multidisciplinary and diverse experience. And being able to understand and build things is a great addition to my repertoire.
But hey, who knows what life has in store for you?