Enhancing Engineering Education with Computational Thinking