In a recent interview, I froze on a question about Go channels and goroutines — concepts I mastered years ago but hadn't touched hands-on in months. I've been living in the clouds of high-level architecture discussions, and my muscle memory for language specifics got rusty.
It was humbling. Missing one syntax detail doesn't erase a track record of shipping resilient systems, but it stung. Domain knowledge fades without practice, even for veterans.
The bigger picture
Here's the thing though — code is often the easiest part of building something valuable. What really moves the needle today, especially with AI doing more of the rote work, is clear communication with teammates and stakeholders, deep understanding of user pain so we solve the right problem, and ownership end to end — from commit to customer delight.
That doesn't excuse the rustiness. I've started setting aside weekly "mechanics time" to practice language fundamentals. But I'm also keeping perspective. Interviews test snapshots. Real projects test tenacity, empathy, and follow-through.
A stumble is only failure if the lesson is ignored. I'm shipping, learning, and moving on.