Getting a top education in Computer Science from a non-top program

<p>Your kid is interested in computer science, didn't make into CMU, but settles for Yale. How to get a top-notch training in CS without being at CMU? Here's a Suggested</a> Course Sequence at CMU.</p>

<p>???
Considering Yale requires of all grads (including those in STEM majors) significant Foreign language study, several intensive writing courses, several humanities courses and several social sciences courses, in addition to the major coursework,
this proposed outline doesn’t work</p>

<p>I don’t think anyone at Yale is crying over not being at CMU.</p>

<p>Hope those at CMU are equally happy.</p>

<p>Having had a son go through the CMU sequence at Carnegie Mellon - maybe I can read those course titles a bit better. There are for example three required courses freshman year which would be silly to take at Yale. One is a a one credit course that was designed to get comp sci students to explore Pittsburgh, one is a writing course for comp sci majors, and one is a CMU required course for all students designed for you to know your way around CMU’s computer systems. That schedule probably includes plenty of room for Yale’s requirements. For example since CMU requires a minor - you could have a foreign language minor - that takes care of your theoretical problem. My son would have had to take one more semester of Latin if he’d gone to Yale since he got a 5 on the AP.</p>

<p>In any event, my son turned down Harvard for CMU, because he did want the more intensive comp sci experience and was not particularly interested in being forced to be more well rounded than he already was. He loved it and never had any regrets. He’s one year out and in his dream job.</p>

<p>:) yay mathmom! That is great to hear! Cheers :)</p>

<p>It’s Computer Science. As long as the student (regardless of technical major) takes the following:</p>

<p>Object-Oriented Programming in Java or C++ 1
Object-Oriented Programming in Java or C++ 1
Discrete Structures
Computer Organization
Algorithms
Data Structures
Theory of Programming Languages
Operating Systems</p>

<p>before their CS electives…they will be OK from just about any school in the Top 100. Furthermore, with fresh grads (us senior engineers call them rookies), we pretty much start them off at the same level and give them similar tasking. The CMU, Georgia Tech, U-Illinois and whoever else from the “mythical USNews Top-10” are working alongside the “state flagship” grads/rookies and the 2+2 or 3+2 program rookies.</p>

<p>One of my virtual nieces turned down CMU’s School of Computer Science to go to a well-regarded LAC (but not Swarthmore/Williams well-regarded). She knew she wanted to study computer science, but she also wanted the LAC experience, study abroad, etc., and I think in the back of her mind she wanted a soft landing if she decided she didn’t like academic CS as much as she thought she would. She had pretty specific dreams of what she wanted to study and where she hoped to work some day.</p>

<p>There’s no question that her LAC’s computer science program is not up to the CMU level. Whose is? Nevertheless, she could not have had a better experience. She spent the summer after her sophomore year working in a cutting-edge lab in her chosen field at a major research university, with funding from her college. She spent the summer after her junior year working in a well-paid internship program for her dream employer – alongside several CMU students, as well as people from MIT, Harvard, Stanford, etc. And last week she got an offer of a permanent job at graduation from the group at the employer she liked most.</p>

<p>She is well aware that she knows less than the CMU kids. It doesn’t matter, really, because all of them have a lot to learn as far as their employer is concerned.</p>

<p>Anyway, the point is that it is perfectly possible to achieve your dreams by paths other than the most obvious one. Who knows whether, if she had gone to CMU, she would have felt comfortable enough and happy enough and respected enough to perform at the high level she has in college? Maybe so, maybe no. That doesn’t matter, either, because she has been happy all the time, she has done exactly what she has wanted to do, and it looks like she is going to be continuing to do exactly what she wants.</p>

<p>Coincidentally (or not), this woman’s older sister is two years out of college and also has her absolute dream job, a job that objectively was nearly impossible to get, the equivalent of a Supreme Court clerkship, or getting accepted to Harvard as a transfer student. She, too, got there by going to a good LAC rather than an Ivy League or other brand-name university. </p>

<p>If you know me, you know that I am a fan (and a product) of brand-name universities. They are great. But they are not the only way to get where you want to go, even if where you want to go is really, really ambitious.</p>

<p>On average mathmom’s DS’s classmates make >$84K a year upon graduation. Here’s the link to the data <a href=“http://www.studentaffairs.cmu.edu/career/students/gps1/explore/survey/pdf/scs.pdf[/url]”>http://www.studentaffairs.cmu.edu/career/students/gps1/explore/survey/pdf/scs.pdf&lt;/a&gt; .</p>

<p>How to get an education that valuable without being at CMU is what I’m wondering.</p>

<p>Probably by majoring in computer science elsewhere. Don’t you need comparative information before you go all gushy? For example, Penn 2011 computer science grads had roughly the same range of salaries ($50,000 - $120,000), and only a slightly lower average (just under $77,000). <a href=“http://www.vpul.upenn.edu/careerservices/undergrad/reports/SEAS_2011cp.pdf[/url]”>http://www.vpul.upenn.edu/careerservices/undergrad/reports/SEAS_2011cp.pdf&lt;/a&gt;&lt;/p&gt;

<p>(By the way, do “Research Assistants” at universities really make $45,000 or more these days? That seems outrageous.)</p>

<p>

</p>

<p>First, let’s point out something. The #1 attribute to have in software engineering is the ability to keep current on the latest technologies…not education. Well, I should say learning the latest technologies at the right time.</p>

<p>That CMU grad may get $84K right out of school. Sometimes employers do pay grads of top school more starting salary but here is the kicker…the state flagship grad probably gets $75K. Once both grads are in the industry, it is like the playoffs in sports, everybody starts at the same level with same options.</p>

<p>The state flagship grads decides to learn cloud-computing (the current “hot” thing). Well, that grad can now job-hop (which is more accepted nowadays) and make up that salary gap in no time.</p>

<p>Other things can happen like gaining a top-secret security clearance, getting on a big defense contract, etc.</p>

<p>In other words, that salary survey could mean nothing after 2 years of working. I have seen a lot in 22+ years in software engineering. I have reported to Ivy League grads, had Ivy League grads report to me, seen CIO’s or CTO’s who started at community college, etc.</p>

<p>Software engineering (CMU’s bread & butter) is an industry that employs a lot of folks who were NOT computer science majors and definitely favors seizing opportunities, self-learning and ambition over academics. If a student plans on taking COMPUTER SCIENCE, there is really no need to spend a bunch of money for undergraduate education. There are more jobs than students graduating plus the starting salaries will not differ much PLUS it is wide open once you get your feet in the door. Your 2nd employer (and after) will ask you “Do you know Linux/Oracle/Hadoop/C++/Java/Hibernate/VMWare/Whatever” before your school.</p>

<p>I can take a pic (but NSA won’t allow cameras on the premesis) of the parking lots and just about every college from Alaska to West Virginia is represented.</p>

<p>^^What he said. Just one data point…my son graduated in 2011 with a software engineering job in hand at a starting salary of $75k + generous benefits. One year later his salary at the same firm is $85k. His undergraduate major wasn’t even in CS (although it was another engineering discipline). He learned the basics in undergrad electives and then self-taught the rest. As far as I can tell, he continues to self-learn and that, along with outstanding performance, is the critical path to CS success.</p>

<p>

</p>

<p>In terms of strength (breadth and depth) of computer science offerings, LACs vary all over the place. Such strength of computer science offerings is not necessarily matched to the overall reputation of the LAC.</p>

<p>And the choices aren’t necessarily between CMU and a LAC, as is implied here.</p>

<p>Many large state uni’s have very good CS programs, many opportunities & their grads are recruited by top firms. My favorite CS school is UIUC (Champaign-Urbana). Son loved it, was TWICE on the team that went to the International level programming competition of the ACM, and now works at Google, after interning with Microsoft. :)</p>

<p>From personal knowledge, significant percentage of Yale CS graduates have had $100K+ starting salaries, some with computing companies while others at other kinds of business (banking, etc). </p>

<p>In my view, the most important difference between CMU-like tech schools and Yale-like liberal arts environments is the technology-centric peer students. You just do not have many computing “nerds” at Yale who focus on technology all the time. On the other hand, you have far more opportunities in other things, academic or not.</p>

<p>Yale is a good place to get graduates with a good database theory background (at the graduate level).</p>

<p>I’ve noticed a lot of new faces in the office lately, mostly new grads but a few older folks too. I spoke to one of the managers (he works out a lot so we chat about exercise stuff) and he told me that he lost his whole team and had to hire a bunch of people to replace them. Three transferred to another group (sexier geek work) and one left for a startup. I think that I’ve seen about 15 -20 new people on my floor or in the fitness center in the last month so I guess we’re doing our part to keep the economy going.</p>

<p>(these are CS folks if that wasn’t obvious)</p>

<p>

Any of a number of other top CS programs are just as valuable. It’s not CMU or bust. I think the grads from CS programs at Stanford, CAL, UIUC, UCLA, UCSD, UW, CalTech, Harvey Mudd, MIT and others are doing okay. </p>

<p>If you look at the curriculum of the CS programs from most of these schools you’ll see they’re not substantially different from each other and all of the ones I mentioned are quite rigorous and have top notch students attending.</p>

<p>I’m not taking a thing away from CMU - it’s just that there are many other schools where the grad will do just as well. CMU doesn’t have a lock on it. There are plenty of very bright CS majors who never applied to or considered CMU due to its location and other attributes.</p>

<p>^Or were accepted but got no merit money. UIUC gave instate tuition to my S, so it was an easy choice. :)</p>

<p>GladGradDad, I’m glad to read your post. I have one crazy kid at home who will drop CMU from her list because it’s in Pittsburg.</p>

<p>There are but only so many ways to discuss the topic of data structures and its applications to the real world. Any school in the Top-100 will give you a good foundation…or at least enough for an employer to recruit you.</p>

<p>To answer the OP’s question, and to respond to the general job-market concerns, my oldest son has just accepted full-time employment (all the usual benefits, etc.) and has stopped out of his CS degree program at our state flagship university after getting to job offers and second-stage interviews with a variety of companies. One thing he did to supplement his education at State U was do actual open-source projects (hosted on GitHub) to show what he can do. That definitely helped him get interviews with good companies, before finishing his degree. Another thing he has done both for self-education and industry knowledge and also for networking is participate in worldwide online discussion forums for programmers. I think one of his strengths in the job market is that he can write well–almost every programmer has to communicate with other programmers through memos to colleagues in the company sooner or later. As a dad, I have been ALARMED by a plan of stopping out of university, but DS#1 is now financially independent and doing work he enjoys, and among friends in his workplace and in contact with other friends through the place he lives across the country. For any job out of any degree program, it helps for a student to self-educate above and beyond what the school program makes mandatory to learn.</p>