I've been trying to identify the most effective trait for those building a career in software development.
If I were to give you one single recommendation, what would that be?
I think I figured it out. ↓
Here is a problem I see every day:
Most people start their careers solving the same boring exercises.
This is good in certain ways, but it also limits your experience to what everyone else is doing.
The key to getting out of this trap?
*Curiosity*
If there's a single trait that has helped me make continuous progress over the last two decades in building software, it has been a relentless curiosity.
And contrary to what many believe, you can learn to be curious.
This is what I do.
As I make my way through anything new, there's a question I try to ask as frequently as possible:
• "What if..."
As I'm learning, many of my "what if..." questions are stupid, but the answers help me gain a different, well-rounded perspective on the topic.
Asking leads me to places that I wouldn't have discovered otherwise.
Thanks to this:
• I learn a ton of new things
• I find non-obvious solutions
• I quickly find 1,000 things that don't work
How can you apply the same?
• Never settle with what's in front of you.
Every new thing you learn is a new door to something else. It's up to you to open that door and follow that path.
Staying curious means asking questions over and over again.
Something to keep in mind:
I try to stay curious while I'm exploring. I resort back to a more pragmatic approach when it's time to produce value.
This is a good example of the Exploration vs. Exploitation tradeoff.
Here is the mental model I use:
• Learning → Exploration of what I don't know.
• Working → Exploitation of what I already know.
My curiosity helps a lot while I'm learning, making the working part much more efficient.
I post threads like this every Tuesday and Friday.
Follow me @svpino for a good bunch of practical tips and epic stories about my experience in the industry.
• • •
Missing some Tweet in this thread? You can try to
force a refresh