So with the start of the school year, many engineering students are selecting their specialties and others are considering career paths. Here is some advice
1) Follow your passion - Engineering school is hard. In my Bachelor program, I think I took only a handful of non-core engineering classes (including math, science, and other requirements). So when students ask me whether electrical, mechanical, computer or other specialty is "better", I tell them to follow their passion. Look at the list of courses and pick the engineering discipline where they find classes more interesting. With the workload as hard as it is, passion for the subject matter can make the difference in better understanding a problem or just wanting to spend more time studying and working on solutions.
2) Engineering is about Problem Solving - Ultimately, what you learn in engineering is how to define a problem, research options, understand capabilities and components, and implement (execute) solutions. Achieving this core skill, applied to as many different problem spaces that one can develop expertise on is ultimately what makes an engineering student capable and employable. Make sure to fully understand the mathematics and physics and invest effort in classes and with professors that force you to problem solve.
3) Develop a career path early - I remember first realizing that many jobs in robotics were in manufacturing and military applications - industries I wasn't passionate about. If I was interested in semiconductor design, much of this work was available in Texas, San Diego, Portland, and other cities where the big semiconductor companies opened fabs - less in New York, Boston, or San Francisco where I wanted to live. Engineering students have many options and choices to make about industry, specialties, and job functions, so its best to start learning about job and career options early.
4) Investigate Emerging Technologies - The investigation will, at minimal gives a better understanding of the newest, more challenging problems being solved in a field. More importantly, emerging technologies are often multidisciplinary, so recognizing a passion for nanotechnology requires one to go deeper to understand what specific types of problems are being solved in what engineering disciplines, and by whom.
5) Practice and Develop Communication Skills - If problem solving is the primary skill engineering students must attain, strong communication skills is a very close second. My best experience in my undergraduate program was to work in a physics lab one summer and an engineering lab the second summer. Both projects were successful and I was a coauthor in publishing the results. Also, I took on leadership roles at IEEE, and Eta Kappa Nu which forced me to develop presentation and organization skills. Developing communication skills can be intimidating for the undergraduate engineering student, but practice is the best way to break through the fear, develop a style, and make it a personal strength.