工程师需具备哪些能力