I studied engineering, not English. I still can't find a job
washingtonpost.com
washingtonpost.com
Maybe it's a crazy idea, but universities are not, and were never intended to be, career training centers. Helping you get a job is just not the mission of these institutions. And it's just as well; it would be highly unfortunate for the academic field of computer science if the undergraduate curriculum focused on how to use current tools like Eclipse or Ruby on Rails or Angular.js. Universities are designed to give you a firm grounding in the fundamental concepts, which should give you the ability to understand whatever tools are in fashion in the industry with relative ease. Besides, if you're not doing any hacking in your free time outside of class anyway, you're probably not cut out for this career.
Anecdotally, I'd say that of my CS class maybe only 5% did any serious programming work outside of class.
(I've rarely programmed outside of class/work since college. I've never had a problem getting a job. I just don't like sitting in front of a computer all the time.)
I realize it is a popular idea among society - that college is a career training center - but that is patently false.
It is an unfortunate idea too, because it leads to lots of people wasting thousands of dollars on an education they won't ever use in their career just for the sake of having the piece of paper they get at the end.
> Besides, if you're not doing any hacking in your free time outside of class anyway, you're probably not cut out for this career.
Bingo.
Now companies face an apprentice-shortage and they started actively recruiting university drop-outs to fill the ranks. At least it's not an expensive experiment for those kids, given that tuition costs max out at about 1000 EUR/year.
Having a degree means that you have a degree. Sadly, it absolutely does not mean that you have any particular level of education. Trust, but verify: I believe that a job candidate has 10 years experience and a master's in comp sci, but I'm still going to make them code FizzBuzz before we move on with the rest of the interview.
The professional vocational degrees like engineering, medicine and law are intended exactly for career training. They are usually certified by practitioner guilds, for example.
You are quite right about computer science, but that is not a vocational professional program.
The OP studied engineering.
(edit: reading down a bit, someone spotted that OP studied Management Information Systems, which may or may not be engineering as generally understood.)
Medical school is absolutely not career training. It simply gives you the knowledge and vocabulary so that you can be trained to be doctor. The additional training, of course, happens in your residency.
You are utterly unprepared to truly be a physician when you graduate medical school, even if you have earned the right to be called 'doctor.'
Maybe it's a crazy idea, but they are equally not intended to be places where you go and learn nothing of value to anybody.
I mean, I get the whole academic focus thing too, but the described education wasn't focused on academic computer science either. It was simply useless.
Moreover, the idea that academics can be so strictly partitioned from practice is a rather silly one as well, at least in the computer science world. A program that claimed to be turning out really good computer scientists that, mysteriously, are incapable of actually driving a computer to do anything useful to anybody (academic or industry), would not be one that I would be paying much attention to. Even computer science academics are, on occasion, expected to be able to write an actual program every once in a while.
And I certainly won't believe anyone who claims to be really experienced at, say, using multithreaded programming, because they sat through a couple of classes and did a couple of homework assignments that didn't involve coding anything. It's really easy to think you know something, until you actually try to do it, and end up spending 15 hours debugging a terrible race condition. Which turns out to be something really, really simple in the end, and the real problem was that your "academic" knowledge still needed to be hardened with real-world experience.
And I'd observe that fully connects back to academia... it's the people who have actually tried things and used things and have some sort of real experience who will be pushing the boundaries forward, not some sort of semi-mystical "pure academics".
Instead, I just got a job by showing off said practical projects with no degree.
No, I'm not.
I'm saying you can't function as a computer scientist with 0 programming, and trying to train Computer Scientists in general while somehow shielding or protecting them from programming is something I'd look at very disfavorably. Even computer scientists need to program once in a while. A Computer Science program is doing a disservice to its "Computer Scientists" if it somehow manages to fail to teach them anything about programming.
And to be honest, I find it utterly, mindblowing absurd that anybody could take the alternative seriously. Think about it a bit.
In fact I'd go so far as to say that one of the several major problems facing the University system as a whole right now is this whole idea that theoreticians across all disciplines can somehow be fully severed from all practical considerations, as a result of too many people mindlessly chanting that Universities aren't vocational programs. A theoretician operating without any input from the practical world is a theoretician wasting his or her time, producing theories that will ultimately not even be of academic interest.
(There are very, very specific disciplines in computer science that might be able to get away with 0 programming, BUT the generic undergrad courses would not be able to be that focused. The generic undergrad courses need to be teaching some useful programming stuff.)
"Most colleges offer a more practically oriented degree."
You might want to check that. "Software engineering" or something is actually fairly rare as a distinct major, and while there will often be an "information systems" major of some sort (which it sounds like is what this guy actually took), that isn't so much "more practical" as "a reduced version" of the courses, often reduced to the point that you won't learn "programming" at all.
You are correct. I should have said "Most colleges I considered when starting my degree".
Look, we might have to agree to disagree. What I think, and what the one Computer Science Department Head I spoke to thought, is that Computer Science is math. Period. Just like a degree in Math, it does not have to have a directly practical application to serve a purpose. The fact that we have machines that run these theories is purely a sideline to the theories themselves.
"A theoretician operating without any input from the practical world is a theoretician wasting his or her time, producing theories that will ultimately not even be of academic interest."
I'm sorry, but many many theories that have become helpful for practical purposes were created by someone 100s of years before who didn't have any "practical consideratinos". Just because something isn't useful NOW or even in our lifetime, doesn't mean it isn't useful.
Quite frankly, I think programming (distinct from computer science) should go back to an apprenticeship based program if we can make that sustainable, and computer science (as in the degree program) should be kept where it is: Mostly theorectical with a minor side of practicality occasionally.
Sure programmers sometimes need to understand Computer Science theory, but most of what the average programmer needs to know about it does not require a degree but simply reading a book or three.
My anecdotal experience seems to match jerf's: I can't think of any undergraduate computer science program that appeared to favor math over at least moderately practical topics. But I've also not seen any undergraduate computer science program that appeared to be job training.
A local community college offers an associate's degree in "computer programming", and their graduates strike me as more obviously employable in the real world than area university computer science graduates. They learn skills that are known to be desired by major area employers, and the program seems to carry more of a "this is all about getting a job" sort of attitude.
I'm not sure you got my point entirely. If you've got a machine sitting there than can help you, you should use it.
If you're going to write about operating systems, you're an academic fool if you don't also actually take some time to gain some real experience on the very-cheap systems that can help validate that you actually do understand what you're learning about.
If you're going to do AI, you're an academic fool if you don't take the time to implement some of your theories and see how they actually perform. Who cares what someone hypothesizes may work in the field of computer vision if they have no implementation?
And so on and so forth. Even if it is just math, you are an idiot if you pass up the opportunity to implement something to verify your theories.
And the result will be courses, especially at the undergraduate level, that turn out to be useful both for academics, and for programmers who want to learn how to write theoretically grounded code. Which, remarkably, is exactly what we actually have.
You are not benefiting by trying to split academics off from practice. It's a stupid idea and a stupid ideal. It isn't a win for anybody.
That being said, as already stated, you shouldn't be going into these types of programs if your end goal is to get a job in the industry.
I'm not saying that CSE degree programs shouldn't teach you how to write code or require you to write code. I'm just saying that they are not vocational training and therefore should not focus on training students to use whatever specific tools are popular in industry.
Contrast that with community college certificate programs where they offer courses like "C# Programming in Visual Studio" and "iOS Application Development." Those programs' mission is to get you a job, and they also cost much less time and money than a bachelor degree.
I really dislike this mentality and it unfortunately seems to be the expressed by a lot of engineers (at least ones that have an internet presence). Just because you don't spend all of your time hacking away doesn't mean you aren't cut out for this career nor does it mean you can't be a great engineer. This kind of mindset is only going to deter potentially good engineers from entering into the field.
I'm certainly sympathetic to the idea that if you want to be a developer, it's helpful for programming to be an area of passion. But it's not at all obvious to me why that passion must be expressed in a certain way.
I really like math and computer science, and once I finish grad school, the plan is to have a job in applied math or statistics. Maybe even software. But in college, I didn't spend my free time programming, nor doing regressions just for kicks. In four years of university I did one personal project and two hackathons...total time invested, maybe 3 weekends? But let us not assume this means I'm not passionate about CS and math: I was a double major, I was a teaching assistant for 8 courses, I worked through the school as a private tutor for struggling students, I did research with professors, I published...and on my own time, I relaxed.
Yes. Yes, I can absolutely imagine judging someone in a partially-artistic field on whether they enjoy making art on their own time. That doesn't apply in every field, sure, and I bet chip designers don't generally go home and make little 8088 clones for fun. But programming is still as much of a craft as an engineering discipline, and I'm suspicious of people who claim aspirations in the field without demonstrating that they actually enjoy it.
In interviews, I ask what projects a candidate has written on their own time. It doesn't have to be on GitHub. It doesn't have to be big. It doesn't have to be generally useful. One of the best responses I got was from a guy who'd been developing his own duck hunting journal for the last decade to track location, weather, etc. I'm not surprised to see that he's the lead engineer at his company now.
This is particularly true of developers: generally speaking, someone who has the technical ability to be a strong developer could make a good living in finance, accounting, consulting, etc. The very fact that they're applying for a software job rather than something else is a powerful signal that they'd rather spend half their waking hours on software than on something else.
...or am I missing something obvious? - wouldn't be the first time.
But back to the career professional context. I think maybe I've identified the disconnect. Could it be that asking about personal projects is a way of identifying not just a competent developer but an actual geek? Those are different roles with different requirements. For example, you probably don't want to unleash a geek on your legacy business logic maintenance project. They'll probably be bored and end up breaking stuff in the name of optimization or cleanup. Similarly, you don't want "just" a programmer in your R&D team where you genuinely want and need creative innovation.
So maybe both sides are correct: for some jobs, it's completely appropriate to expect personal projects. For others, it shouldn't be expected at all. What do you think?
You should be pursuing a degree because it's a thorough & facilitated process of learning what you would be learning on your own anyway. You should be there because it's the fastest, most efficient way to get to the head of the pack of people who do have a tenacious passion for X and do spend a significant part of their free time on X. Every minute you're not doing something in X, you're not improving therein.
You think you're going to have a great career in X just by showing up for class and doing what's assigned? you think that will make for a good practitioner of X compared to others who live-and-breath the subject?
That you don't spend all your time on X doesn't mean you aren't cut out for this career and can't be great. The lead comment was "if you're not doing any X in your free time", not "if you're not spending all your free time on X". Don't wantonly construe the former as the latter.
But fact is, if you're not going above and beyond, you won't get above and beyond.
Very true. If you want job training, go to a technical/vocational school, or enroll in a certification program. Those are both perfectly legitimate things to do, and there should be no shame in either.
However, if you go back to the medieval roots of the universities, you find the Parisian model, which prepared one to be a cleric or a teacher of the same, and the Bologna model, where you learned law. Think of the account of the founding of Harvard: "One of the next things we longed for, and looked after was to advance Learning and perpetuate it to Posterity; dreading to leave an illiterate Ministery to the Churches, when our present Ministers shall lie in the Dust".
When treated as an objective rather than a place to learn, college becomes something to get "through" rather than some place to develop life skills.
One of the things that continually frustrates me about people's attitudes toward higher education (at least in the U.S.) is that they don't recognize this fact. An undergraduate university education should give you a general competence, self-motivation, and curiosity. More particular skills can be learned elsewhere; if you spend your time in college learning Java instead of learning to be a well-rounded, thinking, educated person, you're making an expensive mistake. Particular skills go stale quickly, and, unlike other subjects you could study instead, they often lack intrinsic interest.
Companies used to hire people with general competence and then train them in the particular skills they need on the job. I'm not sure why people now seem to expect students to learn these skills at universities, at their own expense. It seems to me that the burden of this training should be on industry, not on universities and their graduates.
>According to Alan Morrison of PwC, "The new analytics is the art and science of turning the invisible into to visible...It's about detecting opportunities and threats you hadn't anticipated, or finding people you didn't know existed who could be your next customers. It's about learning what's really important, rather than what you thought was important. It's about identifying, committing, and following through on what your enterprise must change most."
Had the author wanted us to actually feel bad for them, maybe they should've linked a github.
Although to be honest, the only place it says "engineering" is in the headline, which editors often mess with.
The only applications I learned in CS/EE school were POSIX, the Microchip assembler IDE, and EAGLE. For every other one, I was on my own.
http://www.washingtonpost.com/blogs/wonkblog/wp/2014/08/26/t...
And they wonder why linkedin isn't taken seriously anymore.
I never understanding these complains about how bad college education is. We talking about America here, the land of individualism, of self-interest, of self-discovery. It seems like everyone expects 5-year-old kids to pace their studies. Yet, funnily, if it's college, the professors have to decide what the students need for "real world." What gives? So elementary pupils know what they need to learn, but college students (aka 18+) do not?
On a closely related note: half of all technology workers have no formal education, the article said. Wait, if those workers can learn by themselves, can't our precious, innocent, poorly taught college students get off their behinds and study those, too? Rather than whining about how their professors are not familiar with, you know, "real-world" experience, why not focus on what they are familiar with? Can you go out to a real world and expect those to know the greatest and latest algorithms and languages and formal definitions, their pros and cons and applications? Or how, says, Windows applications and AJAX applications are similar and different. Or a thousands of those long-term researches that businesses just can't afford to do. No. That's why we need professors and researchers.
Geez. Get a job, will ya?
Or an alternative model, going back to 1916, is MIT's Practice school[2], where graduate students go into factories and apply their training on specific projects.
This reads largely like someone who is ignorant of the opportunities that were probably present at Penn State, assuming that a degree would just get him a job.
[1] http://www.northeastern.edu/coop/ [2] http://web.mit.edu/cheme/academics/practice/
What the hell was this guy expecting? "Hey, guys! I just graduated! Let the money river flow!"?
Edit: I met a former student on the London Underground some years later who wasn't much good at anything in school besides cracking onto his female colleagues, but got serious after that and ended up scoring a decent programming job in finance. Academic performance might not be such a good predictor of later success.
In the UK at least once you get into the 2nd/3rd year of the degree you get to select a larger number of the modules that you study. So it's possible to choose modules with lower programming content which might be focused on theory or on business type subjects.
Most universities here offer a sister degree to CS which is focused on business computing/project management and has substantially less programming.
I got a job working telephone tech support for a networking company, hardly worth my time. Nearly two years later i got a job as a data analyst through a friend of a friend, working in SQL server and writing VB6 apps.
I should have spent some time researching and contacting companies while I was a junior and senior in college. I figured, like the OP, champagne would rain down from the heavens when I left school. It did not.
But there is hope. Keep plodding forward. What I learned in college has helped me through the years and it does still look good on the resume.
I feel like the Washington Post ought to be embarrassed to have printed this.
The comments there pointed out another article by the same author last year, explaining how he turned down multiple jobs to start his own web design company: http://www.pennlive.com/opinion/2013/09/heres_why_why_more_a...
Come on HN, you guys missed this cherry? I do like that you dug through the 22 year old's Linkedin profile to get his real degree, but yall missed a pretty big logical flaw there.
That said, there is a lot to analyze about the poor kid. First, he thinks that spending a year unemployed is abnormal. Granted the guy was in State College for a long time, and that is a pocket universe filled with football, cheap beer and cheaper dates. He's been sheltered with the Penn State pride and now is finally realizing that you gotta kiss a lot more ass than what he is used to in order to make it through an interview.
Second, he's at least misleading readers to his actual degree (as yall sought out online) and he thinks thats ok to do on a national level. A simple google search is going to ruin this guy. But as a voting, draft-eligible citizen, he's allowed to pave his own path.
Third, he's naive at best, ignorant at worst. Honestly, he seems harmless, and that is not going to cut it for the guy now that he dug this grave. He's got to get some beating in here before he realizes that he is the only one that will straighten his own back.
Best wishes to the poor guy. As John Wayne said: Life is hard, but its a lot harder when you're stupid.
I've done a lot of hiring over the years and recently in NYC. I can say in general I've always hired for Attitude and Aptitude. I can teach you anything if you have the right Attitude. I can't teach you to have a good Attitude and I can't make you have a better Aptitude.
One very real challenge in NYC is that big players are soaking up most of tech talent and there is a ground war between financial technology companies and other start-ups. That pressure has caused companies to go back to the drawing board on how they qualify candidates. For a while recruiters wouldn’t even look at a person without seeing some lofty education background in a resume. Now they’re looking for the scrappy problem solver that might be savvy based on their recent work experience.
I find this interesting because when I started in technology 30 years ago I had a hard time hiring for my companies and developed this “Attitude+Aptitude” concept with my teams. Over time it seemed like it was getting harder for people to get into technology jobs because it became accepted principle that you had to hire people with CS degrees to ensure success. Of course that was BS when it happened and I’ve always fought against it over the years. One of the best things for me about hiring in NYC was being able to tell the recruiting team what I was looking for and to tell them to stop looking for just CS degrees.
Recently I took a position as CTO in a San Francisco HQ’d start-up. I’ve been talking to my engineering team on how we filter candidates, again I’m preaching A+A but its clear they’ve been taught to look for CS degrees and Math majors. I’m working with them to broaden their thinking. I think this is an example that in general people are lazy about hiring and they’ll use anything they can as an excuse to not invest in finding out if a candidate is the right person. It’s tough, we’re all busy and have yet another meeting to run to or another customer call to deal with. It’s easy to think hiring is a pain and distraction from what you’re doing today. But, let’s be clear, the single most important thing you can do is scale your teams and if you don’t hire they’ll never scale and you’ll fail. To me the most important thing you can do in a company is hire well. The second most important thing is fire well, let people go if they’re not working out. You’re not doing them any favors and in the end their life will be better if they can find a place they fit in and can be successful and your world will be more successful if you focus on building a team that is a well oiled machine that smashes through problems like a hot knife through butter.