TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

I Don’t Believe in Full-Stack Engineering

236 pointsby jxubalmost 7 years ago

64 comments

warentalmost 7 years ago
This article is conflating junior developers with full-stack engineering.<p>I work on the entire stack. Can I work with databases and write queries? Sure. Can I do it as well as a data architect? No. That&#x27;s not what&#x27;s expected of a full stack engineer.<p>We can have meaningful, productive discussions with everyone on all parts of the stack. We&#x27;ll talk with the data architect, write&#x2F;tweak a query if we need to, we&#x27;ll talk with the product manager and collect some features, we&#x27;ll communicate the requirements to a backend engineer if one exists and help prepare the API as necessary to ensure the frontend can query for only what it needs when it needs it, and we&#x27;ll connect it to the frontend which we built (yes, even using data chunking, semantic UI, and accessibility, all of which are expected in professional front-end development)<p>To the purist engineer, none of this is part of their reality because the purist doesn&#x27;t have business requirements or tradeoffs. In the real world of business, these skills generate profit and are especially useful with new products and prototypes. If you&#x27;re experienced enough and have a great team with you, you can execute on this with minimal technical debt that doesn&#x27;t create long-term problems while still providing users with a great experience.
评论 #17413115 未加载
评论 #17413103 未加载
评论 #17412804 未加载
评论 #17417054 未加载
评论 #17416638 未加载
评论 #17412607 未加载
tylerjwilk00almost 7 years ago
I disagree with the article. It&#x27;s a 1,000 word false dichotomy between Full Stack vs. Insert Specialist Here.<p>Sure, if you&#x27;re a Fortune 500 company, go ahead and hire a DBA, Cloud Architect, Backend Engineer, UI&#x2F;UX Designer, Graphic Artist, Social Media Marketer, etc.<p>You&#x27;ll have a few million $ in salary overhead. It may take longer to produce a final product.<p>BUT, it will probably be way better than a product that a full stack developer knocks out.<p>BUT, if you&#x27;re a startup or SMB or lean department and have a 100k budget and a 6 week deadline a full stack developer is a huge asset to your company.<p>Obviously when you take the same project and give it to a highly specialized team of people with lots of time they produce superior results. Do we really need an article about it?<p>PS. Giving a 10 person team a 1,000 hour time budget would not be a huge deal. Try not laughing when a single Full Stack developer asks for 1,000 hours.
评论 #17418125 未加载
评论 #17412657 未加载
评论 #17412815 未加载
评论 #17416044 未加载
inestynealmost 7 years ago
Full stack to me is more about ownership and responsibility than pure expertise. He&#x27;s the guy that can literally carry the entire thing on his back if he has to. Technically speaking, usually because he&#x27;s the one that created it, by himself, made it work, made it scale, and made it make money without any help. In my case he becomes the guy in charge trying to figure out how to hire people to just little parts of his job. And finding out he now has to learn how to hire people, just like everything else...<p>:)
评论 #17413640 未加载
chrisabramsalmost 7 years ago
I once met a software engineer who said I was not full-stack because I didn&#x27;t know how to add to the Linux Kernal. I once met a hiring manager who said I&#x27;m not front-end because I don&#x27;t know how to vertically shard MySQL and &quot;every front-end developer knows how to do that.&quot; Technology stacks differ per company and the definition of the title will also differ. That doesn&#x27;t mean it doesn&#x27;t exist.
评论 #17412489 未加载
评论 #17412553 未加载
评论 #17412938 未加载
评论 #17414856 未加载
评论 #17413327 未加载
评论 #17413367 未加载
DanHultonalmost 7 years ago
The misunderstanding the author makes is that a Full Stack Engineer is a specialist in all roles. They&#x27;re not. They&#x27;re simply Intermediate to Senior in most.<p>I&#x27;d defer to a specialist in essentially every field, but if you require a broad range of work to be done without hiring a half-dozen people, I&#x27;m who you&#x27;re looking for. The best title we have got that kind of experience is Full Stack.<p>(It&#x27;s also a well-understood recruiting buzzword you can use to quickly indicate the work you want and the salary you expect.)
评论 #17413549 未加载
andrewingramalmost 7 years ago
Hmm. Maybe full-stack engineering doesn&#x27;t need you to believe in it?<p>Though to be fair it probably does, because having your entire professional community believe you don&#x27;t exist creates ridiculous amounts of frustration, anxiety and imposter syndrome.<p>I do (with skill levels ranging from competent to highly regarded):<p>* UI design<p>* Data architecture<p>* API design<p>* HTML&#x2F;CSS&#x2F;JS&#x2F;React&#x2F;GraphQL&#x2F;etc<p>* Front-end accessibility (not the best, but I don&#x27;t just do div&#x2F;span soup and call it a day)<p>* Front-end performance (i&#x27;ll spend weeks optimising the hell out of everything I see in browser devtools if given the chance)<p>* API performance (see previous).<p>I tend to draw the line at devops and sysadmin stuff, mainly because I don&#x27;t find it interesting. But for everything listed, I do it because I enjoy it. And there plenty of aspects of engineering professionalism i&#x27;m not great at, which offsets the fact that I apparently have an impossible unicorn set of skills.<p>Honestly, I wish I didn&#x27;t and was happy doing just a subset. But if I&#x27;m spending my time doing just design, I get frustrated that i&#x27;m not coding, and if I&#x27;m just coding i&#x27;ll be dreaming of design. Also, the context-switching is hell. I wish my interests would let me specialise, but they don&#x27;t.
评论 #17413284 未加载
评论 #17413577 未加载
评论 #17413082 未加载
Illniyaralmost 7 years ago
I don&#x27;t believe in Specialized front&#x2F;backend development when it relates to web development.<p>Web development is and should always be a full-stack affair. Otherwise your frontend developers would request apis in a way that destroy performance and create a database model or logic that is unmaintainable on the server-side. Your backend developers would make apis that make the requested front-end design make a hundred api calls or api calls in the wrong places (like during a transition&#x2F;animation).<p>It&#x27;s not just about communication either, though that&#x27;s also important - it&#x27;s exceedingly hard for specialized developers to understand the reasons for another&#x27;s requests, being full-stack means you can see the full-picture.<p>It&#x27;s about owning the feature&#x2F;product from beginning to end. It&#x27;s about knowing what tradeoffs to make in the serverside, clientside, database or ops, which you can only do effectively if you are familiar with each. It&#x27;s about never being stuck waiting for your backend to fix an api that isn&#x27;t right, for your dba to build that query so it won&#x27;t take a year to run.<p>That isn&#x27;t to say that you can&#x27;t specialize while being Full-stack or that specialized roles outside of web development shouldn&#x27;t exist (for example game development, big data, machine learning).
评论 #17415486 未加载
评论 #17415444 未加载
vbezhenaralmost 7 years ago
I&#x27;m the only competent developer in our company. So believe it or not, but I&#x27;m doing it all, from tinkering in disassembled Oracle 9i JDBC driver, to planning Oracle migration to writing SQL queries, reverse-engineering stored procedures, modifying Delphi sources, writing Java code, writing Kotlin code, writing HTML, JavaScript, CSS, Objective C, rolling out some tiny PHP website, writing brute-forcer to crack P12 private key because someone forgot password LoL. Sure, I&#x27;m not an expert in any of those fields. I don&#x27;t even like most of them. Give me task to write Kotlin library (reimplementing React!) and I&#x27;d be happy sitting in the corner for the next few years. But I don&#x27;t have that luxury and generally stuff I&#x27;m doing works well enough. And given our income, it&#x27;s just not possible to hire few competent developers and they would do nothing most of the time anyway. But if I can do it all, I&#x27;m busy most of the time and I can have some money as well. Full stack, that is.
评论 #17412981 未加载
评论 #17413276 未加载
评论 #17413375 未加载
jchwalmost 7 years ago
What makes you a &quot;senior&quot; engineer, anyway? I feel confident calling myself fullstack. I&#x27;m not going to list all of the things I have done and know how to do because honestly it would feel arrogant. But what lead to the thought process that backend and frontend developers should be separate anyways? Yes, it is complicated and time consuming to keep up with both backend and frontend development, but there&#x27;s no way you&#x27;re telling me some people believe it&#x27;s actually impossible to do that. If you dismiss the frontend as unimportant, what the hell are you writing the backend for to begin with???<p>I like coding and I definitely find programming enjoyable. But, importantly, I don&#x27;t write software for the hell of it. If you actually give a damn about software development, I don&#x27;t understand how you could simply dismiss one side of software development due to where it gets executed in the stack.
评论 #17412822 未加载
评论 #17413079 未加载
评论 #17414141 未加载
Glyptodonalmost 7 years ago
In my view this is off base because it&#x27;s a bit intentionally obtuse.<p>I think the real maxim is more along the lines of &quot;if you need actual full stack engineering, you don&#x27;t want a full stack engineer.&quot;<p>Because full stack engineers are not there for large, highly engineered, Amazon&#x2F;Google scale sites.<p>They are there for the MVPs, the startups, the moderate scale internal line of business tools, your local city government, or one-off moderate projects.<p>A full stack engineer is not there to have expert knowledge of every single micro detail of front-end, back-end, databases, site performance, SEO and such.<p>They&#x27;re there to have a general knowledge of them, produce something reasonable, and know enough of all the ends to ship in a timely manner, hopefully with design decisions that can be easily tweaked, meet requirements, and don&#x27;t have boatloads of technical debt, until &#x27;till it justifies a larger, more specialized, engineering investment, or just putters on with light support &#x27;till end EoL because it&#x27;s good enough for the scale of operation.
badasstronautalmost 7 years ago
what&#x27;s the takeaway from this blog post? There&#x27;s no such thing as a full stack engineer so don&#x27;t bother learning about databasing and server concerns and devops; just focus on front-end? Are we just criticizing people for doing their jobs to the best of their ability?<p>A full-stack engineer is not always going to write the best front-end ever; there may be some kludgey stying and some non-semantic HTML (divs and spans!). As a non-DBA, queries may not have optimal execution paths. There may be questionable backend design decisions.<p>This is an obvious conclusion and does not really speak to the value that a developer brings to an organization. Development is a means to an end, and there are plenty of business cases that an experienced full stack developer can solve in a &#x27;good enough&#x27; manner.<p>We run the risk of letting the perfect become the enemy of the good. Any mature developer should have one or two areas of deep expertise and have enough skill in other domains to get a job done.
strkenalmost 7 years ago
I don&#x27;t tell people I&#x27;m a full-stack engineer because I&#x27;m equally good with every random piece of technology at use in a product, but because it signals willingness to apply the imperfect human skills that I do have to different parts of a system.<p>The front end of a single-page React application is a lot more complicated than just HTML templates and CSS, and you can get all sorts of productivity and developer happiness gains from being able to jump between front end and backend - consider implementing the network layer in Redux, breaking out validation logic into a shared library, or fixing a bug that can only be understood by looking at both a front-end request and the endpoint that handles it.
shp0nglealmost 7 years ago
This is a weird rant.<p>He is complaining that someone who does many things won&#x27;t be as good in front-end as someone who does only front end.<p>...ok?<p>Nobody expects full stack engineer to be <i>all that great</i> in front-end. That&#x27;s why he is not a front end engineer.<p>Vice versa he won&#x27;t probably be all that good in SQL or in administration and devops.<p>I am not even sure what is this guy complaining about exactly
评论 #17413158 未加载
nidxalmost 7 years ago
Whenever I interview someone I explain what Full Stack means to me. As a small team we have to support the full stack of development. That means<p><pre><code> * provisioning and updating servers * installing and configuring software on those servers * keeping server system software up to date (Apache&#x2F;MySql&#x2F;Php&#x2F;etc) * maintaining and developing custom frameworks * writing all the admin tooling for getting sites up and running and configured * working in our backends including writing queries * designing databases and migrations * maintaining deployment of new code and version control * setting up build systems for our apps * designing frontend systems (how they use api&#x27;s, deployment of them, stores, etc..) * writing components and styling them </code></pre> and that is just the web stuff. Not including the VR&#x2F;AR&#x2F;App stuff we get tasked with building.<p>While I am a Senior&#x2F;Team Lead and don&#x27;t expect people to be experts in all of that stuff, debugging requires at least being willing to take on any of that.<p>The author seems to think that just frontend development requires all your mental capacity. I really don&#x27;t want this to come off as me being arrogant but feel very confident in my skills in everything he described AND I do all of the above web stuff and more. I also manage a team and meetings and timelines and quotes and resourcing and sales questions etc... It&#x27;s not that hard. And I know I am not a 10x or 100x dev (maybe 2-3x)
phektusalmost 7 years ago
Even in a team of specialists, some of the work they do can be off-loaded to a full-stack developer to free them up for tasks that require more of their expertise.<p>For example, a front-end specialist would be better off optimising the slow page response times of the product&#x27;s news feed or implementing a new application page altogether than, say, adjusting css that break on a few view ports. In a big team, you can push the CSS fixing job to a junior; but in a lean team, it&#x27;s better if this goes to a generalist in your team.<p>If your backend dev is busy on implementing OAuth, he can off-load fixing a bug that has a small fix but is hard to test like a minor refactor. You compound this &quot;minor&quot; jobs and you will need a lot of junior staff to help on the load, or you could hire a full-stack developer to help with the whole team.<p>Eventually this generalist gains a good understanding of the full stack, as his title implies, and can contribute good ideas that affect all parts of the system. They also make good tech leads because they can interact and empathise with all members, and can call out decisions that may seem good on one part of the stack but could have horrible implications on the other end. Some progress to Architects simply because they have the bird&#x27;s eye-view of the whole system.<p>Lastly, if you are a fledgling web startup, it would work against your business interests to hire an expensive specialist right away.
评论 #17413134 未加载
unrealchildalmost 7 years ago
Ha! Referencing your own tweet, from earlier this month. Awesome!<p>I disagree mostly. I’m pretty full stack from UI down to circuit design, but that’s after almost 20y in the business.
评论 #17413058 未加载
anonytraryalmost 7 years ago
&gt; Of all the engineers I’ve met over the years only one has come close to what that title, full-stack engineer, implies: the ability to easily navigate the back-end and front-end with a senior level of expertise.<p>In the first paragraph, the author sets up a really weak straw man for himself to defeat. If you define &quot;full-stack engineer&quot; as &quot;an <i>expert</i> at front and back end&quot;, it&#x27;s pretty easy to not believe in it since you may as well be restricting the category to people who are 3σ. If you define &quot;full-stack engineer&quot; as someone who &quot;can do front and back end moderately well&quot;. This is much easier to believe in.
评论 #17415548 未加载
gonyeaalmost 7 years ago
Yes, there is such a thing as a full-stack engineer. They&#x27;ll cost you a lot of money (or equity), but will spare you from herding an entire room of specialists early on.<p>As products and teams scale up, cross-stack expertise becomes far less valuable than domain expertise and institutional knowledge.<p>This post also leaves off another area that I&#x27;d expect of a senior full-stack developer: Infrastructure&#x2F;Ops.
ivanhoealmost 7 years ago
I think people don&#x27;t understand what full-stack dev&#x2F;engineer really is (or should be). It&#x27;s not a person who knows everything about everything, that&#x27;s of course impossible, but it&#x27;s also not a person who knows only a little about everything either. In my eyes a proper full-stack engineer is someone who&#x27;s currently deeply involved with X, while having a previous experience (of being deeply involved) in Y and Z. As you move from one area of expertise to another you, of course, forget a lot, you fall behind with the latest features and approaches, but you still know enough about it to, first, be able to communicate efficiently with an expert, and the second to be able to relatively quickly get back into the saddle, if needed.
评论 #17416200 未加载
jypepinalmost 7 years ago
I understand OP&#x27;s views don&#x27;t represent his employer&#x27;s, but it&#x27;s still funny to see Gusto (OP&#x27;s employer) recruiting for full stack engineers on the front page at the same time!
评论 #17413997 未加载
renloalmost 7 years ago
The first time I touched HTML I was ~19 years ago for my middleschool&#x27;s technology class, where we were to implement a very simple (and ugly) webpage.<p>Later, in highschool, the first real programming language I learned was Java, and I did some personal projects with that on my own.<p>After graduating college without any marketable skills in the height of the recession, my sister (a SWE) introduced me to Python and then JavaScript. I weighed my options and found that going into front-end development would be ideal for me; I had an eye for design and it was simple enough to begin. I learned JavaScript through-and-through, but contemporaneously I learned backend web-development (via Python, Django and Flask). When an opportunity at work opened up, I transitioned to doing backend development (of which I was already familiar from personal projects).<p>Having done both, I do not see why they are mutually exclusive. I think the issue is that most people who call themselves full-stack engineers do not actually fit the description; it sounds like a good thing to label oneself. I see this often with bootcamp grads who know JavaScript only, and can run their code with Node, so they believe that they are now backend developers.<p>To learn the backend, I built from scratch: * a simple (and crappy) ORM * a simple (and crappy) db-backed session system * a simple form-generator (similar to Django forms, for flask) * login &#x2F; user handling (etc)<p>To learn the frontend, I built a simple single-page-application, using vanilla JavaScript.<p>I have worked for years doing both backend and frontend development (JS visualizations for SVG&#x2F;canvas, data-heavy SPAs, backend APIs, Golang services to process data, work with AWS, docker, etc), and I doubt that I am unique. Full-stack developers do exist, though of course one only has so much time and &quot;jack of all trades, master of none&quot; will apply to many.<p>Many of these new-bootcamp grads build a simple Node web-app without realizing many of the problems (and solutions) inherent in the backend and label themselves full-stack. That&#x27;s the problem; not that the frontend is somehow too difficult to master, or that the backend is somehow out of reach.
tdurdenalmost 7 years ago
The author seems to think &quot;full-stack&quot; means the developer is an expert in everything; that is hardly the case.<p>I would consider a full stack developer to be someone who likely has one or more areas of expertise, but is able to quickly move out of their comfort zone(s) and contribute in a meaningful way towards any part of the stack.
tckralmost 7 years ago
I agree!<p>I blogged this with the point of view of a full-stack developer that <i>can</i> do front-end development, but rather didn&#x27;t a while ago: <a href="https:&#x2F;&#x2F;coderbyheart.com&#x2F;the-full-stack-developer-trap&#x2F;" rel="nofollow">https:&#x2F;&#x2F;coderbyheart.com&#x2F;the-full-stack-developer-trap&#x2F;</a>
cm2187almost 7 years ago
This is starting from the assumption that every website must be an SPA, which I am not sure I agree with. Most of the time you really don’t need that much stuff on the client.
评论 #17414492 未加载
tboyd47almost 7 years ago
I would appreciate this if more front-end specialists actually had all four of the skills that the author claims separates them from full-stack devs: elegant CSS, high-performance web engineering, accessible markup, and in-depth knowledge of React&#x2F;Angular&#x2F;etc. I&#x27;ve not observed this to be true. All too often a person only knows the JS framework and doesn&#x27;t know&#x2F;care about any other aspect of their platform.
justaaronalmost 7 years ago
The author supports bloated stacks driven by trendy concepts. I highly disagree with nearly every point the author raises. At the end of the day, there is http where there is the request&#x2F;response cycle, and knowing how the machine works is essential, so obfuscation and nonsense should be eschewed in lieu of greater clarity of understanding. One can pre-load data into a server rendered template but then one essentially has to load new data (hello xhr or websockets) and update the dom accordingly. Everything else is just noise. Full stack engineering gives one a comprehensive overview of the virtual machine. While SPA and serverless architectures (not to mention graphQL, postgrest, and other attempts to basically agglomerate the backend server onto the database) alter this equation, having full comprehensive knowledge of this is the equivalent of a mechanic knowing her&#x2F;his engine, or a soldier being able to field strip his&#x2F;her armament.<p>So, here we have a click-bait title and our reactions are feeding into the apparent pretensions to fame engendered.<p>next.
cam-stittalmost 7 years ago
The article is titled &quot;I Don&#x27;t Believe in Full-Stack Engineering&quot;, yet states &quot;If you’re only hiring full-stack engineers&quot; as though they are something the author believes exist.<p>It seems that the real approach of this article should have been to outline why hiring ONLY full-stack engineers may not be a good idea.
评论 #17412701 未加载
grosjonaalmost 7 years ago
There are full stack engineers, lots of them. This article is extremely narrow minded. It&#x27;s like saying that there are no nuclear scientists because you&#x27;ve never met one personally.<p>I remember the last big company I worked for, they asked me &quot;What are you: Front end or Back end?&quot; and when I said that I could do either equally well, they said something like &quot;Lots of people claim to be both but you can be honest with us, which one are you really?“.<p>I ended up doing only front end at that company for a while then got bored and quit. My next company I did full stack and they actually got to see the benefits of letting engineers use ALL of their skills.
spebyalmost 7 years ago
Well if he met me, he could add one more person to his list of people he has met over the years that meet his expectations of &quot;full stack developer.&quot;<p>To be honest, I&#x27;m getting sick of the front-end&#x2F;back-end bifurcation that I see literally everywhere now. I&#x27;m even guilty of it. It has this notion that you are either back-end only or front-end only. It really leaves no room for actual expertise that allows a software engineer to actually build software.<p>In fact, the terms back-end developer and front-end developer imply neither person on his or her own can actually build working software without the other. And that&#x27;s total crap.<p>These terms started appearing more frequently in the mid-to-late 2000s and nowadays they seem to be all over. But back in the early and&#x2F;or mid-2000s, &quot;Web Developer&quot; or &quot;Software Engineer&quot; or &quot;Application Developer&quot; sufficed and it was implied that you could build software from scratch, soup to nuts. Of course, in a large organization you had multiple &quot;Web Developers&quot; who surely specialized in one thing or another in order to help their comrades out so not everyone was doing everything at the same time to maintain sanity. But still, as a &quot;Web Developer&quot; it would be expected that you could build software and everything that entailed for the web. Not &quot;Oh well I built the backend... now you just need one other person to do the rest.&quot;
tabtabalmost 7 years ago
It depends what the organization is willing to sacrifice. If you want everything done well, then you should get specialists, or pay well for one of the rare persons who can master almost everything.<p>Internal software usually doesn&#x27;t have to be as aesthetic on the front-end (UI) such that you can maybe sacrifice there, for example.<p>Sometimes you can throw hardware at poor performance if performance tuning is not a person&#x27;s forte, but sluggishness may snag you at a bad time before you have time to upgrade to a more powerful box(es).
k__almost 7 years ago
I have to admit, full-stack stuff sounded really horrible to me, coming from front-end development.<p>Databases? Containers? VMs? I don&#x27;t even know where to start!<p>But when I got into serverless, it wasn&#x27;t that hard.<p>Sure, with DynamoDB and S3 I have to manage aspects of my storage, but not much.<p>Sure, whith Lambda and API-Gateway I have to manage aspects of my back-end API, but not much.<p>Setting up a DB cluster and microservices with containers is something a fully fledged back-end dev needs to do.<p>But getting something decent up and running with serverless technologies is something I can do too.
评论 #17415295 未加载
roburtguyalmost 7 years ago
I think that definition of &quot;senior level of expertise&quot; is a bit too much for full-stack engineers. I actually have worked with many engineers who are very comfortable working front to back end creating wholistic solutions. To me, full stack engineer is someone who can design and implement a wholistic solution. If you can build a todo app, you&#x27;re pretty much a full-stack engineer (a junior one and also depending on the todo app implementation).
erikbalmost 7 years ago
The initial assumption is wrong: Full-Stack engineers are not expected to traverse the whole stack with senior level skills and ease.<p>Also if you become really good at something you&#x27;ll realize that actually it is not all about more skills. There&#x27;s a point where strategic decision making overcomes coding skills.<p>E.g. 1: I spent years to really learn vim and git indepth. I can write my own git clone and did that before as well. However I have seen so many different editors and IDEs that I&#x27;m at a point where I can take whatever is there. I use nano with ease if the situation requries it. This makes me quicker than installing my favorite editor, my configs and then start working.<p>E.g. 2: The more experience one gains the more one sees that the biggest drag on progress is usually misunderstanding, lack of info, lack of responsibility. So nowadays I do more for my team by creating meeting requests with the right people. For that I need to be able to read all of the source code and docs to figure out where the actual problem is and who really has the expertise to solve issues there. But I don&#x27;t need to be as good as the topic expert.
redleggedfrogalmost 7 years ago
&quot;Front-end development is important today and it will be important in twenty years’ time, it’s not going away anytime soon.&quot;<p>That I don&#x27;t think will be true unless it&#x27;s pertaining the eventual abandonment of the web browser as the run-time.<p>The awful tangled spaghetti that is the current code for a web site UI is not tractable going forward. It takes <i>way</i> too much effort to make a usable interface for the value in return. It&#x27;s also too limiting. And too difficult to maintain. These are all problems caused by using a run-time originally developed for document browsing that has been pressed into service as an application platform.<p>As a full-stack developer, the front end <i>is</i> the most annoying to work on because it&#x27;s the most deficient and under-powered. Consequently, we don&#x27;t put as much effort into it.<p>Eventually it has to come to something more sane. Maybe web assembly running in a virtual machine - in don&#x27;t know. What I do know is the advancement of computing is being hindered by the lack of a competent UI system.
评论 #17413222 未加载
评论 #17413481 未加载
评论 #17413177 未加载
EnderMBalmost 7 years ago
I can understand the authors frustrations. I too have worked with loads of full-stack developers that have been fairly standard at both, or people that market themselves as full-stack, but are either Ruby&#x2F;Python developers that can throw together a React app, or front-end wizards that can barely navigate enough Rails to build a basic CRUD app.<p>Where the idea falls flat is where you draw the lines in each discipline. Do you expect a front-end developer to have domain knowledge of all the leading frameworks out today? Do you expect them to be immediately productive on an Node&#x2F;Express project? Additionally, on the back-end side, would you expect that person to have written production-ready code in a set of languages like Ruby, Python, C# and so, with full domain knowledge of all their respective frameworks? There are front-end devs that know a huge amount on the frontend side, and backend devs with working knowledge in a whole range of languages, but it&#x27;s difficult to find a (sane) person that knows it all.<p>But, if you&#x27;re a Rails shop, it&#x27;s not uncommon for someone to know Rails really well, and be a solid frontend developer. If Ruby&#x2F;Rails is your bag then that person is a full-stack developer, even though they might be completely useless if you&#x27;re a .NET shop. Using myself as an example, I was fairly solid on the front-end, but as I got more involved with back-end dev I found my domain knowledge falling behind. I reckon I could throw together a halfway-decent front-end application, alongside a Rails&#x2F;Django&#x2F;ASP.NET MVC application, but I&#x27;d feel uncomfortable calling myself a full-stack developer because I don&#x27;t consider myself good enough to know it all.<p>I&#x27;d be doing myself and a future employer a disservice by selling myself as such, but it doesn&#x27;t mean that people don&#x27;t, especially more controlling developers that want control over every aspect of an application.
nightskialmost 7 years ago
He attributes bad web sites to lack of skills. I&#x27;m sorry, but in my experience it generally is due to lack of <i>time</i> and <i>budget</i>, no matter how experienced you are. Experience helps a lot but not every site is worth pouring in the money required to make it top notch. Some times meeting business needs matters more than technical perfection.
评论 #17413469 未加载
devereauxalmost 7 years ago
I didn&#x27;t believe in full-stack engineering either, until I had a very hairy problem that required fighting with various interacting issues to obtain a specific level of &quot;web performance&quot;.<p>And yes, I know about &quot;font loading, images, SVGs, animations, auditing third party scripts&quot;. Still sometimes, you have to dig deeper in the stack to find the low hanging fruit that will make the difference between meeting requirements or not.<p>After throwing away the nice SVGs and replacing them by inline PNG (uglier, but you need that 15% size difference and the precious milliseconds), what do you do?<p>My current solution is a combination of various things - the last element being VPS close to the customers to provide resources with a very low latency.<p>(and by the way, if anyone happens to know reliable VPS companies in South America, Japan, South Africa, I would love some recommendations. I only know about Hetzner ZA and Linode JP. I would love to find some good host quality around Uruguay or Brasil)
plumaalmost 7 years ago
Show me a front-end developer that has mastered every aspect of front-end development, or a back-end developer that has mastered every aspect of back-end development.<p>Everyone else only gets to pick a somewhat arbitrary subset of those aspects. Some pick subsets from both front-end and back-end (in fact even for a front-end developer having at least some understanding of back-end development is a good idea and vice versa). If those subsets have no clear bias for one over the other, congrats: you&#x27;re doing full-stack.<p>Yes, the label is misleading, not every full-stack developer can literally work at any level of the stack equally proficiently. And if they&#x27;re relatively new to programming they may have spread themselves too thin.<p>Heck, in the 90s most web developers were &quot;full stack&quot; by necessity (mostly because there wasn&#x27;t much of a frontend until CSS gained traction and AJAX became a thing). Back then we just called them &quot;webmasters&quot;.
aphextronalmost 7 years ago
Completely agreed. &quot;Full-stack&quot; developers fall into two camps; that is the &quot;web developers&quot; who know enough PHP&#x2F;Node&#x2F;Whatever to build a CRUD app with UI, and the serious software engineers who treat front-end as an &quot;oh whatever&quot; afterthought. Both end up with nothing but a huge mess at scale.
评论 #17412713 未加载
评论 #17412420 未加载
qntmfredalmost 7 years ago
&quot;Those that say it can’t be done should get out of the way of those doing it&quot;
评论 #17412576 未加载
mcvalmost 7 years ago
I don&#x27;t care what they call me, as long as I&#x27;m not stuck in a single environment. I like programming, whether it&#x27;s on the front-end, the back-end, or somewhere else entirely. And I care more about programming than about design, image optimisation, database optimisation, or configuring containers and deploy tools. I understand those things come with the job, but they&#x27;re never going to be my strongest point.<p>I&#x27;m fine if people just call me a programmer or software engineer, but it seems that these days, full-stack developer&#x2F;engineer is what people need to know in order to place me.
shapiro92almost 7 years ago
The article is lost from it&#x27;s first sentence. &quot;with a senior level of expertise&quot; No a full stack does not need to be senior in all, if you want a Senior Full Stack engineer maybe.<p>The fullstack engineer or T engineer is someone who shows versatility when it comes to the tasks given, he has an issue on the FE that is related to BE. He doesnt need to solve it but if the understands and then can point to the person who can fix it quickly thats key.
评论 #17415218 未加载
flashgordonalmost 7 years ago
Oh thank god! Finally glad to see this koolaid getting dispersed. I hope some of the glory gets reimbursed to embedded and systems level engineers too :)
评论 #17412946 未加载
评论 #17415318 未加载
hideoalmost 7 years ago
I&#x27;ve always wanted to build a server from scratch: build a simple chip running a one-trick web server that can respond to a GET request and have it serve up a single page application, and a not-a-lot-of-bauds serial modem connected to the internet through a gateway of some sort. It&#x27;d probably take me a year of nights and weekends, but at the end I would be comfortable calling myself a full-stack developer.
dfrewalmost 7 years ago
Click bait title with strawman argument. By this author&#x27;s definition most engineers are not engineers because they&#x27;re not experts. The moment &#x27;expert&#x27; is removed from the definition the argument falls apart.<p>Some people want to focus on front end problems, some want to focus on backend problems. I personally just want to focus on problems. I&#x27;m neither front-end or back-end. I&#x27;m a software engineer.
Fire-Dragon-DoLalmost 7 years ago
Pretty sure software architecture applies to both frontend and backend development, but for whatever reason, most frontend developers seems to ignore it (not everyone, but most public libraries are terrible architecture-wise).<p>Since the skill it&#x27;s transitive and it&#x27;s one of the skills that gives the highest value long term, I don&#x27;t see how there couldn&#x27;t be a fullstack developer.
dosethreealmost 7 years ago
The best teams are T-Shaped (specialists who also generalize) that doesn&#x27;t mean they are specialists in everything, but as a team they have the expertise they need collectively. Those teams work well because when someone is on vacation you can still execute as a team because you cross train. It&#x27;s not rocket science here people
bradleyjgalmost 7 years ago
In my experience companies looking for full stack engineers want a fully competent front end engineer that’s willing to get his hands dirty with a CRUD backend. Specifically not someone that’s mediocre at everything, and at least for reasonable hiring managers, not someone that’s an expert at everything.
pjmlpalmost 7 years ago
So I when write complete applications myself, native&#x2F;web frontend, backend system, stored procedure at the DB layer, talk with all parties, architecture blueprints, what I should call myself then?<p>I know, consultant with expertise delivering delightful experiences.
dmritard96almost 7 years ago
meh. I consider myself pretty fullstack - plastic forming to css and most things in between. Am I your guy to write the best ISR on some rando chipset - no. Am I your guy to write the most optimized query and tuning with a deep dive in the query planner - no. But I know enough about each respective domain to go deep when needed (google makes this more doable today than ever before) and I can get an MVP far faster than a specialist. I don&#x27;t mean to knock specialists but rather to say there are roles for both and believing in one or another is the wrong place to focus.
ConcernedCoderalmost 7 years ago
&quot;Because there’s no such thing as a unicorn and there’s no such thing as a full-stack engineer.&quot;<p>Ridiculous to find out I&#x27;ve been doing the impossible for 15+ years now? Somebody give me a raise!
iblainealmost 7 years ago
Full stack engineer means knowing CS fundamentals. With that you can do most anything, except good UI&#x2F;UX development. Leave that to the web developers.
oooooofalmost 7 years ago
Errr.... hold on ... I can build every component of a complete system, front end, back end, deployment, database.<p>Maybe I don’t exist.
cobbzillaalmost 7 years ago
As evidenced by the first dozen top-level responses (largely written in defensive tones from self-proclaimed &quot;full stack developers&quot;) it becomes clear that everyone has a different definition for the term.<p>Thus, I find this entire conversation to be mostly useless, except as a survey of what the term &quot;full stack&quot; means to different people, particularly those who brandish it.
i6Respawnsalmost 7 years ago
Great article, lots of trigger in this thread but what you&#x27;re saying resonates.<p>If you read between the lines, you could pretty much say that as much time as you split between backend and frontend you would need to become a solid engineer in either of those domains.
ww520almost 7 years ago
Never says never. You&#x27;ll be amazed how good some engineers are.
rboydalmost 7 years ago
what an awkward little article
trentnixalmost 7 years ago
Specialization is for insects.
评论 #17413647 未加载
gaiusalmost 7 years ago
Full-stack cannot truly exist because of the clash of cultures. Front-end values that which is shiny and new, the latest framework in the latest browser, code 6 months old is already obsolete, code 2 years old has to be rewritten entirely because all of its dependencies are broken now. Experience is not valued because no-one has any in the current trendy tool, it&#x27;s too new. Whereas back-end values that which is mature and stable, code that is 10 or 20 years old is considered to be proven and reliable, experience is highly prized because it shows its value in day-to-day work. When the cultures crossover you get horrific things like node.js or MongoDB.<p>That doesn&#x27;t mean there aren&#x27;t front-end people who can write a bit of SQL or back-end people who can throw together a simple website. That&#x27;s fine, those are basic commodity skills now. But everyone has to choose the culture they are comfortable with and that will dictate where they fall on the technology spectrum too.
throwaway756almost 7 years ago
Apologies in advance for the negativity, BUT....<p>I wonder how many people honestly believe that they are doing good &quot;social proof&quot; work for their career when they publish pieces like this.<p>However, many of these read as insecure, pedantic, and a decent lack of self-awareness on the authors part. Tone deaf. Pretentious SV &quot;influencer word salad&quot;. When reviewing resumes, I always do a ton of Googling. This would have given me a bunch of soft data points that would potentially outrank his&#x2F;her resume<p>&quot;Full-Stack Engineering&quot; as defined by Robin Rendle - would have been a more honest title, but no one would have clicked.
stuckinarutalmost 7 years ago
All this talk of front end and back end and I&#x27;m just sitting here not knowing how to do any of it.<p>At least I get paid lots of money.
the_narratoralmost 7 years ago
This really comes off as a rant by a front-end developer complaining about full-stack devs not being as good as them.
suffalmost 7 years ago
A full stack developer is what turns into an Architect. If you cannot build, operate, tune and debug the full stack, at scale, you are not an architect.
评论 #17412567 未加载
评论 #17412539 未加载
wintonalmost 7 years ago
If you can build a web site with React + Firebase + Google Cloud Function + CDN, you are a full-stack engineer.
评论 #17415334 未加载