Hello ππΌ
I was wondering if I should consider myself as a front-end or full-stack developer. Or at least how to present myself to companies.
And ...
For further actions, you may consider blocking this person and/or reporting abuse
There's always a deeper stack, but I think for me it is a matter of how comfortable you are top to bottom with the parts which are not completely abstracted away from you. Also, just whether you are full stack within the expectations of your title.
As a web dev, I am full stack. And often that is what people are talking about. Typically the infra layers have been abstracted away from me. Maybe I can debug an infrastructure layer issue, but I can be full-stack without always worrying about that.
I think there's also room for "popular use" ultimately dictating things, as opposed to an overly literal determination, and I think it usually means client/server unless otherwise specified β where client can be a native UI or a web UI.
I think everyone should treat this as inherently fuzzy, at the end of the day.
Same category here. I call myself fullstack despite being fullstack in the web dev ecosystem. More accurately I like using βmiddle-stackβ for the interplay between backend and frontend logic in web applications, which is the core of my day job, but no one knows what that means.
Oh! Pretty logic name middle-stack! Thanks!
i've been saying 'middlestack' for a long time (as definite backend dev).
really, the full stack is huge. there's layout and design, ux, the huge realm of whatever js framework is the choice, then designing effective apis, being able to manage databases, and ops. it's not realistic to expect that one person can be sufficiently fluent in all those levels. designing an icon and configuring a reverse proxy are very different skillsets.
obviously, for smaller projects, a lot of that can be abstracted away with click-and-deliver solutions, but once you get above a certain scale, you really have to have people who focus on one end or the other.
of course, middlestack is still very valuable, even in larger operations. being able to have the flexibility to get things done in the api/ui range is important, even if you can't choose a colour palette or deal with the load balancer!
Thanks Ben for your message!
Fullstack means you are able to do both server developing whether it is PHP, Java, C# and etc; Databases developing with βvanillaβ SQL or ORMs and finally frontend using JS/TS, HTML, CSS(SCSS,etc). But also you are skilled in git, CI/CD, Apache/Nginx, DBs (MySQL or PostgreSQL or Oracle), bash, etc., You are good in understanding all the principles, APIs/Rest, OOP, Patterns and etc. So at the end you have all the spectrum of knowledge. PS: i didnβt mention Node.js/Deno because JS in general wasnβt a tool for backend developing, it sticks to a few very specific kind of tasks, we canβt compare it with what i wrote above
Okay, this is a good packaging you mentioned!
You absolutely can compare NodeJS to PHP, Java and C#. Infact NodeJS can do a lot of things much better than those archaic languages, especially when we're talking about web development. But this chauvinistic world view is very common among people who majored in Java or C#. They always think they're somehow better than those NodeJS noobs -_-
I did say nothing negative about Nodejs and stuff; i use it myself, but wonβt mention it here cause it it a whole different topic.
The fact that you're discriminating against NodeJS is pretty negative. Its not a whole different topic, its a BE "language" just like PHP, Java and C#. No differentiation required.
Ok, but numbers speak for itself, 78% PHP vs 2% Node.js is kinda unarguable, why? Because there is long way to go for JS platform to outplay any of languages, Python as well. Everything has itβs pros and cons here and there, but still we use PHP/C# and others..
Whats more interesting to know is how many new PHP backends were written in 2022 vs NodeJS backends.
That PHP βbackendsβ as you call it were already developed, Laravel, Symfony, no need to reinvent the wheel.
Those are frameworks written in PHP...
Yes they are.. but they perform that function of backend..
You're comparing bananas and monkeys though. You're moving towards CMS territory here. If you want to go there, there are plenty of CMSes written in NodeJS as well.
My view is that titles are not real.
There are people who write books but don't dare to call themselves writers. And there are people who the media call writers who but have not written a book for a very long while. So who is a writer? I don't care, but I do admire people who write books.
I love your perspective on the label/name and its use. Your example of a writer pretty much describes what has been going on for the last few years with this term Full Stack. I've always read it any way. ππΌ
Am called my self as Street Programmer!
You'll find many developers around who are titled "Full stack developer", but really aren't. Full stack developer is really a misnomer, because it is inherently vague. In my opinion, I would call somebody a full-stack developer when the following criteria are met.
The developer:
Agree with everything except the unit tests. Not that I'm religiously against them, but there's a time and a place for them. Absence of unit tests doesn't automatically equals bad code, or buggy software. I've seen plenty of code with 90%+ coverage, that was shady as hell. It depends on the type of project/team how much attention I give to unit testing. For example if I'm tasked with writing a ui component library, thats going to be used by a lot of other devs, definitely write unit tests. But if I'm tasked with writing an application that has a clear start and end I put more emphasis on acceptance criteria and testing that those are met.
Yes, fair enough. That essentially means that a full-stack developer needs to be knowledgeable enough so as to understand how to get the best out of unit tests, particularly as the lines of code increase.
Bonjour Thomas! It used to be that there were no "full-stack" developers as...there was no stack. Then PCs showed up and client-server was born (for big databases), then n-tier, then the design and code started to shift to OOD and OOP, then the middle-tier, buffer between font and back ends showed up quickly with quickly maturing communication conduits (XML, EDI, SOAP, XML-RPC, REST, and lately a front/middle tier, GraphQL). Backends also grew from linked-list, to RMS, to SQL, to Document Management (Mongo, NoSQL, etc). Front ends blew up with web apps and the myriad of NPM-delivered packages necessary to build them. Self-contained (what one person in this thread called "archaic") languages (like Java and C#) matured to support better principals like GoF but also became more complex with the easy-to-consume NuGet packages.
So...front, middle, and backend stacks have become more powerful and more complex to the point where it's difficult for one to be called "full-stack" without qualifying one as "a jack of all stacks, master of none". Though, I've always coached jr or mid-level devs to truly master one and getting a productive working knowledge of the other two. Because..."if all you have is a hammer...". :)
Thanks for your explanation!
I usually get by experience and it's not just a work role, but more about the responsabilities you can handle. These concepts about full-stack isn't too clear, so for that reason if you can solve problens in both sides you can consider yourself a full-stack, even if in one(front-end) you're don't have too much experience, you still gonna be a full-stack.
That's called Software Freestyle Engineer in my world. They write bunch of Metaphor to solve problem.
Deeper than FS lol
I used to
ME*N stack
LAMP
And System Engineering which is building compiler