机械工程师都需要哪些知识和技能