DEV Community

Cover image for Full-Stack Developer Vs Software Engineer

Full-Stack Developer Vs Software Engineer

Andrew Baisden on September 18, 2020

It can be complicated for some people to tell the difference between both roles as these days there is quite a bit of crossover. However there are ...
Collapse
 
scroung720 profile image
scroung720 • Edited

First of all, thank you for bring in this topic, I believe that what you said is mostly true.

Second, I believe that our reality should not work in this way, about the blurred differences.

The big problem with our profession is that is very young the first personal computer was introduced to the market 50 years ago. Compare this with medicine for example which has been around for thousands of years. The two terms, enlisted by you, have been grown organically. I think both of them are use inappropriately. Like software engineer, there is no reason for calling engineer to someone that can follow a tutorial and create an app or a module for a system. The reason for calling Software Engineer someone should be because they are practicing software engineer not because of the kind of work they do. I know people that can make apps in C++ and they don't care about SOLID, Refactoring, TDD and of course they are all the time wasting time using wrong approaches to solve problem.

I think that any programmer doing any kind of code for any purpose can be Software Engineer as long as he is doing it professionally, which means prepare themselves continuously. I am reading a book called Software Engineering at Google in the first chapter they define software engineer as a thing which is in 3 dimensions, regular programming is in 2 dimensions, you combine knowledge and skill and you get program. However, when you do software engineer you want to consider a third dimension which is time. Once you create system to scale to resist years to pass, you are doing software engineer.

Collapse
 
sarafian profile image
Alex Sarafian

I consider everyone who works with software a software engineer, devs, testers, ux, architects, ops, scrum master, product owners, Deb managers etc. That is my personal opinion and it is high time the industry removed the stupid segregations.

On a very personal note, maybe that would also stop irrelevance infiltrating the industry and finally bring some alignment to all involved parties to what it takes to design, build and operate software. I'm sure that would scare away some people, old school style.

Collapse
 
licocep369 profile image
licocep369

Great stuff on full stack and software development engineers, today I know the what exact difference is. Thank You Andrew.

Collapse
 
mjgs profile image
Mark Smith

It’s always interesting to read write-ups of job titles, because as time moves forward the roles change but also people have differing views.

The way I saw it was that Software Engineers were more generalists, getting involved in pretty much any aspect of computing, whereas Full-Stack Developers were more specialised, being concerned primarily with web development.

Collapse
 
190245 profile image
Dave

Slightly tenuous links made here.

I have in the past, been the only Developer to work on a system, that included a front end component and back end component (and DB), but it was only accessible within the company (not accessible via the Internet).

I have also in the past, worked on a Development team where my Java code (that you list as being the realm of Developers, not Engineers) was compiled and then installed somewhere that the OS could access.

I'm also pretty sure that the people that wrote parts of MS Office, Adobe etc, were Developers, not Engineers. The popularity of the product is a function of the marketing department, not the job titles of the Dev team.

To me, the thing that separates Developers from Engineers, is their viewpoint (forgoing the debate around "Engineers must have qualifications"). Developers have a "ticket munching" mentality, even if Senior. Engineers have a bigger view, and know when it's sensible to go have a chat with a BA to clarify they actually meant the thing written in the ticket, etc.

Collapse
 
attkinsonjakob profile image
Jakob Attkinson

Software Enginner is an academic degree that you get once you graduate from technical universities.

Full-stack developer is a self-imposed title based on the experience one has in the line of work.

So, if you graduated from a faculty like computer science and have the experience with all the stuff you mentioned above i guess you can consider yourself a full-stack software engineer?

Collapse
 
andrewbaisden profile image
Andrew Baisden

Good question. Ironically the title Full-Stack Software Engineer actually exists. I was looking on a job board and for one role it was purely the MERN stack they were using. So everyone has a different interpretation of what it means.

I also found another posting which mentioned mostly a web technical stack but then they said a love of software and coding.

Collapse
 
andrewbaisden profile image
Andrew Baisden

It’s a combination of both this topic is open for interpretation and discussion because everyone has their own opinion. Based on job postings a lot of this information is correct I think. What is your take on it?

Collapse
 
tendtoread profile image
TendToRead

Great stuff on full stack and software development engineers, today I know the what exact difference is. Thank You Andrew.

Collapse
 
karenefereyan profile image
Efereyan Karen Simisola

Thanks Andrew. This was helpful

Collapse
 
andrewbaisden profile image
Andrew Baisden

Glad you found it useful.