Тёмный

Programmers are NOT Engineers?! 

ForrestKnight
Подписаться 532 тыс.
Просмотров 109 тыс.
50% 1

Make your online purchases more secure with privacy.com/forrest and get $5, too!
After getting a comment about how software programmers shouldn't call themselves engineers, I decided to revive an old video topic - that I originally trashed - about developer job titles and the differences between them.
------------------------
🐱‍🚀 GitHub: github.com/forrestknight
🎥 Twitch: / forrestknight
🐦 Twitter: / forrestpknight
📸 Instagram: / forrestpknight
📓 Learning Resources:
My Favorite Machine Learning Course: imp.i384100.net/YgYEBJ
Open Source Computer Science Degree: bit.ly/open-source-forrest
Python Open Source Computer Science Degree: bit.ly/python-open-source
Udacity to Learn Any Coding Skill: bit.ly/udacity-forrest
👨‍💻 My Coding Gear:
My NAS Server: amzn.to/3brqO7b
My Hard Drives: amzn.to/3aKetMi
My Main Monitor: amzn.to/3siQfPa
My Second Monitor: amzn.to/3keHT84
My Standing Desk: amzn.to/3boAcbC
My PC Build: bit.ly/my-coding-gear
My AI GPU: amzn.to/3uvmUmz
🔧Coding Tools:
The Best Linux Server Hosting: bit.ly/linode-forrest

Опубликовано:

 

30 окт 2021

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 851   
@dalcod
@dalcod 2 года назад
I have a BSc in Computer Science and MSc in Computational Technology( Major: Software and Web). My first job title was Software Developer, now it is Software Engineer in a different company. How do I feel about it? nothing. Did the responsibilities change? No, not in a major way, the nature and business model of the companies differ and but the role is pretty much the same with negligible differences. So, call yourself whatever you like, just do the job.
@evelioguaperas
@evelioguaperas 2 года назад
@@asfdadfgdasfh4444 Based, please refer to me as "software president of Kazakhstan", lmao
@monad_tcp
@monad_tcp 2 года назад
I also did a BSc in Computing science. I don't call myself an engineer, because I am a scientist. But who cares about job titles anyway.
@TheCarmacon
@TheCarmacon 2 года назад
I went from software engineer to software developer. identical tasks and responsibilities, just a different company. reason why the job posting said "developer" and not "engineer": apparently SEO according to the HR guy :D
@Nerobyrne
@Nerobyrne 2 года назад
@@evelioguaperas fun fact, if you start your own company, you can actually give yourself whatever title you want. It will even appear on some official documents. So, nothing is stopping you from calling yourself "Emperor of the Internet". ^^
@Holyshiszle
@Holyshiszle 2 года назад
Honestly I feel like engineer title is for the masses. Its glorified but in my eyes, getting a degree in CS over CE makes it so that you are more specialized in CS so in my eyes you know more than someone who got a CE degree.
@aer0449
@aer0449 2 года назад
Regardless what you call yourself ultimately the skills you hone is the real definition of you ... I think so...
@aer0449
@aer0449 2 года назад
Omg a heart thank you so much sir ♥️
@annedeborah5926
@annedeborah5926 2 года назад
PERIODTTT !!!!
@patrickgrady7505
@patrickgrady7505 2 года назад
I'm a neighborhood pharmaceutical engineer
@pluto8404
@pluto8404 2 года назад
Dont put that on your resume.
@aer0449
@aer0449 2 года назад
@@pluto8404 AHAHA
@matthewdevalle404
@matthewdevalle404 2 года назад
Well, I'm just as confused as ever! I have a degree in Electrical & Electronic Engineering but I write code for industrial automation stuff including PLCs & HMI's. My job title is currently Software Engineer but at my preious employer it was Systems Engineer. I think I'll just go with my mother's description of my job; "works with computers" 🙂
@SidewaysY
@SidewaysY Год назад
As someone with a mother who says I "work with computers" I approve. :-)
@brutuslaurentius8729
@brutuslaurentius8729 2 года назад
As a guy who is fully qualified as three different types of engineer, I can say that an engineer is somebody who solves problems. If you solve problems, especially using processes that ordinary people do not understand, then you are an engineer.
@smashing_data4292
@smashing_data4292 2 года назад
In my opinion, I feel like there is an engineer with an "e" and an Engineer with an "E". The "E" means you are a Professional Engineer (PE) meaning you passed the PE exam. I have a B.S. in Computer Science from an ABET-accredited engineering school and I consider myself to be an engineer. I also have a minor in Computer Engineering so if I wanted I can get a job designing hardware or the programming of embedded systems. I wouldn't confuse myself with an Electrical or Mechanical Engineer who has passed the PE exam and can practice as a licensed Professional Engineer.
@jamessullenriot
@jamessullenriot 2 года назад
I think "If you solve problems, especially using processes that ordinary people do not understand, then you are an engineer" is the definition of OVER engineering. A good engineer should be able to solve problems so that most people would understand the solution and the process being used.
@driftkid270
@driftkid270 2 года назад
@@smashing_data4292 ​ Only in the United States lol. Everywhere else in the world, all you need is to have a B.S degree in engineering and you can work on any project, even if it is commercial. If you do your job well you are a professional. The PE licensing is a scam in my opinion and only carries political weight. Yes it is required to work on projects that are commercial which need sign offs but only in the US, that is only a barrier created by a group of people who decided to make money off of Licensing and who the hell has the right to call you anything less than an engineer when you are an engineer everywhere else in the world.
@smashing_data4292
@smashing_data4292 2 года назад
@@driftkid270 I understand what you're are saying about how the PE license is useful if you are a Civil Engineer that has to sign off on documents. Not really useful if you are an Electrical Engineer and you end up getting a job at a software development shop or work as a systems administrator.
@rebelsdeveloper367
@rebelsdeveloper367 2 года назад
engineer need license while software development mostly not . But that for me aint important but what important what bring home. Some mechanical engineer low salary then software developer. Firmware softwaee engineer may get the highest salary but in small company may worst then mechanical engineer i mention.
@Andrumen01
@Andrumen01 2 года назад
I understand that this comment will be, most likely, ignored, but here is my grain of salt to te discussion. Take the typical steps to build a house from scratch. After getting the lot and construction permits have been obtained, a terrain study must be made to determine the composition of the soil, the geology of the terrain (e.g., stability, soil density, etc.), this study is planned, and analyzed, by a civil engineer. Once the study has been completed, you can talk with an architect to design the house (e.g., number of rooms, amenities, outer structure, etc.), and the blueprints are generated. This blueprints go to a civil engineer who evaluates its feasibility (you don't want to defy the laws of physics) . Once everything is settled, a foreman is hired. A foreman is a person who knows what goes where and has field experience to direct the workers. The workers are the ones who put the house together, i.e., they know how to weld, pour the concrete, cut the wood, etc. What do they all have in common? They know how to build houses, but their specialty is different. Yes, some of their specialties might overlap, but in essence they perform different parts of the process. This reasoning can also be applied to a computer scientist vs software engineer vs programmer vs coder. In essence, they must all know how to program, but their roles are essentially different. I will not go into them, but it should be clear what the main differences are and that they all form an essential part of the team.
@JuDaSuCrUz
@JuDaSuCrUz 2 года назад
This is the way I was described the differences as well. Even though your tasks and responsibilities are going to be fairly similar, your knowledge may probably not; granted that also has to do with education and classes taken. The difference is the time it takes to graduate increasing the knowldge you get, at least in my country. You can take the 3 year program and be as good (or better) as a software developer as the engineer who did the 5 year program. As mentioned, the difference lies in the 2 years of extra knowledge, relevant or not, between the two. Particularly, the 5 year program includes a lot more of CS classes, as well as "lower level stuff". Whereas the 3 year program focuses a lot more on practical experiences; what the markets needs. I'd also add that the people who graduate from the 5 year program are more likely to continue in the research field than to work as a developer. In particular, I work with a guy who graduated from college in Canada. We work as software developers. He is really good at what he does, but he lacked a lot of knowledge because of the program he was enrolled in. As part of his growth in the company, he was suggested multiple resources to increase his knowledge about computing, yet he will probably not learn how to solve differential equations (relevant or not in the field). In comparison, when I arrived (first job btw), I was super focused on things that I was thought that didn't really matter, as a junior does, but also because I had a deeper understanding of what the machine is doing (or at least that's what I tell myself :v). Also, as some people have pointed out, my country requires us to get a certificate to validate that we are engineers else you will not be hired under that title. Canada is the same, that is why I'm a software developer.
@edivimo
@edivimo 2 года назад
I partially agree with your definition and comparison civil engineer vs foreman and software engineer vs developper, but I agree with Forrest that still there is no practical difference. In the case of civil engineer vs foreman, the skill gap between both of professions is really wide, the civil engineer knowledge of physics, materials, etc make him really good to create the planning of a building better than a foreman but the skill gap between software engineers and developpers isn't wide enough. In my experience, in a software project, the one in charge can be very well a senior developper and you won't notice the difference if you change it with a software engineer.
@JuDaSuCrUz
@JuDaSuCrUz 2 года назад
@@edivimo that is if you assume both the engineer and the developer are doing the exact same: programming. And maybe the comparison with civil engineers is not adequate, as you pointed out. The way I see it is: all engineers can be developers, but not all developers can be engineers. Just because the engineer has studied for longer and also a wider variety of topics that someone who only did programming courses (wether they are relevant or not). Again, both can be 10x devs or -10x devs XD , as the field is more about practical knowledge and experience than books. I guess what the original comment was trying to say is: don’t give the people who have done less than I have, my title. Specially with all the: “become X in 10 hours” courses. Personally, I would be annoyed if someone who has done a couple courses comes up to me and calls him/herself an engineer when they only know how to use hooks in react. Also, I believe the gap in NA is smaller than other countries 🤷🏻‍♂️ who knows where they person is from. Hence the interchangeability of the titles. For example, in my country, they are very well defined. And here in Canada where I work, I can’t be an engineer because I don’t have the credentials.
@JuDaSuCrUz
@JuDaSuCrUz 2 года назад
​@@edivimo Actually, I completely forgot about my last 2 years of university. Hopefully this adds to the gap that has been mentioned, increasing it a little bit. Again, if we are comparing only people programming, there is no difference. But the background of those people is what differentiates one from the other, hence the original comment. We are not the same, even though it looks like. I'm not saying that Eng > Devs, btw, it's that the video (maybe influenced by the region, ie, NA) doesn't look deeper: "Oh they do the same so they are the same, in my eyes.". Again, this is my country, I have no idea about the US, CA, or EU. We are required to takes classes in topics are more engineer-focused than development. These are: Project Management, Analysis of Investments, Innovation in the IT field, Environment Management and Risks, to mention the most boring ones. These are topics that someone doing a pure development program would never see. Again, wether its is relevant or not in your life is a different story, but I have the knowledge and others don't (I probably don't but let's say I do).
@ryanmah4769
@ryanmah4769 2 года назад
The difference is that the title of "engineer" is actually a regulated thing. I'm not sure how it works in the US, but in Canada the title of "engineer" is a protected title that has a bunch of requirements you need to meet in order to call yourself one.
@Kadotus
@Kadotus 2 года назад
Indeed, but add a prefix like "software" and it's no longer a profession title but a job title and the requirements _magically_ disappear.
@qwerasdfhjkio
@qwerasdfhjkio 2 года назад
Yes but that's only if you the title "engineer" by itself, "software engineer" changes all of that, so I'll keep calling myself a software engineer cause it sounds cooler🙃
@Kadotus
@Kadotus 2 года назад
@@JM-tj5qm Well, I'm glad I have an engineering degree then, so I can still call myself an engineer if I'll ever visit your country! ;)
@murtadha96
@murtadha96 2 года назад
@@Kadotus Wrong. In the UK if you graduate as a Software Engineer you usually gain the title "Chartered IT Professional CITP) *AND* you simultaneously gain the title "Incorporated Engineer" or with 4 years of study (equivalent to a Masters degree) you gain the "Chartered Engineer" protected title. There is no such thing as the requirements magically disappear. A software developer/engineer is quite simply an engineer.
@LangstonBall
@LangstonBall 2 года назад
Whatever makes you guys feel better. I suppose it comes with a comfort blanket too? :)
@abnoco
@abnoco Год назад
In the mid ‘90s I was a “programmer”, a title I was proud of. I was responsible for FE, BE, DB design, testing, user requirements, UI, UX, and everything else needed to build the application people used to solve business problems. By today’s standards I was a “software engineer”. No one I knew said “coder”. The first time I heard an IT person describe himself as an engineer it seemed pompous to me, but now I think it’s justified.
@yvanatannous3448
@yvanatannous3448 2 года назад
I just finished my first year majoring in CS but I just wanna say I love your videos cause even beginners don’t feel left out. Im learning a lot of terms and concepts I havent learned in uni yet from you. Thanks for being specific and thoughtful in your videos.
@DonaldLivingston
@DonaldLivingston 2 года назад
Part of the problem with Software 'Engineers' is that there is no regulatory body that sets the standards for what constitutes a 'Software Engineer'. For Electrical Engineers, Mechanical Engineers, (and others) there is an exam that one has to pass before you can legally call yourself an Engineer in those disciplines. Software Engineering is such a continuously evolving field that no standards body has been able to codify who should qualify as a "Software Engineer". This tends to upset those who have more experience or participated in more academic paths of learning that someone fresh out of bootcamp can claim the job title of "Software Engineer".
@trystan4358
@trystan4358 2 года назад
There was one for software engineers credited by the same bureau as the others but it got removed
@davidjohnston4240
@davidjohnston4240 2 года назад
The problem with electrical engineering certification is that it is entirely irrelevant to the microelectronics that anyone in the semiconductor industry actually does. Equations for 3-phase supplies are just not a thing. High voltage handling - we used supplies between 0.5 and 1.2V on the things we design. So electrical engineering board certs seem relegated to the civil engineering end of electronics. My job title is "Principle Engineer" which roughly translates to "the principle corporate expert on a particular thing" and it's in a field that I pretty much fashioned myself, pulling together academic and engineering disciplines. I literally wrote the book on it. The designs are in everyone's CPU and they provide critical security features. So to accuse a hardware engineer in microelectronic that they are not real engineers because the are not board certified is kinda silly. There is no certification for what we do. The boards did not adapt to modernity.
@Chris-io2cs
@Chris-io2cs 2 года назад
@@davidjohnston4240 I'd love to know more about your microarchitectural designs if you are willing to share any more in depth info or even just the title of your book.
@davidjohnston4240
@davidjohnston4240 2 года назад
@@Chris-io2cs Here are some videos I'm doing on the topic. ru-vid.com/group/PLZNqNoh4u1gzKMYgrrgcKK5ozNQ7f_OMP
@Michael-pw6qk
@Michael-pw6qk 2 года назад
IEEE defines it; they're a standards orginization. SWEBOK, Software Engineering Book of Knowledge. There is an CSDP (Certified Software Development Professional) certification that lasts 3 years you can earn from them, based on SWEBOK.
@gregckrause
@gregckrause 2 года назад
Being able to work with Wordpress alone would not make for what I would call a web developer. If you can understand and work with the associated PHP, JS, HTML - then we’d be looking more at the web developer title.
@Kadotus
@Kadotus 2 года назад
AFAIK in many countries someone without an engineering degree can have a job title with a prefix of some sort before the word "engineer," like _project-engineer_ or _software engineer._ But to _(legally)_ use the profession title of 'engineer,' one needs to have an engineering degree. My own degree is in ICT engineering with software engineering major, so I while I'm a software developer, I'm also very much an engineer. There are certain national and international standards for the profession title, while the prefixed non-profession titles don't have those.
@whatsmyname6801
@whatsmyname6801 2 года назад
My computer science degree is from the college of engineering at my University
@JaJakubYT
@JaJakubYT 2 года назад
Hi Forrest. Great video! I found your channel quite recently as I started a channel as well! :) I think our tech industry combined with LinkedIN makes it an interesting field for "job title creativity". I remember that I got asked once by my family member: what are the differences between programmer? I recall answering something like: "theoretically every one can learn how to write in English (or any other language), but not not everyone will be capable to write books." At the end of the day, it's our title that matters but they knowledge and experience we have 🙂
@zerocnc
@zerocnc 2 года назад
Programming is a skill Engineering is a discipline. The difference imo.
2 года назад
Among my peers, developers take items from the backlog and write code. Software Engineering also involves engineering disciplines, which is project planning, architecture and management. That opinion probably comes from the fact that I have a BSc in Software Engineering, and that those were things we did alongside civil engineers, welfare engineers, robotics engineers and electrical engineers. As for WordPress developers I think, for me, it mostly boils down to whether they make their own plug-ins and themes to use when building sites for customers, but I don't actually care if they call themselves developers or not 🙂
@dekev7503
@dekev7503 2 года назад
What's welfare engineering 🤔
2 года назад
@@dekev7503 I think they do projects like green cities and things to help the elderly, stuff like that. I'm not too sure tbh
@carldrogo9492
@carldrogo9492 2 года назад
Interesting, what other Software Engineering only classes did you take?
@billgillette2859
@billgillette2859 Год назад
'Architecture'? No, you don't do 'architecture'. Engineers don't even do 'architecture'. There's another word programmers have appropriated.
@AddictToEDM
@AddictToEDM Год назад
@@billgillette2859 Hmm yess. I study in software engineering and we basically do the architecture of the project before coding it, and that basically doing the conception with uml classes diagram, choosing the right design pattern etc.
@wadiov6872
@wadiov6872 2 года назад
That's a great topic to address, from my perspective I think if someone who uses a system or some piece of software that is already built to solve problems like react js is not an engineer however if you come up with your own software solutions using mathematics physics etc to provide an automated system that process is engineering. So that's my take on about this, and like you said title really doesn't matter just solve problems.
@SlackerCast
@SlackerCast 2 года назад
This was actually very helpful Bc I am in the process of looking for a full stack developer and thought all I needed was a web designer. Thank you so very much!
@theastuteangler
@theastuteangler Год назад
oh you the type to list 10 years of experience required on a 3-year old language or API, have a list of duties that essentially amounts to running the entire company, then underpay them by 50% at least
@CodingPhase
@CodingPhase 2 года назад
Great topic. I think if someone builds a Wordpress site and buys a theme then they download a plugin and sells that site to a client. They are not on a developer. For you to be a developer you need to build something yourself. Now if u did build the theme or the plug-in then you can call yourself a developer
@matthieud.1131
@matthieud.1131 2 года назад
As a research engineer, this is how I would distinguish these titles: - Developer: you are given a task AND the technologies to use to solve it (language, framework, etc.). You don't usually have interactions with stakeholders. - Engineer: you are given a problem, you have to research (and be knowledgeable about) the frameworks and tools that are suitable to solve that problem, choose the appropriate technology, split the problem into tasks (that you may give to developers or work on by yourself). In addition, you may need to interact with management and stakeholders to understand their needs, their constraints, and also justify your technical choices to them (these latter duties may be done by project managers instead of software engineers in large companies). - Research engineer: same as above but the tools/frameworks to solve a problem, as well as the solution, are likely not to exist so you'll have to invent that as well, and write patents and/or research papers presenting such solutions in addition to driving the development of the product.
@rebelsdeveloper367
@rebelsdeveloper367 2 года назад
in big company , pm is the worst. If pm dont come from developer , The project will be struggle . I been all scenario . The worst part in software is planning failure.
@fknight
@fknight 2 года назад
This is an automated comment to display likes & dislikes for the video you're currently watching, since RU-vid decided to disable the dislike count on videos. Views: 62991 Likes: 3371 Dislikes: 80 Ratio: 97.7% Last Updated: Dec-29-2021 RU-vid, please don't ban or shadowban me. I learned how to do this from your own docs. Lol thanks.
@georgeuba5421
@georgeuba5421 2 года назад
Software Engineers usually have a minimum of Engineering certification(BEng, Msc, or greater) from a certified Institution. While Software developers may or may not have these certifications. Again Software Engineers do have the ability to develop Softwares all alone from scratch (Even though they work in a team): System design and Architecture, Programming and Maintenance.
@manco828
@manco828 2 года назад
From scratch yes, but all alone?
@samueln300
@samueln300 2 года назад
So I can call myself a software engineer? Cuz I've done this and I'm self taught
@georgeuba5421
@georgeuba5421 2 года назад
@@manco828 Yes all alone. It's possible if you are determined. It's not going to be easy though.
@georgeuba5421
@georgeuba5421 2 года назад
@@samueln300 If you meet those two criteria, then you can call yourself a Software Engineer.
@manco828
@manco828 2 года назад
@@georgeuba5421 nonsense
@slipoch6635
@slipoch6635 2 года назад
Software engineering typically has different units in a BCS. The engineering components typically encompass more of the architectural and mathematical elements of hardware and software. As pointed out, most software engineering jobs are pretty much the same as software programmer/developer. I would separate the scripters from programmers, as there is a significant difference to how you program for scripting languages as compared to programming languages, however there has been a lot of crossover with jitting and vms (Java), so I have no idea where you would draw the line, maybe programming is more syntactically structurally sound. But then VB. I know in some states in the US there are laws stating you can only call yourself an engineer if you have an engineering degree.
@carldrogo9492
@carldrogo9492 2 года назад
I don't agree with you on the "scripting vs programming" argument. The differences, if any are very negligible and it's more of a play on semantics than anything.
@0xSingularity
@0xSingularity 2 года назад
My degree is in software engineering, so I’m going to call myself a software engineer when I’m done 😂
@rachidtchaniley3605
@rachidtchaniley3605 2 года назад
Lol me too
@chrism6880
@chrism6880 2 года назад
Idk, my degree was in physics but I don't call myself a physicist 😅
@0xSingularity
@0xSingularity 2 года назад
@@chrism6880 maybe you should if you have a career that involves physics and have a degree in it?
@chrism6880
@chrism6880 2 года назад
@@0xSingularity lol I'm a software engineer now
@0xSingularity
@0xSingularity 2 года назад
@@chrism6880 very niiiiiice
@Mister5597
@Mister5597 2 года назад
I remember having classes called software engineering in college but not a single class was called software development. I associate software engineering as the documentation/planning part of software development.
@szilviemailje
@szilviemailje Год назад
@3wcdev878
@3wcdev878 2 года назад
Writing scalable code following a microservices paradigm, being aware of CVE and writing secure frontend code to prevent XSS and safe backend to prevent code Injection; dealing with CI/CD pipelines, following security standars, automation testing, build and release and of course keeping creative to bring new products to your internal/external customer that quickly bring value, such things differentiate an Engineer from a Developer, Engineering is the profession that consists on designing solutions that solve real world problems, without necessarily (and rarely) using React, Express and MongoDB.
@alexandrodisla6285
@alexandrodisla6285 2 года назад
Someone did said something deep. You learn to become a programmer. Then you become a developer. With addition of knowing how to choose and propose the best architectural solutions means you are now an engineer. A simple analogie. Developer uses framework. Engineers knows how to build a whole gat damn framework
@anthonywright5275
@anthonywright5275 2 года назад
This statement was underrated, and yet a great definition.
@Misantronic
@Misantronic 2 года назад
Following that definition, I would never ever hire an engineer. They want to build their own framework when there‘s tons of them out there? heck no.
@poisonpotato1
@poisonpotato1 2 года назад
Software "engineers" are like dental hygienists calling themselves doctors
@supermanley101
@supermanley101 2 года назад
Still not an engineer, maybe “software scientist” might be better, but the term scientist is reversed for those who does research to advance the field they’re in, so I guess that doesn’t work either lol. Developers calling themselves engineers is incredibly disrespectful.
@adamoneil7435
@adamoneil7435 2 года назад
I started programming in the mid-90s as what we often call now "citizen developer". I started with MS Access/VBA. Early 2000s got into Classic ASP development with SQL Server. I've been into C# since mid 2000s. I'm not wild about the term "software engineer" even though it's in common use, and it's not exactly wrong. It grates on my ear for two main reasons. 1) Because I think it betrays some status anxiety, a wish to be taken seriously as other "harder" engineering disciplines. 2) Because it denies/downplays creative aspects of software, affecting to be more mechanical and predictable than it is. I hear managers of various stripes use "engineer" as a way of (subtly or not) conveying an expectation that all projects should be reliably estimated and will go well if simply planned well enough. 3) Along these same lines, when developers put a heavy emphasis on the engineering title, I think it signifies a subordination to "design" sensibilities and sort of plays to the stereotype that "developers don't know how to design anything." I didn't watch your whole video yet, but I agree "engineer" and "developer" are interchangeable.
@rebelsdeveloper367
@rebelsdeveloper367 2 года назад
hehe . long time developer . me dont care
@johnbspringer
@johnbspringer Год назад
Software, Developer, Coder and Programmer These terms had hard distinctions pre-1980, in the days of main-frame computers. In those days the computing profession looked very different from today. Here are some of the differences: If you wanted time on the Main Frame your department was billed for the total number of CPU cycles that your program required to run to completion. Your program (a.k.a “job”) , never ran by itself but was run as part of a batch of other jobs through something known as JCL (Job Control Language). JCL scheduled your job to run at some scheduled time. Also, the resources that your JOB utilized (Modem, printer, tape storage) was also billed to your department. When, your job ran, you did not see the results first hand, but rather the results were saved to a file or printed and you were given the results after usually the next day.. If you are writing software your hand-written software would be submitted for compilation and your compile/run results would be given to you the next day. If you had a type or logic error,you would not know right away until you got your job results back at which time you would have to make the correction and resubmit the job and again for new results. As you can imaging writing, submitting, fixing and repeat is very tiresome and expensive. To correct this program, a coder was employed who was very experienced with the Main-frame. There were very few of those people in the company because only a select few were allowed access to these very expensive machines. The job of the coder was to type your hand-written script (called a code-sheet) into the main-frame. Today’s complex program would never have evolved if it was not for the development of the PC by IBM in 1981 (less expensive than main frame) and software interpreters offering instant error reporting. After the release of the personal computer by IBM in the 80s and Microsoft’s Windows operating system, many intelligent displaced workers seeking professional jobs found that programming computers was one of the few white collar high-salary jobs that could be obtained without a college degree. Because computers were becoming so prevalent and there were so few people that understood them, companies were hiring anybody that could program their computers. At this time the role of developer, coder and programmer was eventually filled by one person who was typically just called a computer programmer or software developer - but not an engineer. Then there came a time when the software programmer/developer became masters of their art and were hired into jobs that were heavily regulated by the government - think, Aerospace and Defense. The defense agencies and NASA had a requirement that only engineers were allowed to work on government contracts. In addition, most insurance companies providing coverage to engineering firms had the same requirement - only engineers were allowed to work on the design of the end-product. This engineering requirement prevented many companies from hiring extremely talented computer programmers/software developers that they needed. To counter act this problem, companies hired software developers/computer programmers and gave them the title of “Engineer”. Further more, because Software Engineer was not an officially regulated type of engineer there were no state recognized exams and license requirements. Of course this pissed of a lot of existing engineers who resented this free assignment of the title “Engineer”, but by the late 90’s this anger had largely passed and the term Software Engineer had become accepted. But the early 2000’s universities began to cash-in on the software craze and started offering degrees with a B.S in Computer Science. Depending on the University, these degrees often have a heavier math component than any other engineering degree. Think, Partial Diff-Eq, linear algebra, discrete mathematics, spherical trig as well as algorithm development. Old Terminology -------------------------- Developer - Translated customer needs and into software requirements for the programmer Programmer -The designer of the software Coder - Glorified typist and entrusted of the main frame Computer Engineer - Electrical engineer who build computer hardware Software Engineer - Developer + Coder that worked on gov contracts. New Terminology ----------------------------- Developer = Programmer = Coder = Someone who writes software code that is compiled. Software Engineer - Developer with a degree in Software Engineering or STEM or has equivalence experience. Computer Engineer - Electrical engineer who build computer hardware
@pedroalbuquerquebs
@pedroalbuquerquebs 2 года назад
In my country a BSc and/or MSc in "Computer Science" is typically called "Engenharia Informática" which directly translates to "Informatics Engineering".
@DemetriPanici
@DemetriPanici 2 года назад
I feel that they could be considered engineers for sure lol
@TsunamicBlaze
@TsunamicBlaze 2 года назад
Depends on what the programmer does. Not all programmers can do software engineering, but all software engineers can program.
@georgeuba5421
@georgeuba5421 2 года назад
@@TsunamicBlaze Does that include system design engineers? Can they program too? I guess not.
@TsunamicBlaze
@TsunamicBlaze 2 года назад
@@georgeuba5421 I mean a lot of engineers now a days learn to program/code to some capacity. Job titles are just descriptions for what someone is usually tasked with doing. My definition of a programmer is someone who can code. Very broad and generic. Like a highschool student who has been teaching himself how to code and working on small mini projects, I would call them a programmer/coder, or a hobbiest programmer. Once someone gets a job programing, if they do engineering stuff then sure, calling yourself an engineer is fine. "Developers" often get tasked to do engineering things as well, that's why both titles are synonymous. People often get too hung up on titles being a prestige thing. Tl;Dr: Not every person who can code should call themselves a software engineer. But at the end of the day, it really doesn't matter.
@georgeuba5421
@georgeuba5421 2 года назад
@@TsunamicBlaze Okay.
@petekelvin2736
@petekelvin2736 2 года назад
📌Engineers build tools and frame works, I don’t know who but someone needs to hear this, investment is the key,you can be rich like these millionaires by working your ass out,most of them don’t work upto 3hrs everyday.They earn passively from their investments which most minimum wage earners don’t do,life is sweet when you have different sources of income,invest in something to expand your earning
@hjups
@hjups 2 года назад
You forgot about the title Architect (though maybe that's not so common in smaller companies) - things like Software Architect, and Database Architect. There's also System Engineer, which is a much much broader term (not just relating to software), but is still applicable. Oh, and there are also far more niche fields like Embedded Systems Engineer, and I guess GPU stuff would be a Parallel Programming Architect? One thing to consider too if you want to label the job: are you engineering a solution, or designing a solution? I would probably say that engineering requires intentional forethought as well as performance validation, whereas design would more of be trying to solve an immediate problem in the moment. Although, that definition of engineering comes more from an academic background where there is a requirement of performance evaluation and comparison (in academia, you'll never get a paper published unless you show that your solution is much better than what already exists to solve your specific problem). A weird relationship there is that we often think of architecture as being design (i.e. for buildings), but when it comes to computing systems / software, performance metrics are highly involved making it clearly engineering (based on the definition I mentioned above). Just something to think about.
@Zarathes
@Zarathes 2 года назад
When I got my BSc in Information Technology from the University of Applied Sciences (Dutch education is kinda special) it did come with the title of Ingenieur (ing.). From my understanding this is awarded to most if not all University of Applied Sciences graduates from STEM field educations in the Netherlands. I can eventually apply for a Europees Ingenieur (EUR ING) title that is recognised within the EU as a means to guarantee competence if I want to practice my profession outside of my own country. Personally It's a nice to have for the effort I put in but regarding the whole debate on whether software developers are engineers. I think it might just be a culture thing. If I say I'm an engineer (ingenieur translates to engineer) , I refer to the level of my education. Outside of the Netherlands/Europe the title of engineer might have a different meaning or condition attached.
@hitchco
@hitchco 2 года назад
i think you nailed the difference for me with the ios example. i tend to attribute the term developer to mean a person who uses established platforms and frameworks to develop some specific implementation within the boundaries of those systems, sometimes inventing new behavior but mostly working within those established paradigms. I typically attribute engineering to mean that they build the platforms and frameworks and systems that others use to accelerate development, mostly working with core primitives and primarily inventing new ways to develop software. i also agree that it is not a particularly useful distinction in the US SWE/SDE job market and they are effectively interchangeable for any role, but that may just be commentary on how rarely corporations tend to innovate in the software space
@GeneralKazar
@GeneralKazar 2 года назад
Saying "the job says they are software engineers so they are software engineers" is not a valid argument. In other fields (civil, mechanical, aerospace, etc...) an engineer needs to take a specific engineering degree at the Bachelor or sometimes Masters level. They also need to be an apprentice for years 4+ before they can hold the title. Not to mention they generally need to belong to an organization (like IEEE) which certifies their abilities regularly. We are far from "Engineers" in the software field. It isn't unheard of in some very specific areas of software development to go through the steps needed to be a true software engineer, but when that person told you that we are not Engineers, they were right in 99%+ of the cases. We have just co-opted the term because it makes us sound cool.
@AlienAV
@AlienAV 2 года назад
I'll just quote Wikipedia: Engineers, [...] are professionals who invent, design, analyze, build and test [...] complex systems [...] to fulfill functional objectives and requirements while considering the limitations imposed by practicality, regulation, safety and cost. What "qualifies" you to have the "title" of "Engineer" in some other field is IMHO irrelevant. What qualifies you to be an engineer by definition is that you "invent, design, analyze, build and test complex systems". If I'm hired to do that, that makes me a professional engineer. If I'm not an "Engineer", because I didn't have some other "Engineer" hold my hand for 5 years, that's a pretty pitiful standard to set. PS, regarding "sound cool", I always considered programming to be "more elite" than the "classical" engineering fields. That's probably the reason I never called myself an engineer.
@muuubiee
@muuubiee 2 года назад
@@AlienAV So... Board Game Engineers? I think it's a bit much to demand to be called an engineer just because you build software systems. I think it mostly comes from an ego thing, people want to sound more advanced and important than they are. If you want a fancy title just go for a PhD, then you won't have to worry about an engineer title.
@AlienAV
@AlienAV 2 года назад
@@muuubiee I'm not sure what I'm missing... Are you positing counterarguments to my reply? Because it feels like my reply covers everything you said. If you assume board games to be complex systems, yeah, go for "Board Game Engineer", sounds awkward but whatever. This "just" you used... I don't know where that's coming from. Can't you imagine that "just" building a software system is sometimes much more complex that "just" building a bridge? Maybe you were only exposed to programmers who write "hello world" applications? And regarding "ego thing"/"fancy title", it's totally missing a point. I already mentioned, IMO "Programmer" sounds fancier than "Engineer".
@muuubiee
@muuubiee 2 года назад
@@AlienAV Going by some vague description or even definition of a title does not actually give any credibility to it. This is how you end up with kids thinking that ALL online/multiplayer games are MOBAs, or MMO's if they have a lot of players (i.e. CS is both a MOBA and an MMO). Engineer is a title you need an education for. The need for this title is due to safety reasons, and insurances. If you're working with integrated systems for trains, cars etc, you'd most likely have to be a software engineer, because you need to have deep knowledge to make certain that no accident happens. Of course, not all complex things will put people in danger... but, I think there's a certain complexity level required, and a certain level of understanding to be an engineer. Software developers wants to be high level and cool, so they take on the engineer title. They want the job to be more than it is... In 15 years it probably won't be much different from a step-up of fast food jobs. Since programming is mandatory in schools now.
@juanvitor6833
@juanvitor6833 2 года назад
@@muuubiee Your world view is cute.
@AlexandruJucan
@AlexandruJucan 2 года назад
I recall reading about front end engineer jobs. Nowadays, as opposed to 10 - 20 years ago, a lot of the business logic happens in the front end. With RESTful APIs that are so popular today, the back end may be the easiest part in some applications(not all) because most of the business logic and component/template rendering is handled in the front end. These also allow object relation mapping to be part of the front end for some frameworks, or for libraries such as React you need state management. Front end development is not anymore just about templating, styling and using JavaScript plugins. Developer is a broad term. In my opinion programmers, engineers, coders are all developers. Personally I make a distinction between programmers and coders and I do that judgement based on the code that I read. It may solve a problem, but if it lacks the quality that comes with knowledge of concepts or design patterns, beyond just syntax and language features, I call that a coder. Your language just that: a language. You can swap it. Your abstraction capacity is what makes you a programmer or an engineer and a university degree makes the difference between a programmer and an engineer.
@chrxnic_vxnity9900
@chrxnic_vxnity9900 2 года назад
Just the vid I needed , I wanna be a computer engineer but I'm currently in a software programming major
@abdelrahmandwedar
@abdelrahmandwedar Год назад
Great video, loved the chill vibes.
@Yasmine91646
@Yasmine91646 2 года назад
I misunderstood the title of the video; I was under the impression that it was about computer programmers not being considered Engineers, as in Engineers period, including mechanical engineers and electrical engineers. Some mechanical and electrical engineers don't consider computer programming to be engineering. I still get computer programming mixed up with computer science careers. This is an excellent video and I really enjoyed your take on this topic.
@whiterose7055
@whiterose7055 2 года назад
It's a very vague term in the video game industry now, (I started in 1978 in the Arcade Video Game industry) but it was originally intended to describe if you actually touched the code or not. If you actually programmed and produced the code you were a coder/programmer. If you engineered design and implementation of the application, but the actual production was allocated to others who coded/programmed you were a software engineer. Now a days there is little to no difference that I have observed.
@kevinchin8962
@kevinchin8962 2 года назад
Thanks forrest! Your video really cleared up a lot of my confusions, I'm only 10th grade and I've been thinking of what I want to do and what I'm interested in is cs but there is just too many various types of titles and terms and I had a really hard time to understand. If you can, can u make a video on explaining other terms such as api frameworks etc. Thanks and keep it up !!
@LesterFernandezIO
@LesterFernandezIO 2 года назад
API is an application programming interface. Basically anything that someone can interact with through code can be called an API. An API can be made for public consumption like the youtube api, or it can be made for only private use like when making a web server. A framework is a library that structures your project in a way that assists you in developing a specific type of software. Like there are frameworks to help you code AI, there’s frameworks for servers and of course frameworks for front end development. If your interested in CS I suggest you start coding if you haven’t already, the sooner you start the better.
@carldrogo9492
@carldrogo9492 2 года назад
Boruto's granddad! 👍
@briansanders1557
@briansanders1557 2 года назад
So first of all I know and work with ppl who don't have engineering degrees but know far more and are more reliable than those that do. So in regard to being able to do the work I don't think title matters. However I also see it as you can't get a professional engineering license (something that carries individual legal responsibility) without an engineering degree, so there is a big difference there
@ShiraIshikawa
@ShiraIshikawa 2 года назад
I think SE is different from SP, and it's pretty important if you spot them listed individually on job vacancy. In my experience SE responsibility is a bit above SP, since SE usually already think in system level, not a single program level. But I also think you shouldn't think about it too much, just read the job responsibility before signing the contract.
@TheJulietteCharlie
@TheJulietteCharlie 3 месяца назад
Great discussion! As some people already have said in my own words: Coding is an action, Programming a skill or craft, Engineering a discipline or field. At the end we are all developing Software. It’s like being a “Soldier”. As admiral or infantry captain, flight sergeant, guard: they all are soldiers from private to general. So I use “Software Developer” as the generic term of what I am and doing. If then someone needs it more specific, then I could specify in more detail. I won’t call myself “Coder”, as coding or writing code is just a fraction of what I am doing. If someone is claiming and naming himself “Engineer” or “Architect” then I theoretically would expect a higher education. But in practice you see everything: “Architects” just on their business card. But also official “Programmers” that make enterprise software run well designed smoothly full stack. You need 10 minutes to get, if somebody is into a field or not. It doesn’t depend on how many buzzwords are used.
@jzdude01
@jzdude01 2 года назад
My school has a software engineering degree, a computer science degree, and a computer engineering degree and each is very distinct. SE and cs are closer than CE is to either, but Se and CS still have fairly significant different meanings at my school, and I normally think about along those lines. Edit: but that’s me and my school, I feel like I don’t see the same distinguishing characteristics in use outside of my school and the companies that work most closely with it.
@hersheyss7466
@hersheyss7466 2 года назад
Hey I have a question. I want to get into computer science so I can do software engineering, but I heard that in college, only math is necessary but in university, you need physics (and possibly chemistry) for the software engineering program. Is that true? Thank you :D
@toddhisattva
@toddhisattva 2 года назад
What *is* regulated in the U.S. is "Professional Engineer" or "PE" or "Registered Professional Engineer." They must work under a PE for years and take licensing exams to get a state license. If you call yourself a PE and are not one you should get into trouble.
@billgillette2859
@billgillette2859 Год назад
The title 'engineer' is regulated. Not JUST professional engineer. Got 'engineer' on your business card in most states without a license and you can be prosecuted and fined for practicing without a license. My challenge is always this: software engineer, give me your business card. I'll turn you into the state board and they can explain the difference to you, along with a $5k fine in some cases.
@kingkiller1451
@kingkiller1451 2 года назад
Engineering: noun - the branch of science and technology concerned with the design, building, and use of engines, machines, and structures. Unless you somehow manage to write code that *doesn't have any structure whatsoever* or are exclusively copy and pasting other people work without ever creating anything unique and could thus easily be replaced by a computer yourself, it is on some level engineering. Engineers wanting to say a coder or programmer isn't an engineer is called either ignorance or Elitism, they just can't accept not being better than you and have to have everyone else think they are better too. It's no different than someone saying you aren't a gamer if you only play cellphone games or that you aren't a hunter if you don't go on African Safari's.
@carldrogo9492
@carldrogo9492 2 года назад
Yep, it's called Gatekeeping! 😉
@bruhdabones
@bruhdabones 2 года назад
Exactly, I hear this type of argument a lot from my dad and some friends of mine. Digital money like crypto “isn’t real” because oh no, a power outage! Except it does physically exist, in storage, just as an arrangement and movement of electrons. And what about a hurricane? Is that bridge an “engineer” made suddenly “fake” because it collapsed during a disaster? Language evolves with the time, and such narrow and precise definitions shouldn’t be interpreted literally or as a prescription for language use. The internet exists and software development is inherently a form of engineering. Some of my engineer friends are butthurt because most of the required classes for CS are easier… i suspect it has more to do with me making $30,000 from an internship in a summer
@strtfghter02
@strtfghter02 2 года назад
I agree with the term that engineer is building with physical items and not digitized things. In other words, software work shouldn't be considered engineering due to the fact that software doesn't have human health, safety and welfare to consider. This is the why the government won't certify any software engineer as a licensed engineer because human safety risk isn't a factor when coding. HOWEVER, I also wouldn't put engineers on a pedestal when it comes to designing. I think software developer is a much more complex and respectful title because development infers constantly evolving which is at the heart of software. Physical engineering is at its limits, but with AI and neutral networks are evolving, it's in constant development. Last point, if you are seriously still looking for that creativity confirmation to your job/work, why not call yourself a software architect. IMO that is more prestige and complex than an engineer and is used in other fields both physical and digital.
@bruhdabones
@bruhdabones 2 года назад
@@strtfghter02 what planet do you live on? “Software work shouldn’t be considered engineering due to the fact it does not impact human health.” So planes don’t rely on software? What about medical equipment? The person choosing the materials and the person designing the mechanisms all have the same duty of care as software engineers, because the software engineer who writes code that causes a heart to stop on its 65000th beating is just as bad as a structural engineer who chooses carcinogenic materials in sensitive components.
@codyscorner1829
@codyscorner1829 2 года назад
With the advancement of techloigy the definition of the word “Engineer” has been appended to. It only used to apply to psychical objects but that has changed as computers and creating software takes some type of engineering skills to build just like you would build a building of a bridge. This is because they are very complex in nature, and you must know how things work and how effected thru the structure of the code. Just like you need to know how things are affected thru the structure of a building or bridge.
@dbrakowski
@dbrakowski 2 года назад
In the 90s I got my MCSE (Microsoft Certified System Engineer) cert---the engineers used to lose their mind that it had the word "engineer" in it and would scream all the time. In the long run none of it matters so long as 1) you're doing interesting work; and 2) getting paid what you're worth.
@carldrogo9492
@carldrogo9492 2 года назад
They are so easily triggered! 😂
@Littlefighter1911
@Littlefighter1911 2 года назад
As a computer engineer graduate I got very confused by the title. Because most of what I'm doing is programming. Yes, close to the hardware. I know a thing or two about how the computers are built. But most of my job is programming. I think the general idea is that engineering is more about the planning and structure of the project, than it is about execution. And depending on which approach you use, it can require more knowledge than just being able to program. You need to know about common pitfalls, strengths and weaknesses of certain patterns and I think most important of all, not forcing the use of a specific pattern if you know it's unfit for the task, just because you know that many people know how to use it. I think that's the idea, that many people have when differentiating programmers and engineers. But that being said, engineers would do a terrible job, if they weren't to program themselves. After all how would they know if their plan makes sense when they've never executed it themselves?
@RaterisimoCBA
@RaterisimoCBA 2 года назад
I thought you were going to start with the definition of Engineering, according to wikipedia that would be (Engineers): "... professionals who invent, design, analyze, build and test machines, complex systems, structures, gadgets and materials to fulfill functional objectives and requirements while considering the limitations imposed by practicality, regulation, safety and cost." And from there we could think the "Engineer" title is higher than just a "programmer" (a programmer being someone who is given a Use Case and is able to interpret that and translate it into code). A programmer could (or could not) have a smaller picture of what the whole system does or what are the relations withing components or parts of the system, etc. The thing is that in IT it's super subjective and I think that was your point all along in this video (and I agree with that, kinda). I personally associate "Engineers" to people that are involved in the Architecture or Planning side of things and for sure they have a broader picture of the project (maybe that's what a 'Technical Lead' is after all ?). Anyways, it's all just terminology and it doesn't mean it applies 100% to everyone and all cases. Cheers !
@georgehelyar
@georgehelyar 2 года назад
Where I work everyone in the department is an engineer. Back end? Front end? QA? DevOps? SRE? All just engineer. My job title is lead engineer because I'm also a line manager, but that's it. We do this to make people "T-shaped". That is, you may have a specialty, but you can also do other things. I write mostly product code and unit tests, but I also help out writing BDD style integration tests, writing CI/CD pipelines, etc. An engineer is just someone who makes something to solve a problem.
@wixse.quisee
@wixse.quisee 2 года назад
Why I did an indeed search, the software engineer jobs were the same as developer jobs, however, I did see that typically the engineer jobs required more experience 🤷🏽‍♂️
@ScottyDMcom
@ScottyDMcom 2 года назад
I suspect that for some the distinction is a degree from a university. My local university has very similar general education requirements for BSEE and BSCS (e.g. both require Calculus I, II, & III, two courses each in physics, chemistry, and biology, etc). However I noticed a few differences. The EE degree requires differential equations, but rather than that the CS degree requires discreet mathematics. So IMO both have worked hard to earn their degree and therefore have both earned "engineer" in their title. However a much higher percent of coders are self taught. Have they earned the title "engineer"? Plenty of people with the degree will object.
@timil3hin983
@timil3hin983 Год назад
CS major in september here....quick question so if web developer, mobile developer, etc are categories of software developer what's the term for people that program softwares for desktop (Blender, OBS, Adobe,etc) I refer to them as desktop developers but I'm not sure if that's the right term
@islandsfuldkorn
@islandsfuldkorn Год назад
That would be a software developer.
@JesmineChaudhuri
@JesmineChaudhuri 2 месяца назад
ForrestKnight My father was an engineer and he used to work in complex machinery like repairing fighter jet's parts in Indian Air Force. I have seen and grown up by seeing him doing complete electrical connection designs for our home. My love with device and tools started since then and I was assistant to pass him all tools he needed to repair small things at home. I am the 2nd generation engineer in my family. I have hands on experience for building small circuits during graduation and in post graduations I have learnt programming and became software engineer. I am an engineer by soul and I am proud of it.
@nwstraith
@nwstraith 2 года назад
I'm a full stack developer by your definition. I can do the database work, but our full dba can write queries that blow me away still. I think of these things in terms of the amount of knowledge necessary to do the job. A WordPress basic website takes very little knowledge as you can use the existing templates and wysiwyg editor to never touch code. That's calling someone who knows word a developer. But if you know how to get under the hood, perhaps you could qualify. At a minimum know logic and data structures.
@Tech-nicallyBlack
@Tech-nicallyBlack 2 года назад
Is that a budgeting tool? I’ve been watching all your videos. It helps with privacy and budgeting?
@Michael-pw6qk
@Michael-pw6qk 2 года назад
Developer vs. Engineer is like QA vs QC, or Supervisor vs. Manager. Engineering (in software) is a subset of Development. You must engineer to develop the software. Like QC is a subset of QA. Scope changes in engineering are rare, common occurrence in development, yet, you must still follow engineering rules. Engineering buildings, hardware, etc. totally different animal. Software requires a ton more flexibility (timelines, scope, etc.) that engineering does not allow, thus development.
@StandardDeviationMusic
@StandardDeviationMusic 2 года назад
I would agree mostly with this. My job title is engineer, but the majority of my day to day is programming in mobile land. If there is any distinction at all, I would say engineers venture into areas of research or new tech more regularly than a developer who stick with standard frameworks etc. But most of the experience between the two overlaps
@blastygamez
@blastygamez Год назад
For me coders and programmers are a very veeeeeery big difference coding is for me everything with a programming like doing/thinking/perspective like coding with blocks or scripting with Lua and programming is for me when u actually program something that gets compiled to the targeted native computer instructions or/and putting manually the computer instructions, so a programming language for me needs to be compiled/assembled or manually done
@cruzjay
@cruzjay 2 года назад
Front End Engineer is a thing now as well. I’m seeing it more and more as a job title. Many people now see client side dev as being divided between back and front as well.The terms “back of the front” and “front of the front” have been thrown out there. The “back” meaning more biz logic, heavy on the frameworks, TypeScript, experts in hooking the apps to fire base, jamstack stuff and what have you. It is expected for these “back of the front” engineers to know HTML and CSS, but it’s de-emphasized a bit. I’d say these people are just client-side JavaScript developers. Then the “front of the front” is just what we’ve known front-end to be at least until 2010, which is focused on the design, ui, semantic html, accessibility, css ninjas, overlaps with web design (is this even a thing?)
@crmcguire1974
@crmcguire1974 Год назад
Personally, I have a Computer / Electrical Engineering Degree (Software Engineering was rolled into the program), and there honestly is a pretty core difference between a CS Major (Developer) vs an Engineer. Software Development is one component of an engineer. Where the engineer is set apart is fundamental knowledge of not only how to code, but how the code operates on a specific OS, computer/hardware, as well as how compilers work, caching strategies, essentially the engineers should ideally know the code, then the details of code compilation and how the interaction on the hardware occur. I also did catch a comment about Front End, linking Front End Development to CSS or web application buildout. Again, this takes a bit of a simplistic approach categorizing all front ends as web pages. A true front end engineer or developer should understand that solid/performant applications should be represented by more than a box within a system architecture diagram. True front end focused roles create thoughtful front end architectures, possibly with middle-tier microservices where business logic and data manipulation can be pulled off of a client machine. The front end also focuses on how the application is delivered. It may be a web page. It may be a SPA (single page web application). Perhaps it may be best as a WinForms or WPF app. Soon, front ends may be combinations leveraging WebAssembly or Blazor. A true front end engineer needs fundamental understanding of the numerous delivery mechanisms, again the hardware to host the UI, architecture strategies, caching strategies, and to level up this, must require a sense of design, empathy to the user needs, and strong communication to work closely and build out business workflows. So as engineering and development really does have differences, front end roles can range from UX Designers, UI Designers, UI Devs, Middle-Tier Devs, etc. Truly robust platforms should be comprised of a mix of talents from BackEnd focuses, FrontEnd Focused, straight developers/coders, and engineers to drive performance and scalable robust architectures.
@TheParkerJam
@TheParkerJam 2 года назад
For WordPress, I'd consider them a webdev if they write any code whatsoever, including CSS. If they just install WordPress and some plugins, I would think of that more like an IT role than a coding role. Where I work, we use "Frontend Engineer" and "Frontend Developer" terms equally and interchangeably. A term I've never heard, though, is "Web Engineer". It's always "Web Developer". I agree most of the titles generally don't have a lot of universal meaning or distinction, so I don't think about it too much outside of when I'm interviewing. (Coder is never used in that context. Web Developer, I've found, tends to command a lower salary than any of the other job titles discussed even if there's a lot of overlap in job roles.)
@another_coding_channel_argh
@another_coding_channel_argh 2 года назад
I watch a lot of your videos and I noticed that skewed thingy on your right. Why do you have it like that??
@torarinvik4920
@torarinvik4920 2 года назад
The way I see it is you have programmers that work with systems. And programmers that work with users. And anywhere between those. The systems "engineer"(using the term engineer loosly here as programming is not about math and physics in the same way that construction or mechanical engineering is) focuses on communicating with hardware, embedded, OS, drivers and system software of any kind, compilers and other areas where the end user is not the main focus. Web and mobile applications focus heavily on user interfaces, design and the overall user experience where the end user is the main focus. Then you have stuff like AAA games where it's more 50/50 all depending on what part of the project you are involved in. Other areas include academic programming for instance AI/ML, scientific computation, simulations ect. Some people are excellent at communicating with the user and are really smart in terms of understanding what end users want and want to pay for. Others are technically gifted but have very little people skills, and most are somewhere inbetween. We need to understand that different people are good at different things, what one person think is easy may be challenging for another individual and vice verca. However some skills are more rare because they are less practical, like math. So evolution has not selected for such features, that makes them more valuable in some sense and therefore have higher status.
@Nethanel773
@Nethanel773 2 года назад
The difference I am seeing between all these terms is what is created mostly or entirely machine interaction and what is mostly or entirely user interaction.
@stanmuller2870
@stanmuller2870 Год назад
I have a question: Why are no job titles with the term "Enterprise"? My entire 17 years have been internal use-only development, but none of the titles ever used that term. For WordPress, I think "WordPress Developer" makes more sense to me because I was once a "SharePoint Developer" before I became a "Web Developer" and there is enough distinction between some of the other technologies they use as a required skill set.
@sinistan1002
@sinistan1002 2 года назад
originally the term "engineer" in anything computer related was reserved for actual engineers as in electrical or electronics or maybe computer engineers i.e. those that actually designed the hardware and low level pieces, but they also code / program / develop software. later the term was used I think incorrectly for any kind of software development or software testing. really depends on the company or hr or hiring manager how they want to list a job and/or their perception of what they want or at least think they want in someone. i've also seen "program engineer" and really anymore that fits the best as a lot of developers and "software engineers" end up copy/paste crap off stack exchange or elsewhere
@thetechconsultant
@thetechconsultant 2 года назад
I have seen the title front-end Engineer and back-end Engineer listed on many job applications.
@nukeman444
@nukeman444 2 года назад
The term "Engineer" has been around at least a couple of centuries. *Software development* as it stands today is still *relatively new* which means *we still don't know where to put the title.* I was hired with the title "Software Engineer" and it lived up to the title. *I was in charge of the whole system* which included shipping, database, network, e-commerce, back-end coding, wrote applications for the mechanical engineers, sales and accounting. BTW, the engineers actually answered to me when it came to getting their products out, but that was only because I had watch over the revenue which included the sales, e-commerce and accounting departments and money is the reason these companies are in business in the first place.
@Hawkeye234
@Hawkeye234 2 года назад
In Canada it is technically illegal to refer to yourself as an engineer in any professional capacity. That includes people who call themselves software engineers. However, the PEO, that’s Ontario’s governing body for engineers, does not currently pursue the 95% of software engineers who use that title in violation of its rules. But in theory it could if it wanted to, and as software becomes more pervasive and the potential for poorly written code to cause harm grows, it may decide to change its stance on that.
@pedro.zurita
@pedro.zurita 2 года назад
My way of thinking: Coders: write code that is mainly to build designs. Programmers: write code that involves functions (programs). Software Engineers: design the way things will work and how functions will process or execute. Front-End Engineer: designs and builds the way the front end will acquire data and how it will be displayed. Back-End Engineer: designs and builds the way the back-end will store data and how the front end can access it. Full-Stack Engineer: Unicorn that eats rainbows and poops magic. Software Developer: Software engineer that is developing software from ideation to creation. Point to point.
@RobR99
@RobR99 2 года назад
back in the very early 90's I knew someone from a software development company I was hoping to get a job with. They had very clear definitions. Developer/ Software Developer = The company that develops the software. Software Engineer = The person that designs the software, libraries, modules, resources, etc. Programmer = The people that actually create the software. Coder = Writes the code for "XYZ" function. The engineer would say we need a library to do these related things, and even define an API interface. The programmer would create the structure of the library and assign specific functions to individual coders. The coders would write specific functions like "int find(char c, char *str)" That the programmer would then integrate into the library. A person would start as a Coder to prove they knew what they were doing. Eventually they would move up to Programmer then Engineer. The problem with the confusion I think came about with a lot of independent developers that did everything themselves and so used whatever term they wanted. That then moved into general usage and eventually it all got jumbled up.
@AhmetKaan
@AhmetKaan 2 года назад
*Pain of regret is much worse than the pain of discipline...*
@higorgranzoto2416
@higorgranzoto2416 2 года назад
This is how it goes if you consider the architect: If the enterprise is using the word Engineer, is that because there is an architect in the team or a team of architects. If the enterprise is using the word Developer, is because the architecture is defined by the team or squad. If the enterprise is using the word Web, is because the they need to differentiate from IoT, or mobile, or even embed programers, because embed programers are more low level coders (closer to the hardware) using languages like C and C++. Web and mobile programers are high level coders (more distante from the hardware), using high level languares like HTML, CSS, JS, Java, Python, Ruby, and so on. If you consider the architecture too, then: All major enterprise software is breakable in 3 tiers, the presentation layer (front end (what the user see)), the business service layer (back end (what the user don't see)), and the persistent layer, the database. Usually the back end programmer also do the database modeling, because, well, is what the user don't see and because it's natural more productive. And all of them are Programmers or Coders.
@daon23
@daon23 2 года назад
I believe most of this people feel in a way threatened wether they want to admit it or not. The fact that someone who didn't study engineering can do their job (and sometimes even better and for less pay) scares the crap out of them. Again, wether they're conscious of this or not.
@daon23
@daon23 2 года назад
I'm an actor and it's the same with university/acting school actors such as myself and "self taught" actors. Well yes, I spent four years and thousands of dollars studying, this dude just acts as a hobby and it's better than me. Get over it and stop crying about it.
@automationkingss2665
@automationkingss2665 2 года назад
Im an electrical engineer that became a software developer, my job title is software engineer because I am an engineer. I honestly dont know why other people care.
@Rubenz343
@Rubenz343 2 года назад
Me too, but my title is software developer. I don't get paid less for that lol
@amirrahman853
@amirrahman853 2 года назад
before computer advancement engineer's used to build machines with raw wires and some components to provide some sort of automation the same things are now happening in computer with more sophisticated way (coding) instead of working with direct hardwares so its just an advanced form of engineering
@paolaanimator
@paolaanimator 2 года назад
Thanks for the video! I am a newcomer and I am very much a newbie, lol. So, let's say someone creates game apps for iOS or android, are they a mobile app developer for iOS and Android? What about those who code within an application like UnReal Engine 4 or Unity? I've been into video games and just curious what is the label for those who code video games or mobile game apps. I personally make 3D models and animations but I am also very curious to learn some coding on the side as well.
@LesterFernandezIO
@LesterFernandezIO 2 года назад
Lots of job titles for ppl who do 3D Models and animation say 3D Artist but once u get into the code u can also be called a Game Developer
@joefrisco
@joefrisco 2 года назад
I think within companies any title can be used. Just don't start a company with the title containing "Engineers" or "Engineering" and or offer Engineering Services of any kind to the public. Unless you have professional engineers on staff. Also the firm will need to be registered as a engineering firm. This requires 51% ownership by a professional engineer(s) or other requirements if it is a public company. I worked for a large fortune 500 company. I was hired in as an engineer. At lot of the engineers in the company during the 1990s and 2000s found their way into software development/support. Because of the nature of the business and the company had to operate and rely on licensed engineers for a lot of the other work. This resulted in all of us doing software development receiving a title change within varying levels with the developer/analyst role.
@nicholashanson9508
@nicholashanson9508 2 года назад
i think a more relevant question is why has the word "engineer" become so over-used recently: because people want that prestige that comes from the word, and that prestige comes from traditional engineering
@geneanthony3421
@geneanthony3421 2 года назад
Do believe MS even had to change the name from MCSE because they weren't allowed to call them engineers.
@carldrogo9492
@carldrogo9492 2 года назад
@@geneanthony3421 what is MS and MSCE?
@carldrogo9492
@carldrogo9492 2 года назад
The word Engineer is thrown around.
@geneanthony3421
@geneanthony3421 2 года назад
@@carldrogo9492 used to be Microsoft Certified System Engineer. Now it's called the Microsoft Certified Solutions Expert. Red Hat used to also have the RHCE which is still the Red Hat Certified Engineer.
@bruhdabones
@bruhdabones 2 года назад
There’s no prestige in most engineering anymore, it’s a commodity degree unless you find your way to a big company… My structural engineer friend does glorified data entry to calculate the strength of windows for a building. My civil engineer friend does the same thing, except he checks that the architect isn’t certifiably insane by entering data about bridges into software… Unless you’re out there designing really complicated things like circuit boards or researching new ways to make a wheel, engineering jobs have become data entry for $60k/yr
@masterkoster
@masterkoster 2 года назад
Wouldn't software engineering be working on projects with the whole picture in mind from A to Z. And software developers more specialized in a section?
@SomeAndrian
@SomeAndrian Год назад
Those are call Architects
@masterkoster
@masterkoster Год назад
@@SomeAndrian Huh alright thank you, when I look it up the term they always used would be software engineers. So if that's not it what is the clear difference between a SE and a Software developer
@SomeAndrian
@SomeAndrian Год назад
​@@masterkoster Nothing. I've been working in the industry for 18 years and I don't really care about the title. I can do the tasks. I need them to match my skill with the $ amount the rest is meaningless, and if they insist to add meaning that's only going to drive me away from the company.
@masterkoster
@masterkoster Год назад
@@SomeAndrian Huh okay thanks for explaining this fo rme!
@coolbrotherf127
@coolbrotherf127 Год назад
In some of the other industries like embedded systems, video games, simulation, and various types engineering, usually I've seen that the people labeled "programmers" in those companies are often just the junior devs. They may be good at programming, but don't have the knowledge and experience to design the overall architecture and systems used in the project, but know how to code the implementation of those things once the Senior developers have created the plans. The "Software Engineer" is often the senior dev who does have the experience and knows how to design a large project from the bottom up. I think that's what that commenter was trying to communicate.
@ceeph36
@ceeph36 2 года назад
I have had the title of Quality Engineer for about 18 years. I have worked in the automotive and aerospace industries for some of the largest companies in the world. I do not have an engineering degree although many quality engineers do. I have worked with some brilliant Mechanical Engineers and also some that I would not let engineer toilet paper because when they were finished with it it wouldn't take shit off anything and I have seen many non degreed engineers that could engineer circles around them. It is not the piece of paper from a school that makes a great engineer but the skills you acquire and how you use them.
@tesso5243
@tesso5243 2 года назад
i call cs students IT and always ask them for help with wifi and printers so they know their place
@shahabjami3161
@shahabjami3161 2 года назад
this killed me lmfao
@javiergut
@javiergut 2 года назад
What does it matter when the 3 of them can make a decent amount of money, feed their families and keep learning what they love the most?
@danielkohari2670
@danielkohari2670 2 года назад
Best comment I have seen ever
@0Mynameisearl0
@0Mynameisearl0 2 года назад
Very sensible comment sir
@Britney.J
@Britney.J 3 месяца назад
I'm late to this party, but it's an interesting topic. My partner and I have had this conversation before, since he is a professionally licensed engineer in the US and I work as a developer. I mean -- there's no hard feelings in the convo -- it's just an interesting topic coming from different perspectives. In his world, he had to pursue a degree from an accredited institution, take and pass a FE exam, do an internship/apprenticeship/ gain work experience for a certain number of years, and then could qualify to even request references and apply to take the PE exam (a professional licensure exam) to actually call himself a professional engineer that's licensed, and then had to sit for the exam for 9 hours and pass it. To be a developer (and I do similar work as co-workers with titles that include the word "engineer") I just went to school, got a degree, and kept learning. I may not have even needed to go to school. I'm not really "certified" or licensed in any way -- just have a degree. And I haven't needed to pursue anything different for my own work world. So engineering as a concept - yea I suppose it's all how you define it -- and there's some strong opinions there for some, which makes sense considering the work involved for those with a PE title in the US.
@danny_petrov
@danny_petrov 2 года назад
Generally, I don't really mind how people refer to their position title or whatever, but here is the way i view it. I believe (as somebody mentioned in another comment) that engineers tend.to come up with solutions to fix new problems. That is why we have infrastructure engineers (note I am comming from a network engineering background) who 'engineer' the communication between the hardware that programmers tend to use. This, in my mind, means that a software engineer is somebody, who develops a back-end service and is also capable of modifying the underlying hardware configuration (using web as an example, but it applies to other titles as well). The thing is, we are virtualizing a lot of the technilogy, which means that software engineers need to understand the underlying communication principles of the virtual 'hardware', which technically makes them 'engineer' new solutions a lot of the time. That went longer then expected xD. Sorry about that.
@Xatitionarion
@Xatitionarion 2 года назад
Ok, I know there's a lot of posts down here that mostly say the same as me, but if I may expand this with my experience as a fresh out of college guy. I finished a masters degree in automotive software/hardware development so i get the title of automotive software engineer. This title entices engineering disciplines or rather skills like project management, planning, designing architecture of software/hardware, but also of "raw" programming and using technologies other people developed for solving the problem at hand - but what I also gained from college was a sense of pride to be called an engineer, since not everyone spends 5 years of dedicated learning process to achieve a title, AND an obligation to make the best use of the knowledge I gained and will gain from work experience to better the life of those who are not an engineer, or in other words help solve problems of today. So I would say an engineer in any field is someone who completed 5 years of an engineering degree - a direct result of their education - and most countries and big companies would agree. While on the other hand what you are called in a company or what your "job title" is, is totally unimportant. Also, I know that in this day and age you can get everything online, and some people could know more than you even if they don't have an engineering degree - kudos to these people, but everyone around software almost in 99% of cases starts as a junior and grows steadily, now how much they can bring to the company is up to their own persistence and willingness to learn new things. Also I like to think of engineers as practical scientists since not everything is written in the books, something's also in getting your hands dirty.
@anthonyfonseca4263
@anthonyfonseca4263 2 года назад
as someone who just listened to you blabber on for the last 3 videos straight lol [le derp here] for the first time, stay gold brother.
@marcofilho
@marcofilho 2 года назад
I'd say, as a Junior, I develop and engineer my own apps. But within the company I work for, definitely I'm only a developer. It comes down to what "engineering" stands for and what are your responsibilities to the whole process. Though, to be fair, traditional engineers don't stop being called "engineers" when in a Junior position. That being said, the criticism around the term "software engineering" is still raised only by uneducated people. The first discussions and use cases regarding it were still in the 60s. There are countless books and huge names about this theme (Bob Martin, Martin Fowler and Ian Sommerville, to name a few). It's dull to explain to theses dummies how big of a Science it is and how we study it in basically every IT graduation.
@itpugil
@itpugil 2 года назад
From my experience(where I am), engineers be it civil, mechanical or what, want that term exclusively for themselves. Why? 1, Because engineers go through certain board exams and that somehow determines their worth, therefore stressing that it puts them on top of other courses like a badge of honor. Somehow emphasizing that their course is the "hardest". 2, they don't want that term(engineer) thrown around simply to those who didn't "earn" it(e.g. those courses that didn't have board exams). I remember some of them looking down on CS and IT students because we didn't have and need board exams since technology standards keep changing. I remember back then a friend waved around his status of being an engineer(that time he has not passed the board yet), was salty because the IT industry was booming at that time and said that engineers are better because of x and y reasons(e.g. being paid more supposedly). Several years later, fast forward to the pandemic, people realize the practicality of remote work, where IT shines the most. And now he is asking me and others what programming languages to learn, he is now starting on python.
@raees2473
@raees2473 2 года назад
🤣🤣🤣😭 People who are traditional engineers or currently studying traditional engineering tell me web devs are not engineers😂🤦‍♂️ They tend to speak like they have superpowers🤡😂😂
@jamesdreher3975
@jamesdreher3975 2 года назад
I think the person/Tech who wrote the comment that started this was looking at the idea of schooling level vs OJT/training.
@bulbacode4380
@bulbacode4380 2 года назад
A chemical engineer uses processes that were developed long before them to do something like, idk make tire rubber. Does that make them chemical developers instead of engineers? It’s just a title, dev engineer programmer, they all mean the same thing in the software space. That’s after 5 years in the industry at multiple companies.
@ruthy08
@ruthy08 2 года назад
As a full-stack web developer/instructor: I tend to use engineer to basically refer to logic languages. C#, Java, etc. I think this individual may have a degree in one of the professional engineering fields and doesn't like when we call ourselves that because we don't need all the college.
@bobDotJS
@bobDotJS 2 года назад
So do you think 'JavaScript engineer' is an oxymoron?
@ruthy08
@ruthy08 2 года назад
@@bobDotJS I actually thought of that as I wrote this. Thanks for calling me out!!! I'm not sure how I feel about it. Thinking about it makes my eye itch. 👀
@samulinukala585
@samulinukala585 2 года назад
I mean when I graduate my degree will be game programming engineer but we are constantly told we might not make games in a company when we get a job.
@frannelk
@frannelk 2 года назад
I think that some people want to make the distinction that an engineer got a universitary degree and the other learn on the go, not degree and so for,.............................. but to me if you are self-taught and you handle the topic like you went to university, or even better, you are a bloody engineer. In fact some people go to university with hope to make money after having a degree and their lack of passion just make them to approve with the minimum score, and when you are self-taught because you love the topic, you develop the skills way faster and more solid. In the end what matters is to get the job done AND keep improving.
@RunDaRabbit
@RunDaRabbit 2 года назад
It's 2021. Identify in whatever way makes you happy 😉
@mojjammil
@mojjammil 2 года назад
Frontend Engineers are a common job title nowadays even at FAANG corps. I used to call myself a Fullstack developer until I started working at an R&D software engineering job which was titled software developer and then was eventually promoted software engineer role. Did the responsibilities change much? Not significantly but it was a role which I had to grow into with more domain knowledge not just coding skills/experience.
@arnabdas7650
@arnabdas7650 Год назад
so because frontend engineers is a common job titled and that even FAANG corporations do, does that mean that is right? If everyone does a mistake does that mean that you have to do it to? An engineer is someone who cleverly designs to fix real world problems. You say that your responsibilities did not change but that your job title went from "fullstack developer" to "software engineer". That means that you are not an engineer. You just call yourself one. FAANG corps can say whatever they want, they dont work in the aerospace, medical field.
@mojjammil
@mojjammil Год назад
@@arnabdas7650 I do work on designing systems which work on solving real problems...like real real problems. I work on a system which manages data network that we're using right now - backbone infrastructure of mobile data communication. The responsibilities still didn't change much but the impact of my work has. Domain knowledge and having team - project wide impact led to my growth more than engineering competency.
@draftingish4833
@draftingish4833 2 года назад
Hmm I always thought, Software Engineers/ Developers did more of the planning and the overall development of a project and Programmers, actually did the code? But I agree most everyone who building software is a programmer at some level.
Далее
So, you want to be a programmer?
20:43
Просмотров 67 тыс.
How Many Programming Languages Should You Learn?
14:12
Просмотров 120 тыс.
Тёмная сторона Кореи @sorrykatana
00:54
Fazendo MÚSICA com COISAS ALEATÓRIAS 🎵
00:24
Просмотров 6 млн
Why 75% of Engineers Will NEVER Work As Engineers!!
8:03
6 Mistakes Beginner Programmers Make
16:30
Просмотров 154 тыс.
My Regrets as a Computer Science Student
11:25
Просмотров 2 млн
What You Need to Know for Your Coding Career
16:31
Просмотров 378 тыс.
3 Types of Algorithms Every Programmer Needs to Know
13:12
The Brutal Truth Behind Tech Layoffs
23:50
Просмотров 368 тыс.
Why 95% of Self-Taught Programmers Fail (Honest Advice)
12:16
What Professional Software Engineers ACTUALLY Do
15:57