Thinking like an engineer