Interestingly enough, I just did this about three months ago. My company does product development specifically with embedded systems. A few years back we started a new division that has been growing pretty well. Originally, the head of the division served as engineering manager, product manager, business development coordinator, etc. We finally outgrew that mode and decided to hire on a full-time engineering manager. Since I run the software team, the person we hired would become my direct boss and I got to look through resumes, sit in on all of the interviews, etc.
One point I'd like to make is that this is generally a great thing. My work life has become a hundred times more enjoyable now that I have a boss whose sole job is managing our various engineering teams.
Coordination between hardware design, layout, software, manufacturing, and all of the other teams is paramount to being successful. Nothing sucks more than having a newly designed board land on my desk and finding out that I don't have enough time to validate it before we need to go to manufacturing. So for me, one of my big things was finding a boss that had experience managing this type of communication and scheduling. I was _really_ glad to here my future boss talk about the importance of staying in a beta cycle until everyone on the engineering team signed off on the design. Someone who understands that no matter how desperatly you want to release a product, if you ship with bugs or you ship too soon, you are just asking to eat up your development resources for the next year debugging units in the field instead of at your desk. This is ultimately more expensive for the company as well as a serious moral killer.
Another thing that I really value is the wall that my new boss erects between me and marketing, sales, etc. It's nice to be able to give an honest schedule estimate and not see the whince-face. So I had a ton of questions during the interview process about his ability to handle schedule pressure coming from above (marketing) and below (engineering). I knew that I wasn't interested in hearing any "we are hear to sell product, so what marketing wants, marketing gets" type speeches. Therefore, I was impressed with the thoughtful response given along the lines of; "marketing needs to drive product strategy, but engineering needs to drive product schedules."
Finally, I really wanted someone with experience in our field. I know people will say things like "projects are projects, doesn't matter what the industry a successful manager can handle anything." This may be true in some fields, but embedded development is tough. I needed someone who understands that I'm not dancing when I say that a given task should take about two weeks, but if the CPLD hasn't been verified yet, it might take six weeks instead. Someone who understands that when the scopes and logic analyzers start coming out, he better expect the schedule to start slipping as well. I can't tell you how many due dates I've blown by thinking I had a bug in my code only to find some sort of timing issue on a board, or a bug in the silicon. Yes, those of us who do embedded development often do find bugs in the silicon we work with. Especially when we start working with new processors.
Anyway, my advice is to look at this as a good thing. Then think about the parts of your job that are painful and concentrate your questions there. For me, those questions mainly centered around his or her ability to communicate scheduling and efforts between several different teams and prior experience in my field.
Annoyingly enough, I am forced by work to use a Windows XP machine. I do use Windows Update at least once per week. I also use a fire-wall, regularly check for opened ports, etc.
What sucks is, as soon as I saw this, I ran to Windows Update to get the patch. The only thing available for my computer was an Update for Windows Media Player 9!
So apparently, everyone in the world but Microsoft is aware of the vulnerabilty:(
Honestly, I'm not sure how even responsible users of Microsoft software can be certain that they are safe if patches aren't made available for them in a timely manner.
I would say that this statement is pretty much garbage as far as my experience goes. I work at an engineering company. We work with lots of other engineering companys, silicon vendors, Microsoft, some of the favorite Linux distributors, etc.. etc... You will not get in our door for an interview, without a degree in CS or another engineering firm. In fact, you won't get in the door unless you had (or have) a decent GPA!
Engineering (which includes programming) is a skill. No-one wants to hire a hack. If you want to program. You have to study it in school and work hard at it out of school.
I'm guessing that since your friend is complaining that he doesn't have any skills marketable outside of computers, maybe he isn't a happy programmer. That's too bad for him and he probably should have thought about that before he got the degree.
Actually, being an embedded systems engineer, I can't tell you how many labs I've seen with old programmers (eeprom programmers that is, not white-haired *nix guys:) that only take floppy disks. So I personally use floppy's all the time.
The New York Times has an interesting, not-too-technical article with information on Spintronics. Spintronics is the art and science of developing practical applications which take advantage of an electron's inherent property of spin. Some discussion of M-RAM is presented which would be a very important first step in the actual deployment of a quantum computer. As a side note, my crypto professor at the U always said that if quantum computers ever became a reality, all current encryption methods would quickly become quite useless. I was wondering if anyone has looked at developing encryption algorithms which could specifically take advantage of the possibilities of quantum computing and remain secure.
Interestingly enough, I just did this about three months ago. My company does product development specifically with embedded systems. A few years back we started a new division that has been growing pretty well. Originally, the head of the division served as engineering manager, product manager, business development coordinator, etc. We finally outgrew that mode and decided to hire on a full-time engineering manager. Since I run the software team, the person we hired would become my direct boss and I got to look through resumes, sit in on all of the interviews, etc.
One point I'd like to make is that this is generally a great thing. My work life has become a hundred times more enjoyable now that I have a boss whose sole job is managing our various engineering teams.
Coordination between hardware design, layout, software, manufacturing, and all of the other teams is paramount to being successful. Nothing sucks more than having a newly designed board land on my desk and finding out that I don't have enough time to validate it before we need to go to manufacturing. So for me, one of my big things was finding a boss that had experience managing this type of communication and scheduling. I was _really_ glad to here my future boss talk about the importance of staying in a beta cycle until everyone on the engineering team signed off on the design. Someone who understands that no matter how desperatly you want to release a product, if you ship with bugs or you ship too soon, you are just asking to eat up your development resources for the next year debugging units in the field instead of at your desk. This is ultimately more expensive for the company as well as a serious moral killer.
Another thing that I really value is the wall that my new boss erects between me and marketing, sales, etc. It's nice to be able to give an honest schedule estimate and not see the whince-face. So I had a ton of questions during the interview process about his ability to handle schedule pressure coming from above (marketing) and below (engineering). I knew that I wasn't interested in hearing any "we are hear to sell product, so what marketing wants, marketing gets" type speeches. Therefore, I was impressed with the thoughtful response given along the lines of; "marketing needs to drive product strategy, but engineering needs to drive product schedules."
Finally, I really wanted someone with experience in our field. I know people will say things like "projects are projects, doesn't matter what the industry a successful manager can handle anything." This may be true in some fields, but embedded development is tough. I needed someone who understands that I'm not dancing when I say that a given task should take about two weeks, but if the CPLD hasn't been verified yet, it might take six weeks instead. Someone who understands that when the scopes and logic analyzers start coming out, he better expect the schedule to start slipping as well. I can't tell you how many due dates I've blown by thinking I had a bug in my code only to find some sort of timing issue on a board, or a bug in the silicon. Yes, those of us who do embedded development often do find bugs in the silicon we work with. Especially when we start working with new processors.
Anyway, my advice is to look at this as a good thing. Then think about the parts of your job that are painful and concentrate your questions there. For me, those questions mainly centered around his or her ability to communicate scheduling and efforts between several different teams and prior experience in my field.
Best of Luck,
--Greazy
Annoyingly enough, I am forced by work to use a Windows XP machine. I do use Windows Update at least once per week. I also use a fire-wall, regularly check for opened ports, etc.
:(
What sucks is, as soon as I saw this, I ran to Windows Update to get the patch. The only thing available for my computer was an Update for Windows Media Player 9!
So apparently, everyone in the world but Microsoft is aware of the vulnerabilty
Honestly, I'm not sure how even responsible users of Microsoft software can be certain that they are safe if patches aren't made available for them in a timely manner.
In Soviet Russia, they would also have been fined, jailed, and sent to a state sponsered "pound me in the a**" gulug in Siberia. :P
I would say that this statement is pretty much garbage as far as my experience goes. I work at an engineering company. We work with lots of other engineering companys, silicon vendors, Microsoft, some of the favorite Linux distributors, etc.. etc... You will not get in our door for an interview, without a degree in CS or another engineering firm. In fact, you won't get in the door unless you had (or have) a decent GPA!
Engineering (which includes programming) is a skill. No-one wants to hire a hack. If you want to program. You have to study it in school and work hard at it out of school.
I'm guessing that since your friend is complaining that he doesn't have any skills marketable outside of computers, maybe he isn't a happy programmer. That's too bad for him and he probably should have thought about that before he got the degree.
Actually, being an embedded systems engineer, I can't tell you how many labs I've seen with old programmers (eeprom programmers that is, not white-haired *nix guys :) that only take floppy disks. So I personally use floppy's all the time.
The New York Times has an interesting, not-too-technical article with information on Spintronics. Spintronics is the art and science of developing practical applications which take advantage of an electron's inherent property of spin. Some discussion of M-RAM is presented which would be a very important first step in the actual deployment of a quantum computer. As a side note, my crypto professor at the U always said that if quantum computers ever became a reality, all current encryption methods would quickly become quite useless. I was wondering if anyone has looked at developing encryption algorithms which could specifically take advantage of the possibilities of quantum computing and remain secure.
I am the Yeti!!!