<p>**Good **computer science jobs are becoming like the NFL draft; you have a handful of companies that do wonderful things (the Googles and Microsofts of the world) and hire a bunch of people from the top brand name schools, and everyone else ends up in either established companies busy outsourcing everything but the kitchen sink or hungry and poor startups working off the founder’s credit card…</p>
<p>IT has already been outsourced for many years… There may be jobs with those with obscure skills but not for everyone. </p>
<p>Computer Engineering has some appeal mostly for embedded and defense type work, but not being ‘pure software’ or ‘pure hardware’ may present its own limitations since things are super specialized these days. </p>
<p>To follow up on dragonmom’s input, the trick is to identify early on what the kid is good at, at a young age, and show them what it involves and let them discover for themselves. That way the kids think they’re making the choice
or at least know what they’re getting into.</p>
<p>As a former Civil Engineer I know a thing or ten about Architecture, and worked hard to get my daughter to ‘see the light’. She loves art and the whole creative process; a few classes at the high school showed her what architectural drafting or house construction are all about (teenage girls and power tools are an interesting mix :-)). As a current Software Engineer (pfeh, coder) and Human Factors Engineer I would not wish my career (and it’s been a fun career so far, mostly consumer electronics software) on my kids.</p>