A couple of years back, I ran a series of posts which tried to explain what it meant to achieve mastery in software engineering, including a tongue-in-cheek answer to the question of what it meant to work on hard problems. But looking back, none of these really answered the question of what kinds of hard […]