I am getting a degree only for the high ranking cybersec jobs as I am 12 years into the industey. Can't care any less about programming, though. But I need the piece of paper.
@@dieglhix it’s good to understand programming however , best believe the most valuable person is the members of the team who can communicate with other members. All programmers should know some network , security , etc , just as all high level IT professionals should know some code too .
@@ci6516 I know a lot of command line and powershell, some basic programming but I won't go deep diving because it's not of personal interest and AI tools can do a lot of the work... I study a lot of other IT things not related to programming which are also very needed in the industry
The problem with video like this, is that prolly almost nobody will see it before going into college, yt algorithm works in such a way that it will recommend it to people who either already are in college or finished it already. Almost everybody learns this the hard way, especially if you listen to old people, who have NO IDEA how this industry works
I'm a junior in college, and I have a 4.0 in computer science. My minor is software engineering and I still have to work to learn programming. I agree and relate to this video! I graduate next year and I know how to code but It's still doesn't feel like I know enough. I have been told to start projects and I have started and completed some. I still feel like there is so much more to know and I still don't know many programming concepts or fundamentals! I still have to rely on other resources! College just doesn't teach the necessary skills required to be effective in the tech industry. I have learned if I want it I must learn lots of information and develop skills on my own! It's challenging, You have to love a challenge! I love the challenges of programming, and there are so many!!! LOL there's nothing more rewarding to me than to figure something out no matter how frustrating it is or how long it takes!
i about to study CS and when i went to the study program i found out that there is a whole subject called softwear enginering in one of the semesters so i dont know if that's only my collage. so did you study SWE in your collage?
In a proper college or university. throughout the course of your degree, you will get some form of software engineering major/module. In my University it's called Informatics, where we learn basic concepts of SWE. You can then choose to further your studies on what you want to specialise on as a postgraduate. Or just create a good enough portfolio and learn on the Job. Do not let videos like these discourage you. Not everything works for everyone, and also consider that you might not be at the same region or country as him where the industry is a bit different.
It's also considered an accolade. Many companies, such as Jane Street, love to hire and consider students from Ivy League colleges compared to other colleges.
In the 90s my job description was Electronics Technician, but I was mostly coding. Using the University library, I was trying to learn software engineering, but all the books titled Software Engineering were about managing teams. These books were useless for a 1 person team.
Computer Science is the theory, Software Engineering is the practical application of that theory to real-life tasks. EDIT: It appears as though Computer Science actually covers both the theory and practical application of technology. Software Engineering appears to be a sub-section of CS that solely covers the practical application side of things when designing and implementing software systems. See the Wikipedia pages for both Computer Science and Software Engineering for further information.
Reading up on it more, it appears as though Computer Science actually covers both the theory and practical application of technology. Software Engineering appears to be a sub-section of CS that solely covers the practical application side of things when designing and implementing software systems. My bad! I will update my original comment to reflect that. See the Wikipedia pages for both Computer Science and Software Engineering for further content.
My favorite part of CS, is how anything theorized can be created perfectly in code. Now, it may not always be the best use of a given technology, but that closeness between theory and practice is not there in other fields of engineering.
A small portion of the concepts of computer science are crucial for software engineering and college or a degree are not necessary to acquire the skills/knowledge to be an effective software engineer*
As someone who dropped out of college multiple times end never graduated, I totally agree. Unfortunately, tough times are here for newbies, even new grads.
My web developer friend thinks i'm talking shit when I talk about the flaws in web technologies. He looks at javascript and PHP, while I look at the source of the browsers and interpreters as a C/C++. That same friend has never written a bootloader for hardware or programmed a custom OS for specialized hardware. I wish schools would teach students assembly and C before teaching javascript or python.
Within the degree an important thing I did not see mentioned is picking your electives intelligently. If you want to focus on SWE, take more practical programming classes. Interested more in being a Sys admin? Take more classes focused on networking. I am going for IT, but I have been taking programming classes to ensure I have a grasp of the software I am running (and get better at debugging). I also recommend doing lab projects for your resume if internships are hard to come by in your area.
The whole Elon Musk saying don't get a degree thing is so overblown. When he started doing layoffs, the leaked memos literally said that they should prioritize letting go of people WITHOUT degrees regardless of experience. And literally a few days ago, another memo leaked from Tesla or X (don't remember) where it told recruiters to not hire anyone who wasn't from Ivies, stanford, gt, cmu, MIT or the Indian IITs.
@@jayrollo1352 you emphatically used “literally said this” multiple times. I did my damndest to find any reference to corroborate what you’re saying and have turned up nothing. Please actually direct us to where to find these memos in question. Please correct me if I’m wrong, I genuinely want you to if you’re correct. But it seems to me like you are full of crap. There is nothing I can find that even remotely rings true to what you said in this comment. Show your receipts or quit lying.
The problem with people who look upto guys like Zuckerberg and other very successful people is that people look upto them and dream that they will be the next success story but do they have a Facebook level idea? Being able to have the idea and implement the idea successfully is why companies like Facebook, Amazon, google and others are what they are.
While you are technically correct, historically that is inaccurate. Prior to the mid to late 90s this was not the case, as having a computer science degree prepared you for a wide range of fields as a "software engineer/programmer/architect/systems engineer' as a job title, because at that time computing was much different than it is today. You didn't have the cloud, you didn't have java and you didn't have a dominance of the x86 architecture or linux. Not to mention in the 80s and 90s you didn't have anywhere near the number of computers scientists out in the workforce as today, so one or a few people had to do a lot. So at that time, a computer science degree taught you the intimate connection between hardware and software so you could design, develop, test and maintain software on a wide variety of dominant platforms from various flavors of unix, to main frames and lowly (at that time) PCs. It was only later that schools began to offer more specialized degrees in software QA, management and information science, software engineering, cybersecurity and so forth, which is what you are talking about. Basically those things are preparing you for specific jobs and roles vs CS which historically provided you the training to do a range of roles, some of which were not directly writing software at all. An old school computer science major should technically have been able to write anything from a system library, to graphics programs, an email client, a database system or device drivers. Web applications and services were not a thing back then.
Computing was not any different, and nothing *really* new appeared since mid-80s. Cloud? We had mainframes and superminis. Java? We had p-code, we had AIX and all that stuff. Linux? That funny little parody on Unix? We had a real thing. And at that time CS was a more properly mathematical, more purely theoretical discipline, not polluted with people who wrongly assumed they'll learn "to code" there and will earn money as code monkeys in a bank or whatever.
@@vitalyl1327 Coding with Java is very different than coding with C where you literally have access to the bare metal instructions specific to individual chips. And in the 80s getting performance in specific types of applications meant using specific chips with custom instruction sets designed to accelerate those tasks. An example is Silicon Graphics. All of that necessity of teaching hardware and low level systems architecture went out the window when Java came along and commodity x86 hardware. And no, managing servers back then was not like "the cloud" where provisioning is automated, but yes obviously you had data centers. Not to mention system engineering didn't mean picking the appropriate javascript framework to use.
@@willd1mindmind639 IBM TIMI was not much different from JVM (and likely inspired it, along with P-codes). This (and early Java) were not the use cases for top performance anyway, portability mattered far more.
@@vitalyl1327 The point was most programming didn't involve HTTP, Java Script or Html in the 80s and 90s. Java was the main reason for this change. The fact that you no longer had to worry about the complexity issues of C/C++ programming or how to build front end clients was a big change. And along with that your code was compiled for each specific piece of hardware and often involved specific libraries for that hardware with custom functionality. Keeping in mind that the portability of java as a language wasn't the biggest factor, but the fact Java contained built in support for HTTP processing. And that allowed for portability based on javascript and html on the front end as a major differentiating factor. So you no longer had to write custom socket programming in C/C++ to communicate over the network. Therefore, java lowered the bar to entry for programming and changed how programming and CS was taught, giving rise to the topic of this video being software engineering degrees, which didn't exist in the 80s and 90s.
@@willd1mindmind639 Even Cobol was not really platform-specific and was mostly portable. C/C++ was a very niche thing anyway, computing landscape was far more complex and diverse outside of that niche. And I really wish HTML/CSS/Javascript never happened. We had a perfect stack before HTML became a thing - Tcl/Tk. Web stack did not solve any problems - it just introduced a ton of new ones. And even in the 80s there was a clear separation between CS and SE. CS was always a purely mathematical, theoretical discipline. It was about computers as much as astronomy is about telescopes. Nothing really changed since then. And nothing really changed in SE when it's taught properly.
In the UK you have BSc (Batchelor of Science) Computer Science, BEng/MEng (Batchelor/Master of Engineering) Software Engineering check out Birmingham University/Imperial College
So basically Software Engineering like many other Cyber security etc... is under the umbrella of Computer Science. Computer science you are a jack of all trades master of none . But then when u specialize on one of the umbrella / branching sectors of Computer Science then u become a master on that one skil .
When you study CS at master or phd level you are highly specializing in things that SWE just don't do. Broadly, from my own experience. - CS is a maths heavy science degree, SWE is a practical engineering degree. - CS create tools , SWE use them. Eg. CS may write 3D engines like Unreal or Unity, SWE use those engines to build applications. - CS graduates may remain in academia and do pure research, SWE is aimed at work outside academia. Disclaimers: There is a significant crossover between the two, and you can find people of both degrees doing similar jobs. Degrees may vary a lot between countries and institutions. People may pick up skills from "the other side" on their own, in the same way that you may find skilled developers without a relevant degree.
@Tech2Rush thanks for the insight brotha . From your experience does it matter where your bachelor's is from ? WGU vs Colombia university or any other college that's not strictly online
@@John-gh2lz I couldn't really say, as I'm in Europe. I don't believe my choice of Uni ever mattered for me, but it may be different "over there". Public git contributions and people skills probably counts the most for fresh graduates.
@Tech2Rush ok good to know. Thanks brew . Funny thing we just arrived in london today . Will be here for a couple of days before heading back to the states.
@@Tech2Rush In USA, they have a culture, that a few universities have. To give an example, if one graduates from MIT. Here is a story from a friend of mine that went to MIT. So my friend he was from a poor background, was smart and did Engineering at MIT. When he graduated, he had difficulty finding a job. Now a couple of years later he meets someone that he knew in Engineering studied with him, and he was doing very well, this person, let us call him Jon. You see with Jon tells him the reason why he is doing well is because his father is the CEO of a large Engineering company. So my friend asks Jon if he can help. Jon says sure I will help you, you are my MIT brother. He calls his father, and his father says there are no positions available, but that is NO Problem, because he will just create a position for Jon's friend, because he is an MIT brother. Note the father graduated from MIT as well. SO in this way, from MIT you can come into contact with the Wealthy / Well To DO, and because they have this loyalty to the school they went to, they will try to help you out. SO in the USA this kind of "BROTHERHOOD" exists to a certain degree. And basically it seems that this mentality ONLY exists in the USA! Another way to look at this is Nepotism of some kind, I guess. SO, I just want to say, is easiest way to get job is Nepotism.
Yeah just a guy with 4 engineering-heavy companies that are at the bleeding edge of their respective industries No biggy, we should take you seriously but not him
Bs. Statistics is absolutely enough for data science lol. Problem with data science degrees especially created in last like 10 years or less is that there was no uniform standard of accreditation body to standardize the curriculum. Statistics, however, is standard and is definitely enough as you find people in the industry with that degree as it's similar to CS in that statistics can lead you to many different areas
A bit of clickbait and a kinda a bad take. You essentially need a CS degree and there is no SWE degree at most schools. CS teaches the fundamentals that are very helpful and can save a lot of pain in the future. SWE is a subset of CS it’s not that they are different things. They are quite similar. Also CS can lead to many things from Data science, to Cybersecurity to IT as well as SWE
This is one of the most reasonable comments here, the argument of a CS degree not equating SWE is dumb, because most reputable schools incorporate SWE courses in their CS major curriculum.
In Switzerland there is this thing called Informatiker and it has two paths, platform development and application development. Application development focuses on web development, software development, databases, support and dev ops. In the apprenticeship they don't really go into depth, but things like arch linux, docker, git, cryptography and ssh are all things they learn in the first year out of four. Platformentwicklung focuses on the more physical part of computer science, they still learn the basics of code like oop, mobile-applications and machine learning. But they work with physical databases, computers and networks. The linux users in short. They both can later specialize and choose a field in some like economics, security or medicine.
Only 20% of your video is about SWE vs CS. Your final 3 points on how CS can transition to SWE could be summarized into a single bullet point, which is gaining real-life experience.
New here bro, really need a job bro. I am a computer science but I am still studying until now. 7 years in banking not related to computer science job and after I resigned from that job, I have 4 years learning anything up until now. Computer science is about ethics, how data flows and diploma.
He's right, it's not. I have a computer science degree and now I'm getting my Software Engineering PhD after 20 years of doing what Aman does. Thanks for the video Aman.
Anyone smart / motivated enough to get a CS degree is smart / motivated enough to learn how to get into software development without the degree. (and spend that money on a down payment for a house and those 4 years getting practical, real world skill/experience)
@@jorsako843 true but you're also $150k+ and 4 years down. My first job I got after 6 months of self study. Making 80k. Now these kids who graduated can't even get a job with their expensive piece of paper so they don't even have the chance to get the experience to go with it so it's moot.
Those with a degree can do things that those without cannot dream of doing, all those without a degree have is a small head start (assuming those with a degree wasn’t actively producing software which is rarely the case)
@@docgraal485 Lol cope. A piece of paper has no bearing on ones ability to make software, only peoples perception of your abilities before proving it. The VAST majority of CS graduates write shit code that is why it's so hard for new grads to get jobs. CS is is way more than just coding so assuming most CS folk just sit around coding is wrong. 4 years and 150k worth of debt is far from a 'small' set back, especially if you don't graduate. In this market, the risk/reward doesn't add up.
CS teaches you a broader view of computing. It’s the science behind all of computation and you’ll learn fundamentals that are worth more than anything ;)
University is not supposed to teach you git. University should teach you theories, concepts, fundamentals of version contro for instancel... NOT the actual tool. The tool can be used or discussed in a single tutorial. Spending days teaching you how to use it is not the purpose of a University.
so basically, CSE is like doing a basic level of study which then splits into multiple applications which are to be learnt separately. okay ! got that. I am starting with a BS in CSE with AI/ML. In India they offer CSE + some specialization which you can choose as per your interest. they also offer CSE & DS/ AI/ML/ IOT/ CYBERSECURITY/ BIOINFORMATICS/ BLOCKCHAIN WEB3. which one do you suggest as per the current market and prediction for next 3 years.
in india, all are shit. But u need atleast a degree to land a SWE job. Go For the degree which requires u spending the least time on it. TL;DR Go for the least difficult course and easy to get GPA course based on ur college. Enquire with seniors . After getting in college grind leetcode and Codeforces and then pray god to land u a SWE offer
@@lazyemperor5182 thanks for trying to help me I will follow the easy course strategy you talked about. but that last part, thats average sheep mentality in india. do dsa do leetcode there are so many other things than this job-only mentality. sadly all indians are chasing non existent job markets which only takes few highly qualified people. considering you are not that senior that me, I would want to tell you that people who get hired using only leetcode grind and system design interview bootcamps also get fired within a year or two....
Computer Science is a generalist degree. You will touch on many aspects of computation from the mathematics, hardware, networking, programming, software engineering and more. It is also still a very valid method of entry into a software engineering role, as many employers ask for it specifically or something equivalent to it. A Software Engineering degree is a specialist degree within the domain of computer science, and usually falls under the "equivalent" umbrella, so it is equally valid as CS. The choice is yours.
Please make a video about the Mullaperiyar Dam in Kerala. 30 lakh lives are at risk, and the government is not taking appropriate action. We urgently need attention on this issue. This is a serious issue. This is a heartfelt request from us, the people of Kerala. #decommissionmullaperiyardam
I did not knew this when I was in my college hence I do pretty well with my subjects and didnt do anything for job related stuff, as bad luck my college didnt emphasised on this part. I feel pretty wasted sometimes but I am buidling myself slowly.
hey guys, I'm still 16 but should I study computer science through a scholarship and then try to study software engineering in another scholarship? or masters in computer science THEN software engineering?
Well good thing my school taught me that before signing up for uni. I enrolled into university for the diploma. It's just saying "hey look I can go and work and do stuff despite the environment". Thing is that I am doing university part-time because it allows me to work full-time and my current job is sorta related to software engineering. I am writing and maintaining code and doing WordPress sites (not my proudest achievement)
I don't think Harvard sells just the fact that you were chosen, it also sells a certification that you are able to pass their exams. It can be three to five years with intense workload. That being said I don't like the American system where universities are run like a business and forces people to get into debt.
Getting into a good college is definitely not enough to get a good job, but the ONE reason someone would want to get into a good college is because of the network they can create, like if someone get's into a not so great college, the one thing that they will suffer the most in is crating a good network, so let's say someone gets into a bad college, how do you suggest they create a good network considering no one at college is really network material.
Yes, I agree, Computer Science programs, are much closer to this new name " Computer Math ". In computer science, they tell you that they want you to solve problems by using some Programming Language. BUT the problem is this, they expect you to know that computer programming language before you even start the course. SO when a specific course in Computer Science degree says that " course will use Java " , they usually do not spend time teaching you the language, they expect you to know it, or figure it out on your own while you do the course. SO to summarize, computer science programs will NOT teach you a programming language, you have to learn it on your own, and if you cannot do it, you will fail the course. SO you do not go into Computer Science in University with the expectation that they will teach you the language or give you enough time to learn the language, so it is just corruption on the part of the University. Basically only Community Colleges create courses meant for you to learn the Language, and sometime they even fail to deliver on this. But just saying Computer Science does NOT equal to learning of Computer Languages. And so this is the real problem. Now this video talks about that Software Engineering is the better practical way to learn languages, and I saw that even this is NOT TRUE. In software eng they also spend a lot of time on like strange theoretical courses that connect to the business management field of study, and they still don't do enough to really prepare students on practical computer programming. He also mentions the 1980's etc, back in the past, employers in large corporations knew that school was school, and industry was different, so they basically gave computer science graduates to learn what they needed in the workplace, so they basically got paid in the first year on the job to just learn. Note, by early 2000's, industry no longer wanted to train people on the job, and basically says "You better know these things"! SO corporations have become cheap, don't want to spend money to help people transition from school to industry!!! SO now you are on your own to learn the things that Industry wants you to have.
Ultimately, what you can achieve is determined by your attitude, dedication, and interests. While degrees can be valuable, they often consume time that could be better spent pursuing your passions. The hiring process is flawed - regardless of your educational background.
Hackathons are terrible. Being able to write disposable code fast using superficial understanding of tools is a totally different skill than being able to plan, understand the trade offs of different ways of doing something and then implementing it to be maintainable for several years.
In India BCA & MCA Degrees are for Software Engineering. Or Otherwise do BSc Software Engineering or MSc Software Engineering. Instead of BSc/MSc Computer Science. Very few College have BSc/MSc Software Engineering Degree Course.
I being a 14yo boy in class 9 living in India rn knows more than you in the college buddy cz i use git all day. I have been programming since 11 and i have done game hackathons called game jams and also make games (obviously). Now, though not being the best i am one of the best that is enough. Like who is seeing this comment and knows about how machine works through the transistor level, had made websites, had made games (simple 2d ones).
If everyone gets into a Computer Science degree with the goal of being a software developer, then who the hell should design and build the hardware that these software systems will run on?
Bait. I never ever heard anyone say a CS degree is equal to being an experienced SW engineer. You need though serious CS and SW engineers knowledge to become a good SW engineer. From all sw engineers/ developers I met since 1985 every time I could tell wether they had a decent education, and every one who didn’t had a difficult time to absorb new knowledge.
No. It is not. You will only learn briefly and on the surface how a computer turns electricity into information. CS is more concerned with what happens AFTER the electricity becomes data. How to collect it, process it, store it, present it and transmit it. Most of us do not know the technical details of how the hardware works. We however know how to tell the computer to do what we want it to do. That's the Software Engineering and computer networking part. Networing is me telling it where and how I want it to send information. The rest of it is trying to figure how it can do what I tell it faster, while consuming less resources and in a way that hackers can't mess around with. The science part of computer science. That is research, developing better data structures and algorithms and information system security.
CS I’m essence is applicable discrete mathematics. Everything from loops to booleans is rooted in discrete mathematics..and in reality almost everything is a Boolean at heart
What you do is Web Development only. Computer Science and Software Engineering are way more than that. Besides the purpose of education is not for job seeking.
Wrong.. apparently you do not know what the term "engineer" means. Or at least, what I think it means. "One who applies a proven technology to design a machine". Our current software development technology does not work. We have no proven technologies in computer science, therefore there can be no software engineers. No application today (from bootstraps to flight control systems) is ever finished or reliable. All programmers do the same thing. All applications are the same. There is no difference in the work involved in the creation of any application (OS, device drivers, accounting systems,…) . All application only add, subtract, multiply, divide, compare, and branch. All software logic is our assumption on the purpose of a set of bits that we humans think of as a number. Even this, no two programmers will ever agree upon the meaning of a set of bits. The size of an application should be ignored. Whether one statement or a million statements the work of a programmer I judge the same. I also do not judge the work on an application's purpose. A = B + C This statement is a flawed unproven technology. I cannot call myself as an "engineer" if I cannot prove this statement. the result might be outside the number of bits allotted. B and C might be incompatible. I cannot tell is this statement is even required. There are a million reasons why this statement does not work. There is no understanding of this statement. The proof is only in the original programmers mind. He/She knows the proof but the machine (application) itself cannot validate this statement. This is why I think our software technology does not work, or at least one of the reasons. With 50 years as a programmer, I would never call myself a Software Engineer. I have spent last 10 years working to design a proven software technology. All I can say is that what we now have is crap. We should not need programmers, and our software should never fail, software should provide every user with absolute control over their software, information, hardware, and context. The latest Microsoft world wide outage, should never have happened, but it will happen again. I just want progress, not the same bad technology we have had for the last 82 years. It makes me mad that no one is looking to improve our software technology. The world just keeps saying that humans can do better. They can, but only with a better technology.