If you've ever tried to hire a software engineer, you've likely been flooded with resumes. About 99% of these describe the candidate's skill in Technologies X, Y, and Z, along with how many years they've worked. Candidates often explain how they helped businesses by using Technology X and fixing problems with Technology Y.
While this sounds impressive, most of these claims suggest that the candidates are mainly users of existing technologies rather than their creators. It's as if they're describing how they've mastered tools made by an advanced civilization, rather than building those tools themselves.
Of course, these candidates have some basic understanding of how the technology works. However, when asked deeper questions, many are surprised or even dismissive, arguing that such knowledge isn't needed for their job. This reaction raises an important question: what exactly are we looking for in a "software engineer"?