<p>So…
How about that computer science compared to engineering…</p>
<p>Read between the lines. It’s easy to smoke an interview off prepared questions in CS, or have a killer resume of dubious accuracy and merit. It’s a lot harder to smoke and mirror an engineering degree, and while the demand is not as big as for CS, there is a bit less of a target area for outsourcing and offshoring.</p>
<p>Engineering tends to be more about foundation and basic knowledge, CS tends to be more about current skillset and ‘what have you done for me lately’.</p>
<p>
</p>
<p>Turbo…with all due respect, this sounds more like entitlement than anything. It kind of implies “I achieved a firm foundation and background and therefore I should be employed for life regardless of current trends.”</p>
<p>This is no different than some of the folks who feel that their degree from some top school should trump everything.</p>
<p>No entitlement mentality, believe me. I don’t recall EE’s interviewed to be asked questions from the footnotes of the user manual of their favorite scope (HP, not this Agilent stuff :)) while asking totally trivial questions is par for the course in CS interviews… </p>
<p>In Civil Engineering, stuff we learned 35 years ago holds true to this day and is par for the course; if I’m hiring a structural engineer I’m not going to ask her how to frame a particular problem in Matlab or what table to use in the DIN book (equivalent to our ASTM/ANSI usually) to look up how much rebar to put. Or in what screen of software package so and so you specify whether you use ribbed rebar or smooth rebar. CS grads, on the other hand, are routinely asked trivia questions that are all about the latest technology de jour, regardless of whether it can be learned in a week.</p>
<p>Once again, it looks like what you are seeing is more the result of being in a place with limited choice of employers, so your employer can get away with being Dilbert’s boss without losing all of its good employees to better employers.</p>
<p>
</p>
<p>That is because an employer (or team leader) needs to know if the applicant has the ability to at least research possible solutions and ramp up quickly. Just because someone knows the CS foundations of algorithms, data structures, programming languages and operating systems does NOT mean that they will be willing to dig through blogs, user groups, technical references and whitepaper to find a solution.</p>
<p>Civil engineering is much more mature than computer science as a field. For better or worse, the tech industry changes very quickly, and although someone versed in older stuff can get up to speed in a short amount of time, it’s easier to hire an equally good candidate that already knows your technology stack.</p>
<p>That being said, I completely agree with turbo in that nitty-gritty details of particular software packages should be largely unimportant for interviews. It would be great if employers just focused on foundational concepts. I’ve been fortunate in having most of my interviews be like this, but maybe it’s different when you are a new grad who isn’t expected to know as many buzzwords.</p>
<p>
</p>
<p>Perhaps an alternative reform would be to limit the number of H-1B visas that any given employer can get to 5-10% of the number of US-based US-citizen-or-permanent-resident employees in the H-1B job categories it has (let very small employers have up to 5 or 10 or so, even if it is more than the percentage). This should make it harder for the cheap outsourcing companies to hog most of the visas, freeing up more of them for the highly talented people that the H-1B visa program is meant for.</p>
<p>
</p>
<p>Why do you say this? I find it amazing that managers use picky buzzwords to filter candidates. I guess it’s because they can’t figure out how to ascertain whether someone has good problem solving skills, and can readily learn the picaune details about their 25th new technology. Assuming that a CS degree prepares one for a lifetime of learning and problem solving, then to think that people over 30 can’t do the work is nuts. And to support that approach with federal policy is triple nuts.</p>
<p>
</p>
<p>The key word in my previous post is WILLING.</p>
<p>What has happened with many over-30 (over-40) computer scientists and software engineers is that they feel that since they have that CS degree, they a) should be allowed to learn something new on the job while being paid for it and/or b) every position should be some team-leading role where one does not have to dig through whitepapers, blogs, user groups, etc.</p>
<p>The learning of new technology comes from official training (which you may have to pay for out of your pocket sometimes) or studying at home (tell wife to keep kids occupied while daddy is holed up in the home office.</p>
<p>Some older engineers do not feel like doing that BUT employers WANT those types who will find out solutions or at least know where to go get it. You just cannot “rest on your academic laurels” in the software engineering world. Yes, it may take time from the family and kids, but then again…then family and kids have to eat.</p>
<p>
</p>
<p>This is an age old trick of the H-1B game. You choose arcane or very task specific requirements in the requisite ad and then if anyone is dumb enough to actually respond you have a reason to ding them and choose the foreign candidate you’re sponsoring. It’s a real sham process.</p>
<p>My H-1 / LCA application listed PL/1 (the programming language that predates mammals) as a very important job requirement. The work did use PL/1 extensively, and I did have 4 years’ worth of PL/1 experience in school. The other job requirement was graphics and i had done lots of that as well. </p>
<p>In practice, LakeClouds is right. The key is to hire someone as F-1 OPT, train them for a year, then apply for H-1 using abovementioned skills learned during F-1…</p>
<p>
</p>
<p>What is likely part of the issue is that it is traditional for pay (in all kinds of jobs) to be associated with seniority.</p>
<p>However, in CS type of jobs, productivity can vary by an order of magnitude between different people, and probably rises to a person’s maximum relatively early in his/her career, but remaining fairly constant thereafter, although societally expected pay level continues to rise. The higher productivity people are probably a bargain at any stage of their careers, but the average or lower productivity people get priced out of the market as they become more senior and the traditionally expected pay level for their seniority becomes higher than what employers see them as being worth (and even if they are personally willing to take lower pay, the employers may not expect them to be willing to do so, or willing to stay for very long at lower pay).</p>
<p>
</p>
<p>I don’t know how realistic it is to stereotype people according to their age.</p>
<p>That said, I’m in my 50s and don’t bother keeping on top of the latest technology like I did when I was in my 20s and 30s. I make less money than I used to, but that’s OK, because I make enough, and I get to read books that I want to read.I no longer force myself to read dry books on the latest frameworks or operating systems that I may never even use.</p>
<p>I worked on too many projects that failed because the hot, new technologies used were too bleeding-edge. I got tired of it.</p>
<p>My career has been built on bleeding edge technologies, for better or worse. My list of dead projects would make a cemetery look alive by comparison. But hey, it keeps us young and restless…</p>
<p>The bane of my career is complicated software packages developed in Europe by people who believe documentation is optional… Or, working on near dead technologies with Microsoft, QNX, and others. </p>
<p>I have a closet full of hardware we showed at the Las Vegas CES, many of them dead-ware. Nothing to it. Like the vacuum salesman who moves on to the next house, you stick the dead tech manuals in the dead tech manual closet and move on.</p>
<p>Now, who deprecated strcpy and forgot to tell me?</p>
<p>Apparently software engineering is the fashion business, except with computers.</p>
<h1>116 giant thumbs up…</h1>
<p>Including the requisite cool fashionista technology names (“Ruby on Rails etc”)</p>
<p>
</p>
<p>The French in particular make terrible software systems. They’re not well debugged and of course all the error messages are in French. And then there’s SAP…</p>
<p>
</p>
<p>what about SAP?</p>
<p>
</p>
<p>Overly complex, time consuming and expensive to install. Not user friendly or intuitive. Other than that, it’s great.</p>