laras126 / front-end-discourse

A place to discuss what it means to be a front-end developer.
86 stars 0 forks source link

What does "full-stack" developer really mean? #8

Open laras126 opened 6 years ago

laras126 commented 6 years ago

The complexity of the web is such that, today, being a true full-stack developer would mean someone be able to both shard a database and architect a [insert-JS-framework-here] app and implement complex layouts in CSS .

What does full-stack really mean these days? I'm a developer that's great at HTML/CSS, okay at JS, and great at WordPress. Am I full-stack?

Is full-stack a way of evading specialization, a jack of all trades, master of none?

robwierzbowski commented 6 years ago

IMO it’s usually a generalist with a concentration in back end work. Most often I see people that know a backend well (a language sometimes, or just a framework) and are either pretty decent at frontend basics, or are very familiar with their chosen backend framework’s solution to front end issues (e.g., unobtrusive JavaScript from 5, 10 years ago).

Conversely, I call myself full stack sometimes, because I’m proficient in and enjoy some backend work, but am never going to be able to evaluate and prescribe new backend tools/techniques like someone who sits in it all day.

IMO this title is asked for a lot at smaller companies or ones not yet comfortable with front end specialization. I get the feeling they want to be able to pass any task to any person, which may seem to increase options, stability, velocity for a while while keeping the number of enplyees limited.

DoronBrayer commented 6 years ago

In my experience, a full-stack developer is actually a back-end (Node.js / PHP / .NET) developer who has basic knowledge in HTML+CSS and mediocre knowledge in JavaScript. Alternatively, a full-stack developer is a JavaScript master who has basic knowledge in back-end and HTML+CSS. I mean, this is what's going on in practice, those are the "full-stack developers" I see all around the industry. I never met a so-called full-stack developer who actually can build (by himself, without help) a good responsive UI, including a neat, scalable, modular stylesheet.

davshoward commented 6 years ago

In my mind, full-stack is someone who can work in, understand and communicate all tiers of development. HTML/CSS, JS, CMS or middleware, DBs, servers, even documentation, planning and testing - and be able to communicate these to other areas of a business (PMs, designers, other developers, etc).

My proficiencies certainly lie as front-end visualiser but span all areas to at least a competent degree. You certainly need to specialise in a particular field (whether that be traditional front-end, back-end or other) to avoid becoming JOATMON.

nortonprojects commented 6 years ago

@DoronBrayer Do you consider "without help" a CSS framework? I'd consider one a building block in the same way I'd consider a JS library. It's simple enough to modify/extend existing CSS, but I'd hate to have to create one from scratch.

DoronBrayer commented 6 years ago

@nortonprojects Using a CSS framework is perfectly fine. "Without help" is dealing with the CSS framework by yourself, and also extending/adjusting it according to the product, while using modern techniques.

ghost commented 6 years ago

It feels like a full stack developer should mean somebody who is totally proficient and experienced on both the front and back end (which is very rare). I often come across job descriptions looking for a full-stack MEAN stack developer, which seems kind of reasonable because it's JavaScript end-to-end. But it's still rare that you'll find someone who can write all your client-side JavaScript and CSS at scale (while doing a good job of it) and also architect your database, API and deal with authentication among a host of other back-end related things. I'm going to refer to the previous title of this discussion/issue "We should stop using the term "full-stack" developer" and say yes, I agree, we should stop using that term, unless you are the one in a million who can truly do all of these things (which you probably are not).

DoronBrayer commented 6 years ago

You should read this: https://github.com/laras126/front-end-discourse/issues/10 https://github.com/laras126/front-end-discourse/issues/9