The best developers usually have EE degrees.
I think starting salary might be significantly higher for those from Stanford, MIT and such. I know that for this year CS graduates from my DD school starting salary was a little below mid six figures.
Starting salaries aren’t based on where you went to school.
My husband is a Masters in Computer Science and runs a software company - his take - college is not even necessary anymore for programmers - many companies are now hiring if you have the skills and you literally dont need to go to college to get those skills- my 17 year old twins learnt a lot from just online courses available from some good schools like Princeton and they are already doing some level of commercial programming - unfortunately colleges have become businesses and its less about teaching skills required on the job and more about stretching things out to 4 years !!
You can check some job postings on linked in - many might say OR equivalent experience…
I think college matters in the sense that colleges that provide a reasonable number of advanced classes, and a great deal of internship support at the CS department level (not just some school-wide “internship department”) could give a student a leg up. Otherwise, perceived “prestige” probably doesn’t buy you much these days, at least in CS.
Most employers these days aren’t going to hire programmers who don’t have a degree, especially larger companies. But I have known plenty of great programmers who didn’t complete college.
I’d think a fair number of start-ups would be willing to hire someone who didn’t complete college if they had some demonstrable applications they’ve developed.
College CS education is NOT about programming. If you’re passionate and dedicated, and smart enough, you could become a good programmer, or even a great one, without a CS degree or any degree for that matter. CS encompasses so many different areas/fields, and if you want to be on the cutting edges of CS, whether it’s quantum computing, or artificial intelligence, or something similar, you do need a great education (and most likely at the graduate level) to succeed in these areas. These areas are also what distinguish the elite colleges from the ordinaries.
back 35-40 years ago, I was brought in to a very large company as a programmer, fresh out of college with a CS degree (back then CS was just getting started), having worked for 2 years as a computer operator and as an intern for a summer at the Federal Reserve Bank as a programmer. This company also had a habit of hiring a ton of programmers straight from the University of Phoenix. And invariably, many of these folks were actually good at programming, or more succinctly, ready to hit the ground running since they were doing nothing but programming for 2 years. However, a large company needs more than just programmers in IT, you need design people, architects, DBAs, guys who can think outside the box to advance to the next generation of hardware and software. And that’s where the degree and the brains comes into play.
Ultimately, I’m afraid it is. Programming is where CS theory is put into practice. I’d be curious to know how many people with CS degrees can use that knowledge without having to program.
Programming is a given, but not the reason to go to any particular college for a high level education in CS. Programming is implementation of ideas. It’s mechanical by and large. Sure there’s good implementation and bad implementation, but that’s not a good enough reason for a CS degree, and certainly not a good enough reason to go into a top CS program.
I’m scratching my head trying to figure out what you just said.
Starting salaries are absolutely based on where you went to school, your GPA, and the company that hires you.
Like everything else, CS programs differ. Some are better academically than others are, some schools provide more opportunities than others do, and some have stronger alumni ties. Debate arises when you try to place a value on the CS education experience at any given college. If money is not an issue or is minor relative to your ability to pay, I would say going to one of the top rated schools is a no brainer.
I can already predict the posters that will push back on this, but in today’s world CS is much more than programming. I know several students currently enrolled in CS programs at CMU, Berkeley, and Stanford. I have never once heard any of them say that are attending classes to become a programmer. They have said that they are studying Human-Computer Interaction, or Machine learning, or Security, but programming? No. Can they program? Sure.
The same holds for internships. While this may not apply to all CS students, the 3 I know aren’t interested in what I’ve heard described a “generic CS internships” (their words, not mine). Instead, each have a plan on the type of internships they target, the work they want to do, and the companies they are interested in. All three students secured their internships for summer 2018 via networking. None had to take the multiple test/interview cycles.
Starting salaries are based on many things including school, GPA, and experience. There is always a range of compensation package values for starting CS employees. What any student will receive will be influenced by where they went to school.
Q: What do CS graduates do when they graduate?
A: They program.
Getting a CS degree and working as a programmer is analogous to getting a degree in Medicine and being a doctor. They’re both theory put into practice.
Although a lot of people who get CS degrees become developers/programmers, there are many different positions that may or may not require programming. There are many that go into QA, which in many cases doesn’t require programming. You have system administrators, whose main job doesn’t require programming. Maybe scripting to a large degree but not a main part of their job. You have database admistrators, architects, UI people, report writers, systems analysts, program and project managers, cloud engineers, solution engineers, scrum masters and so on, all whose main task is not necessarily programming. A lot of these positions uses the other skills obtained from a CS degree.
Simba9 judging from that last statement I know you don’t have a CS background.
I think these aren’t exactly prime examples - QA is on the way out in lieu of testing automation jobs (programming) and is typically viewed as a job below general programmers. Few with a CS degree (especially from top schools) would want to go into system/database administration, which typically come from IT degrees now, exactly to avoid the theoretical CS beyond programming. When it is done by developers, it is now often under DevOps, which is again much about programming and automation and the team is often integrated with developers. UI/UX work needs a background again removed from most of CS beyond programming and more in the psychology/design area. Project managers/scrum masters are typically former developers and the skills for those are soft skills often ignored by many CS degrees, even the top ones. “Solution” and “Cloud” engineers are pretty meaningless buzzwords - most computation is done on “the cloud” these days and everything is a “solution”. Those roles don’t inherently require theoretical CS knowledge.
The knowledge beyond programming that is learned in CS is typically best for subfields and applications of CS. It absolutely has value and will open a few new doors, but you may be proving the point about how much of the software development world does not require theoretical CS knowledge.
The myth that “CS is largely about programming/software development” needs to be debunked. There’re way too many CS applicants still believe the myth, and that’s the primary factor currently driving the popularity of the CS major. Many of these CS majors will wake up one day, realizing their cherished traditional programming jobs are gone, taken over by outsourcing and machines that program autonomously. We’re also on the verge of “quantum supremacy”. Quantum programming is so different from traditional programming that traditional programming skills are not even an asset, but advanced physics and math are.
As someone that recently graduated as a CS and math double major, I agree that CS is more than just programming. I had many CS classes where I barely programmed the entire semester, or when I did, it was only to get a real world example of what we were learning, or to further illustrate how things worked. These included algorithms, computer security, discrete math, computer architecture (we did have to learn assembly but only wrote 3 C++ programs the entire semester- an assembler/disassembler, a CPU pipeline simulator, and a cache simulator). I am going into cryptography and while programming will be part of the job, I will be so much more than just a programmer- that’s not what I went to school to learn.
Back “in the day”, where many of us have formed our thoughts about CS, simply being a “programmer” might have been enough to get you hired (where you would later learn what you were actually doing). I think those days are largely gone. Look no further that the CS programs at most schools. Graduates walk away with a BS CS degree specializing in “XX”, where XX is one of many different areas. Companies are now taking advantage of this as they look to hire graduates that have expertise in “XX”, and if you’re a student interested in one of those jobs you better have more to say than just “I’m a good programmer”.
Additionally, there are several CS career trajectories that do not require programming. Earlier this week I attended an artificial intelligence conference in San Francisco where Andrew Ng spoke to this very topic. He made two key points on this. First, the demand AI developers is skyrocketing as companies realize that machine learning is changing business across the board. Secondly, he sees a large unmet (and largely unrealized) need for people who can bridge AI development and specific business domains. This can also be extended to ethics and other non-programming careers.
For today’s students this is not “your father’s (or mother’s) CS” anymore.
D is a rising CS premed sophomore. She doesn’t see programming in her future. If med school doesn’t work out, she sees herself in consulting or something else?? Yes, she likes the CS classes and does well in them and math classes, but coding as a profession doesn’t interest her. I hope there would be something where her unique combo CS and premed can be useful.
She picked a Vandy full tuition instead of MIT full pay. Vandy has CS graduates average salary of 100k, and they are going to FB, Amazon, Google and Microsoft. Some go to consulting as well. Considering only a percentage of kids going to high cost areas, the average is pretty good. To her, the ROI made sense… Four year of Vandy for one year of MIT!
The opportunities are greater at MIT, but if you hassle you find opportunities everywhere. She is doing MATLAB programming in a lab at Vandy medical school this summer. While most of her friends are at home being they were just freshmen, she knows her friends at MIT are interning at reputable companies.