2 answers
Govardhana’s Answer
Let me see if I can answer your question to some extent. This advise is not specific to electrical Mechanical.
A Good Engineer should obtain a strong technical knowledge on specific domain and put them by Practice (doing the same thing repeatedly) and experience (doing a range of different things).
Analyzing your work, and seeing what you need to do to improve it. In engineering, when things go wrong it is more important to understand the causes than to apportion blame. Don't get depressed or angry that you did not get the results - find out what was not good enough, and work out how to do it better next time.
Rickey’s Answer
To become a good engineer, you need to practice getting the repetitions of whatever area of engineering your doing. For example, if your a design engineer, you want to practice designing as much as possible until it becomes second nature.
Also, its important to have curiosity and good problem solving skills as engineers are a constantly solving problems each day.
Lastly, it's important to have good teamwork and communication skills because engineers work in teams and need to be able to talk to each other about things towards coming up with a solution to problems.