I was asked to change my travel plans so that I would be available to work in Iowa this week on something that has been giving my colleagues there a lot of problems. I was happy to help them out and be home for a change.
Several times in the last few years, I have thought to myself that I was fortunate to develop a few skills that I have gotten an incredible amount of mileage out of. While I was taking care of a few things here this week, this thought came up again. If you are a new engineer, or a student in engineering, the following are sklls that have been very useful for me:
- Scripting Languages – I have done more programming than I care to. I never had a goal of becoming a programmer, but it just sort of happened. Scripting (Dynamic) languages such as Perl/Python/Ruby provide a means to develop/integrate things in a hurry. My preference is for Ruby. My advice would be to spend time learning regular expression syntax, and network programming.
- Basic Networking – You would think that everyone knows this stuff now, but it is not the case. My experience has been that nobody really needs someone capable of lecturing on the 7 layer OSI model, or on how DNS works. But, being able to understand the basic components of a network, and how they work together seems to be critical.
- Analog Circuit Analysis – I don’t know how many people would ever actually get an opportunity to do this. I was fortunate enough to go to a University (NIU) that still teaches circuit analysis and power electronics. I didn’t plan to get into this field, it just sort of happened, and this is probably the part of my job that I enjoy the most. There is most certainly, without a doubt, a huge shortage of people with this skill.
I am probably forgetting some things, and I should do a better job on writing this up sometime in the future, but I am in a hurry right now.