During a recent meeting with engineering-school faculty and alumni, we talked about whether their college should educate generalists or specialists. One of the graduates explained how his broad education let him solve a problem with fundamental information that bridged several specialties. One of the engineers with a deep knowledge in a narrow area countered that today many companies need engineers with specialized knowledge so they can "jump into" a problem right away without a "warm-up" period. I can see both sides of the generalist vs. specialist debate.
In electrical engineering, undergraduates often specialize a bit, perhaps taking more analog than digital electronics courses. But they receive a BS degree with a good understanding of many facets of electronics. In graduate school they can continue their education in narrower fields. Undergraduate engineering programs educate people about how to approach and solve problems, and how to think critically and examine problems from several perspectives.
The general knowledge instilled during four years of college also helps graduates evaluate a field and determine whether they want to continue in it. I know science and engineering graduates who have become surgeons, physicians, teachers, entrepreneurs, patent attorneys, and so on. The generalist approach served them well. This approach also lets people who aim for more education benefit from a variety of experiences in their discipline. So I would not recommend trying to push undergrad engineering students to become specialists in four years.
On the other hand, when companies and universities advertise job openings, they usually have a long list of specialized requirements. I found this example of job requirements on the Internet:
Minimum five years of embedded FPGA/ASIC design and/or verification experience;
Three-plus years of experience using System Verilog;
Strong working knowledge of OOP verification and verification environment;
Experience with OVM/UVM verification methodology;
Good verbal and written communication skills;
Self-starter who can work with minimal supervision in a team environment on site;
Experience with scripting languages (e.g. Perl, TCL).
Generalists need not apply. So here's my advice: Go ahead and specialize as you see fit either through an advanced degree or on-the-job training. But keep an eye on general knowledge in your chosen and related fields. If you want to specialize in motor control, for example, you should know how to write code in C, simulate control algorithms in MATLAB and Simulink, use LabVIEW, and so on. It also helps to know how to go to the shop and quickly machine a motor coupling you need to test a motor. You might become a specialist with a generalist's knowledge of many things, or a generalist with pockets of deep knowledge in a few areas. We have room for both types of engineers.
Readers, what do you think? Tell us in the comments section below.
I'm more from the specialist-turned-generalist school myself, but I can see it either way depending on the individual. Engineering in particular has eveloved so much over the last 25 years, that some degree of specialization is inevitable in order to be useful to employers. Fortunately most employers of any size offer opportunities to pursue those specializations that are most important to their business. Foundations in the basics is key, but a willingness to learn new disciplines and to stretch your mind is the formula for success. Now if colleges could only teach that.
It's interesting to see how many commenters have mentioned the value of a more general engineering education. I would have disagreed strongly with that shortly after I graduated, but after many years I now see the value in it. Specific knowledge is great to get a job straight out of school, but a greater breadth of knowledge is more valuable across a career.
Charles, I have always been grateful for a generalist engineering education, picking up specialties along the way. Completely agree that if you don't continue learning (generally or a specialty), you'll be out of work quickly.
Switched-capacitor filters have a few disadvantages. They exhibit greater sensitivity to noise than their op-amp-based filter siblings, and they have low-amplitude clock-signal artifacts -- clock feedthrough -- on their outputs.
For industrial control applications, or even a simple assembly line, that machine can go almost 24/7 without a break. But what happens when the task is a little more complex? That’s where the “smart” machine would come in. The smart machine is one that has some simple (or complex in some cases) processing capability to be able to adapt to changing conditions. Such machines are suited for a host of applications, including automotive, aerospace, defense, medical, computers and electronics, telecommunications, consumer goods, and so on. This discussion will examine what’s possible with smart machines, and what tradeoffs need to be made to implement such a solution.