Ask Slashdot: Are 'Full Stack' Developers a Thing?
"It seems that nearly every job posting for a software developer these days requires someone who can do it all," complains Slashdot reader datavirtue, noting a main focus on finding someone to do "front end work and back end work and database work and message queue work...."
I have been in a relatively small shop that for years that has always had a few guys focused on the UI. The rest of us might have to do something on the front-end but are mostly engaged in more complex "back-end" development or MQ and database architecture. I have been keeping my eye on the market, and the laser focus on full stack developers is a real turn-off.
When was the last time you had an outage because the UI didn't work right? I can't count the number of outages resulting from inexperienced developers introducing a bug in the business logic or middle tier. Am I correct in assuming that the shops that are always looking for full stack developers just aren't grown up yet?
sjames (Slashdot reader #1,099) responded that "They are a thing, but in order to have comprehensive experience in everything involved, the developer will almost certainly be older than HR departments in 'the valley' like to hire."
And Dave Ostrander argues that "In the last 10 years front end software development has gotten really complex. Gulp, Grunt, Sass, 35+ different mobile device screen sizes and 15 major browsers to code for, has made the front end skillset very valuable." The original submitter argues that front-end development "is a much simpler domain," leading to its own discussion.
Share your own thoughts in the comments. Are "full-stack" developers a thing?
When was the last time you had an outage because the UI didn't work right? I can't count the number of outages resulting from inexperienced developers introducing a bug in the business logic or middle tier. Am I correct in assuming that the shops that are always looking for full stack developers just aren't grown up yet?
sjames (Slashdot reader #1,099) responded that "They are a thing, but in order to have comprehensive experience in everything involved, the developer will almost certainly be older than HR departments in 'the valley' like to hire."
And Dave Ostrander argues that "In the last 10 years front end software development has gotten really complex. Gulp, Grunt, Sass, 35+ different mobile device screen sizes and 15 major browsers to code for, has made the front end skillset very valuable." The original submitter argues that front-end development "is a much simpler domain," leading to its own discussion.
Share your own thoughts in the comments. Are "full-stack" developers a thing?
Yes, there are full stack developers but as with any developer they may know how to code the full stack -- but they will typically be substantially stronger as a server/ messaging / or UI developer and thus much weaker on the other side. It is always better to have people that have a full understanding and the ability to step in if required (especially as you become more senior) of the full stack. If you have people that are purely silo developers - then you will often get into situations where your UI developer wants the server to take responsibility and your server thinks it is too frivolous for them and should be done in the UI.
That's exactly right. "Full stack" developers are not experts at all levels of that stack (that would be a unicorn). Today's full stack developers are devs who started off in one discipline and, over time, have built up their skills in others.
I know someone who has a liberal arts education (all the way to PhD) and then went to one of these coding boot camps. She now describes herself as a "full stack" developer, despite very little training and experience in the field.
The real "Libtards" are the Libertarians!
Who codes for 15 different browsers? No wonder you think it is so hard.
infosec pays great because of moron coders
"In the last 10 years front end software development has gotten really complex. Gulp, Grunt, Sass, 35+ different mobile device screen sizes and 15 major browsers to code for, has made the front end skillset very valuable."
This is a silly statement, its like saying backend development is only difficult due to maven/ant. As someone who is a full stack developer (not only web but old style widgets), the vast majority of application code both front and back is plumbing / shuffling bits around, the amount that is technically difficult is diminishingly small.
Having everyone a "full stack" developer does not necessarily benefit or favour the employer. All developers have strengths and weaknesses - and more experience doing one or the other... The natural extension of that is that those that have a strength in server work doing primarily UI work or vice-versa -- will be less efficient than someone whose strength lies on that side. A small employer could benefit from having a backup (even if less efficient) -- being able to step into doing the work that he is less efficient at (better than having no-one). A large employer will benefit from having a pool of senior developers that have full understanding of both sides (as to be able to settle disputes in the best interest of the customer)... But absolutely requiring everyone to be a full stack developer doing both in a large shop is not necessarily the best as far as cost.
I was surprised to hear of full-stack, I'ld always known that as "being a developer". Next thing you'll tell me there are "developers" who only use one language. Hobbyist is the word non full-stack developers are trying to avoid.
PhD stands for Phul stack Developer
Hey! A post I love!
I'm a full stack developer, and I think I do fairly well all around, but UI would be my weakest area, because that changes based on client needs.
I think I am successful at working this way.
The secret is, my 'stack' hasn't changed in 18 years.
I keep upgrading, and I stay current within my stack, but I stick with what I'm doing.
This is web work, so you're generating HTML and JavaScript, and CSS. That's it. The tools behind the scenes don't need to change every year. Find what works for you, and stick with it.
Everything I work on, I have a lot of experience with. I may not be a hardcore DBA, but I have 18 years experience. My server admin skills aren't crazy...but 18 years. Same with the application layer....
It's a cool job for me, because I care far more about the domain I work in (plants) than I do about finding the latest JavaScript framework.
I haven't had a single request in the last 18 years to change any of the tools I use. But I get lots of requests where I really, really need to understand the science and logic of what my customer does. And I'd rather focus on that.
That's my take on this...the technology is over-rated. What's really important is what you do with the technology.
No reason to lie.
... Overflow.
I *am* a full stack dev. We used to call them developers. You had/have to know all 3 tiers to do anything effective. The thing is 'full stack' is really translation for UI dev *OR* backend dev. You usually have to tease out what they really mean.
My problem is my 'stack' is the wrong shiny techs so no one will hire me for that job anymore. As if my skills suddenly turned into mush and I have no idea what I am doing anymore. Welcome to the future where learning your job makes you obsolete and no one will hire you again. I show junior devs how to use these new stacks and they sit in amazement like they had 0 idea I could do that. "How did you learn that" "the hard way in the previous 3 stacks did something similar just need to learn the new APIs you will want to remember this it will come up again"
When you submit 200+ resumes and get 3 interviews you know that there is no sort of job shortage that these tech companies are bemoaning. You know you are being ignored for other reasons. I used to name numbers and the recruiters would say 'thats too low'. Now I am lucky if they return my calls.
This is simple marketrdroid buzzword business-world bleating. Smile and nod and tell the recruiters whatever it takes to get paid, same as always.
I'm tired in general of people who want to hire with super specific skill requirements. There is so many technologies out there that you end up faking 80% of the crap on your resume. I mean fair enough, if you want a Java developer, you want someone who did Java before. But apart from that, I'd rather hire on talent than specific skills.
As an aside, as a matter of pure research, if you can only hire people on one data point, you're far better of hiring someone for ANY position based on IQ than any other factor such as qualifications, a good performance in the job interview, an impressive resume etc. That's just science. So it's pretty likely that if toss resumes in the bin, and forgo an interview and just give an IQ test, you'll actually get better employees.
The younger Indians I've worked with lately talk about becoming a "full stack developer". I haven't encountered anyone else who uses the term.
Clearly the original submitter has only ever done simple front-end development. Back-end code either works, or doesn't.
Front-end code has to take into account multiple operating systems, multiple browsers, multiple versions of those browsers, hundreds of devices, an extremely wide range of processing power and RAM combinations... in short, your back-end code is a walk in the park.
#DeleteFacebook
Think about the early web. You had to know how to do it all. There were no frameworks, so every time you developed a website, you were developing a custom framework, basically. Actually I personally was full-stack at my previous job because I was working on a legacy product. A few months before I quit they discontinued the legacy product, and moved me to a UI-only position. It just doesn't make sense to have full-stack developers anymore when everything is so modular, unless you're really just lacking manpower.
Ask for the world. Then you can choose not to hire somebody you don't want in the company (age, race, sex, hair color, etc.) because they don't meet the qualifications. HR has been doing this kind of things ever since discrimination became illegal.
especially since when they can't get it locally they get to apply for a visa and bring in somebody making 70-80% of the prevailing wages and work them 60 hours/week...
Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
The premise here seems to be a combination of "my shop only hires specialists so generalists must not be any good" and "we don't make mistakes but I imagine people with too many responsibilities would."
"I have been in a relatively small shop that for years that has always had a few guys focused on the UI. The rest of us might have to do something on the front-end but are mostly engaged in more complex "back-end" development or MQ and database architecture." Good for you? This post reeks of a superiority complex, looking down on any company that hasn't reached your level of enlightenment.
"I have been keeping my eye on the market, and the laser focus on full stack developers is a real turn-off." Jack of all trades, master of none, but often times cheaper than a master of one. Why would we pay for two developers when we can find plenty who are capable of handling both jobs?
"When was the last time you had an outage because the UI didn't work right?" Last week, bub. I'm not going to tell my users to start making API calls in Postman because a showstopper bug brought down the interface. The app is too critical for that.
"I can't count the number of outages resulting from inexperienced developers introducing a bug in the business logic or middle tier." Yeah, people make bugs. Inexperienced developers introduce bugs on the frontend too. It happens.
"Am I correct in assuming that the shops that are always looking for full stack developers just aren't grown up yet?" No, no you're not. You just think that your way of doing things is the only viable way and the rest of the world needs to get on your level.
If you think back end development is more complex it's because you don't really know much about front end development. Front end isn't just html and css anymore. A lot of things have been moved from server side to client side JavaScript. It depends on the application you're building but either one can be more complex.
The Official Site of 1337 Pwnage
BS! The concept of the full-stack developer is an attempt to decrease labor costs by trying to find developers naive enough to claim they can do everything correctly. The companies that hire the full-stack developers normally don't have challenging work and often these are roles focused on Javascript (node.js server-side with frontend work, MEAN stack, etc.). Sometimes the positions will claim to be related to functional programming, but only using it as a buzz-word with a job that works with imperative programming source code, to attempt making the job more interesting (or just throw Elm in to make it seem nifty). The companies that pursue these positions are also hoping that by focusing on a single programming language, they may reduce labor costs by making all the positions require less skills. This becomes a bit more comical with the search for the "Full-Stack Java Developer" or the "Full-Stack C Developer". This search for naiveté may be a form of ageism, so learn to be more naive if you are an older software developer.
You're either a top or a bottom up in 'Frisco.
Am a retired volunteer. Started learning web technologies after I retired in 1999: ASP, MS Access, HTML and a little Javascript and SQL where I volunteered for a non-profit. Lately, have designed and developed a very interactive website for my homeowners association with extensive MySQL, PHP, CSS, JavaScript + jQuery, and custom HTML. I use an IDE (NetBeans). I don't claim to be the fastest coder in the world, but I have evolved my skills to use the programming tools needed to do what I want to do to keep my site interesting and useful to our community. I am 78 years old, reasonably healthy, and still learning: a survival strategy I'd recommend for anyone.
I used to be a "full-stack developer", as the term was just coming into use, and some folks still like to hold that banner high for me... but I loathe the whole concept, based on the experiences I've had to endure because of such "full-stack" idiots.
The "full stack" includes the hardware, the OS, the database, the front-end, and all the middleware that makes it play nicely together. Even without the bemoaned complexity of modern frameworks, that's still a lot of ground to cover, and it has to be done right. For the web guys, I'm talking about the difference between using tables for layouts and HTML5/using CSS whatever-the-latest-version-is. In the OS layer, somebody has to make the call whether the service process is best run as a cronjob, init script, or inittab line. Within the database, it's the difference between an INNER JOIN and... I don't know; I'm not a database guy any more.
Sure, you can find developers who can make something work through the full stack. Any idiot with access to Google can do that. Once you start revering them as some kind of technical genius, you lose the ability to question the uninformed decisions they're making. After a few years running that way, every small issue becomes a huge technical challenge, because everything's tied together in ways that only those developers understand.
I have seen a system where the front-end generates and sends to the server a chunk of plaintext, which is directly written to /etc/crontab. It was designed that way because that was "the simplest way", according to the well-respected full-stack developer who did it. He had no concept of the security or reliability implications, because he's not a security or systems person. He just knew that it would get the job done, and since he was so well-respected, nobody ever stopped his designs and actually reviewed them impartially.
I'm fine with having a few developers who work above and below their layers, but nobody should ever be responsible for everything, and nobody should be on the pedestal that often accompanies the "full-stack" label.
You do not have a moral or legal right to do absolutely anything you want.
They need four people but only got funding for one so they are looking for a unicorn. I have seen similar job listings over and over. The person is being set up for failure. No thanks.
People who can code all aspects of an application exist. They are typically older, more experienced, more rounded, and the good ones can get paid a considerable amount of money, precisely because they can understand and effectively code all aspects of the "stack".
What most companies are looking for are more unicorns: people who are young (ie: less external life, so they can/will work more), can code for all aspects of the stack well, single-handedly take projects to completion and/or coordinate between different groups, and don't know their actual market worth. Those people also exist, but they are much harder to find (and hard to retain, if/when they figure out their actual value).
What companies want doesn't always match what companies will take, if they cannot find their unicorns. Success is about making it work with what you have, not lamenting your inability to find the exact right candidate you think is out there.
I am older, as the summary suggests - I'll be 49 this year, but these days I do:
I don't think of myself as a "full-stack developer", I just think of myself as a developer. The goal is to solve problems, the more tools you have at your disposal the better.
Physicists get Hadrons!
Same old BS - what they are expecting are unicorns and unsurprisingly they don't exist, and if they do, you cant afford them.
The last Sys Admin we hired kinda went down like this, we needed a Windows / AD / DNS guy because all the other SAs have their heads up their asses with Linux.
Sifted through the resumes, found someone that had just that, plenty of Windows admin experience, got them in for an interview, somewhere in the process of selecting the interview panel several people managed to get on the bandwagon and bumboozeled this guy with Linux questions, Jira, Splunk, project management and god knows what else - yeah I get whats happening here, everyone wants dibs on the new headcount to help with their agendas...
Come decision time, the Jira/Splunk/Project nobs wanted to pass on them. After some "light arguing", I finally said, look what you guys are looking for is a unicorn (yes I actually said that), remember we're looking for a Windows guy, and this is the person for the job. Some muttering and grumbling, and they relented, and let us (the systems people at the table) hire them. Guess fucking what? We got what we wanted, someone that new Windows AD, DNS, and a dash of VMWare ESXi - perfect, one of the best hires we've ever made - and I like to think because I put my foot down on the clowns trying to veto them.
Yes, full stack developer is a thing.
I donâ(TM)t expect any developer to be an expert at everything in the stack, but at least capable of installing their own tools, able to debug across layers with minimal help. (That doesnâ(TM)t mean none; I ask a fellow developer for input all the time. Itâ(TM)s to get a different perspective, and to influence his long term skills; but sometimes he points out things Iâ(TM)ve missed and learn something too.).
You should be able to install your toolset, configure a web server to be functional, understand enough about dns to setup virtual hosts, enough to setup your language of choice (or a couple) for the server, and enough html/css and JavaScript that the basics arenâ(TM)t a challenge. Advanced UI work is a speciality, but tossing together a basic UI shouldnâ(TM)t require brain surgery.
If you specialize in UI, and stumble through the server side a bit, thatâ(TM)s ok. But if you do front end and canâ(TM)t install and configure a dev environment for testing, you arenâ(TM)t a full stack developer.
Iâ(TM)ve worked with developers that only understand a narrow layer of the stack. They are often an impediment to getting things done, you donâ(TM)t do advanced things if you canâ(TM)t understand what layers require what functionality.
Same as "DevOps". Employers came up with that little trick to get people to do two jobs for the price of one. Apparently a lot of rubes fell for it.
A "unicorn" is mostly just someone who's been around for more than a few years and kept learning in a broad range of areas. There are plenty out there.
Some employers have trouble with wanting unicorns but only having the budget for newbies, but that's an entirely different problem.
If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
There is absolutely such as thing as a Full Stack Developer. They are called ARCHITECTS. A shop posting for a Full Stack Developer is saying "we want you to do an architect's job, but not get architect pay". If you have never held the title of Architect before you may want to take such a position for a year or two. But if you truly are full stack and have 10 or more years of experience you are an ARCHITECT and should accept nothing less for pay or title.
Saying something is "a thing" is so 00's.
There are good developers and there are bad developers. Once you know and understand the programming paradigm, you should be able to work on anything from Linux kernels to JavaScript apps in browsers.
Now, you may not be as experienced in one or the other, so there will be a learning curve. If the company wants a "full stack developer" what they mean is that they want someone that, without a learning curve, knows the innards of all the technologies they have picked. If they want someone like that, they would probably try to retain and promote people that have worked there the longest, so a full stack developer should be virtually always an internal hire and practically at the level of team management.
But bad managers at companies that don't understand technologies or how 'stacks' work, want a college grad that can quickly be thrown into multiple gaps they have and thus hire externally for "full stack developers" not even knowing what their own stack is and how a hire would have to fill it.
Custom electronics and digital signage for your business: www.evcircuits.com
The main problem I have seen is that front-end tech is always changing (due to trends, or executive reading material), so that the experienced devs are always 'just behind the curve', allowing bosses to ignore skill for low rates
Well yes, 'full stack' exists, and it can work pretty well. It all depends on the project's needs. The OP is correct in that pretty much all layers of development have gotten more complicated and specialized over the years, but in a way they have also gotten simpler and less specialized too. The people who develop the various technologies have generally taken a 'minimum necessary complexity, scale up from there' approach which has made the barrier for getting useful functionality out of things pretty reasonable. A good full stack developer knows a few technologies from each layer well enough to link them all up and produce something that does the job. It will not be as fancy as something produced by a UI expert, or as high availability as something put together by a database expert, etc, but if the project does not actually need that level of design or fancyness then having a full stack person or two can get you what you need with the flexibility to shift people around.
It appears "datavirtue" is quite possibly a stealth Christopher Dale Reimer sockpocket account.
MOD ACCORDINGLY
If you submit 200 resumes and only get three interviews, you are applying to the wrong positions. First off, don't send resumes out blindly (anonymous email) and don't reply to positions not listing a salary. Those are a waste of time unless you are a minimum wage serf with ni skill, in which case I encourage you to spam them back.
Don't apply to agencies that are just harvesting resumes in hopes of getting positions in the future. If a "job" doesn't list a meaningful, if not exact, address, contact and salary range Its likely bullshit. Treat it as such. See point #1.
I'm a systems guy who is also a "full stack" dev, although my front end UI design is aimed at functional engineering interfaces vs "innovative" conceptual artsy stuff. There are two main issues to finding work. One, your attitude seems bitter based on your post. Fix that. Two, you want what level of work for what level of pay? I made a hundred grand in six months worth of work renovating a condo that I gutted and tooled up. If an employer can't match at least half that, I'll play with personal tech projects and "do the needful" with hand tools.
There is no shortage of devs, even at the high skill end. There is a shortage of companies with the confidence that they can identify and make proper use of them at the prices they can demand. If I can make more doing intricate tile work and pouring custom concrete counters in between peak surf conditions at my leisure, you're not getting local to cloud auto spin up code and lambda services from me in some obnoxious commute required office setting.
So consider that if building toolchains isn't paying for you, you might be working with the wrong tools or not worth what you think you are...
Have you considered the possibility that she may be really smart?
Chuuch. Preach. Tabernacle.
5-10 years ago when I heard "full stack", it meant that I could throw just about anything at you and you'd be well set to figure it out.
These days over half of the developers I interview call themselves "full stack", and upon further digging maybe 10% of them meet my prior definition. It's the new buzzword.
You can write Javascript and a stored procedure? It makes you full stack now - you don't even have to be very good at either of them. Most people draw a blank face when I ask what they've written that wasn't part of a website.
Just remember, "Full Stack" begins with "Fu", and ends with "ck".
"but only having the budget for newbies"
or only be willing to *pay* for newbies but demanding expert skills and extensive experience.
Pain is merely failure leaving the body
Smart does not defeat experience, ever, smart just means you learn fast, not that you automagically gain knowledge. Smart means you develop well based upon the experience you gain and that given sufficient experience, you will become really skilled, rather than just skilled.
Full stack developers == cheap employer ie hire one person who can do everything (so the non-coder thinks) rather than hiring a bunch of people. Not only is a bunch far more productive, specialising in areas, I would separate code writers from code debuggers. So you have creative writers crafting code that mostly works and then pass it to the debugging team, who write proper notes into the code, adjust variables to set company standards, polish and tweak the code and of course debug the code, so that you code creators are free to create new code.
This just like book publishers do not get the writers to edit books, they have staff to do that, leaving the writer to create new works. Good writers very rarely make good editors and good editors vary rarely make good writers, different mind set. You would of course have the writer and editor not to far from each other so the writer can explain bits of code that is unclear but most your code creator should be creating new code, keeps them in the zone. Editor of course fuss on detail, that is their zone, turning ugly code into pretty code and pretty code is far easier to maintain and adjust.
Chaos - everything, everywhere, everywhen
I don't think it's very popular on the west coast, but in the midwest, full stack is default.
Until my current job, I've been a full stack developer. In fact, my last job was even worse because I was also in charge of QA and doing devops stuff too. Effectively I wrote angular.js single page apps. bootstrap, java / spring rest apis, .net apis, administered postgresql & sql server, setup and maintained rabbitmq, admistered 15 ec2 instances running freebsd, a few windows servers in vmware, and a bunch of other crap.
I got burned out on that job after 5 years.
Now I'm a backend developer working in java/spring with oracle. It's much less stressful.
I don't think programmers should have to do 15 different jobs. It's bullshit.
...master of none. A full stack developer may know how to code everything but I would say surface level understanding is not the same as mastery.
Wow, your post is hard to read. It's full of grammatical and spelling errors. Ever thought of hiring an editor? /s
--
Yeah I remember being mainly java back-end developer for the first 7 years of my job, then got too comfortable at it and realized that I was out of date. I was always making excuses on why I don't like front-end development, always making excuses on why back-end development is way more important. Then I see new hires whipping up awesome UI in a few hours while mine looks like crap that I spend whole day on. People talking about UI stuff I never heard of, what? people don't use JSP JSTL anymore? After thinking about it, the issue is I was proud of being rock star back-end developer afraid of being the village idiot on front-end, scared and too lazy to learn new frameworks and programming techniques. My managers don't care since I am at the company longer than them! So I decided cut down on back-end work and started doing front-end instead, joining various company groups, yeah it kind of sucks at the start and feel like you are the new guy everywhere and ask dumb questions all the time but now I do everything and anything, database stored procedure, spring boot, docker, django, kubernetes, node js, angular js, d3 js, big data, ios, android, linux c++, amazon ec2.
So yeah I suppose they will next be looking for FullStack DevOps position. So stop making excuses why back-end is the be all end all position and you don't need to learn anything else.
Most of the interviews of supposed Full Stack developers that I do are really people who have done some mild back end work in addition to web front end work, and maybe did some Windows app once.
A good full stack developer can get down to the metal and scale back end systems. They can consider HCI while also thinking about API abstrsction. Because they're good at math and abstraction, they're not scared by machine learning, stats, modelling....
The overwhelming majority of "full stack" developers are actually just developers that aren't particularly good at anything.
So, instead, I look for multi-domain specialists, developers who have moved through different job functions and business types. Maybe they did signal work, which became video, which became CV, which became robotics. Maybe they set up datastore which became policy layers and scaling, which folded in user interface.
Good devs are generally going to go deep or broad. Great devs are going to do both.
When interviewing, I explain that the problem could take us from scalable multi-site server back ends down to embeddeded headless systems. We don't know. Some devs freeze. Others smile nervously. Some raise their eyebrows while smiling and lean forward.
If I'm hunting for "full stack" I'm looking for the last one.
Backend work "more complex"? I've been doing it for 20+ years, once I mastered my first programming language moving data from one place to another became just, well, labor... Backend work and MQ became boring tasks for me years ago. Frontend is the only place left where there's still real challenge for me. Even after you get past the technical challenges described in the OP such as multiple screen sizes etc. - Creating a proper emotional experience is the only real challenge left in programming. The rest is API Mambo jumbo which will probably be done by machines in 10-15 years.
Another "I can do it all!" bit of BullS***
Look, I can sling code (from FORTRAN to Python) but it's nothing rational people would use in prod. I can configure servers, networks, platforms, whatever you want. Sure, I can - but I don't.
There are guys/gals who know way more about it than I. They should do it while I focus on what I'm really good at - Security.
To the "full-stack" folks: "Sure it works, but you're using dumbass" -T
Well, you are approaching this from a different angle.
There are many companies with 25-500 employees who need programming, but don't want to pay for an entire team.
Think of a gazillion specialty companies who are small to mid sized, but need custom software. Not every company can run off the shelf type stuff because their business model can't adapt to what is currently available.
So they hire 1-2 programmers and have them do the whole thing. Customer management down to the website.
These aren't bad jobs. And the organizations care more about your longevity than the typical tech shop. These companies don't want to hire someone new...huge hassle.
These are not bad jobs. And they aren't being offshored. You're part of the team and effect how the business is run. You're there to help and guide because you know what's going on.
It's using your skills in a different way.
No reason to lie.
...more complex "back-end" development...
I wonder if this guy has done much front-end work. I myself is much more of a server side developer, exactly because it is architecturally so much simpler. The front-end has to handle loads of stupid, fiddly bits, and if you're lucky, it will be JSF or JSP, so you get to code Javascript, EL, (x)html, and quite possibly other things as well. User interaction is by far the most complex thing, IMO. On the back-end you mostly stay in one language, and although you may be doing unspeakable things to data, it is going to be relatively straightforward, if the system is well designed and follows a sensible model, like MVC.
you are applying to the wrong positions
Perhaps. But all of my skills are on those positions or I would not have bothered doing it. I enjoy what I do and know what I can do. I have also been on both ends of this equation.
Perhaps I came off as 'whiny', maybe even bitter (did not mean to). I typed it up quickly and did not exactly re-read it like I usually do (but hey, internet, who cares right?). But I am not alone in this. There was a recent hackernews story. About 100+ replies. Many nearly word for word what I just wrote. On average people are looking 4-6 months for programming work some as long as a year and a half. On average they are sending out 100-200 resumes. On average the hiring manager receives 200+ resumes of those 199 need to 'go away', at least 180 need to be purged at first. On average just sending in your resume gets a 1-5% chance of hearing back from them. Using a recruiter that average goes up to 10 to 15%. If you know someone that goes way up to well past 80%. You usually have about 1-2 days after a job is posted to have even a slight chance of getting in, recruiter or no. After that don't bother. It really is an odds game. Some like to pretend that does not exist. Well it is just the way our industry works currently.
So consider that if building toolchains isn't paying for you, you might be working with the wrong tools or not worth what you think you are
Oh I know exactly what my skills are worth, I am actually under charging because I want a job. I can raise the rates later after they have a taste. I know the averages and have as I said on the other side of the table deciding what people make. The tech world is feeding us bullshit. We all know it. So I 'retool' my skill set all the time. My current co-workers were shocked when I guessed within 5k what they were making.
Don't apply to agencies that are just harvesting resumes in hopes of getting positions in the future
I always go after specific offered jobs. There are 4 nationwide agencies that are little more than harvesters. One is especially bad, I just avoid them all together. But you still need to work with them. All of the large companies use them. The manager doing the hiring usually knows they are crap. Corporate HR has told them who they can and can not use. But they can usually interview 20 people and get something out of it.
There are a lot more lookers out there than jobs. Some of the really big companies do not even bother to hire people. They just contract it. I have a pretty good guess what my current contracting company is charging. The guy I work with currently told me flat out 'we never even could have hired you if you were freelance and I would hire you outright for way less and you would still be very very very happy'. He was surprised I knew the game and what was going on and was relieved he did not have to calm me down. I know this game.
If I can make more doing intricate tile work and pouring custom concrete counters in between peak surf conditions at my leisure, you're not getting local to cloud auto spin up code and lambda services from me in some obnoxious commute required office setting
Do not mistake that you have a job now for one in the future. For example your construction work. That pays well until your mid 40s. That is when your body will give out, sorry it happens to everyone. You will need to move into even more specialized work or get a crew to do it for you. Dozens of my friends did the same as you. They are now on a decent regimen of pain killers and always getting something worked on. So save that money for your body. You will need it. It is good steady work when the market is doing well. So save for the lean times (about every 8-10 years, look for one in the next year or so we are overdue). Those usually last about 1-2 years so plan accordingly. Glad you found a niche as being a programmer was obviously not for you in the first place. It is an unfortunate lie
At 45+ I retrained into c# and made full stack in under two years, front end all the way to deployment, and I was far from the brightest of our bunch.
Front end = harder social problems.
Back end = harder technical problems.
Both claim to be harder, because they're scoring on orthogonal axes.
> 35+ different mobile device screen sizes and 15 major browsers to code for
This shows he doesn't understand the entire POINT of html, a web browser, and CSS. He clearly doesn't know the difference between a PDF and an html document if he's coding for many different screen sizes with many different browsers. PDF files are sized - you can make a letter-sized PDF or legal-size, for example. The entire PURPOSE of a web browser, of the rendering engine, is to format *information* coming from the server to fit nicely in whatever size the window happens to be at the moment. If you're coding you're web pages for lots of different screen sizes, you're missing the entire point of what a web browser does, and your pages will be fucked when the window isn't maximized. *Maybe* two versions - small and large. Other than that, let the browser do its job. Don't try to force something to be exactly 3 pixels over by loading pixel.gif three times and you won't have to worry about screen size (or window size).
Your html should describe *what* the page elements are, using tags like "header", "list (ul)", "top level heading (h1)". It's the browser's job to figure out how many pixels a top-level heading should be given the screen resolution, user preferences, etc. Your CSS then can give hints including "larger" which should generally apply to all devices.
Code for 35 browsers? Try coding html 4 or html5. Not IEthml, and not loading pixel.gif five times when you detect Mozilla. Just code to the standard. If one of the three or four major browsers is completely broken in respect to the standard for some tag you can adjust for that, but those instances should be rare.
They reported that "full stack" development today is a term that is tied to the in-house server environment, and that in today's cloud environment, the extent to which the cloud manages itself means that programming for the "full stack" isn't nearly as difficult as it is for the on-premise computing and storage environment.
Keeping up with the latest UI fads and trends is not an easy thing to do such that a dedicated front-end dev(s) should be brought in if an org cares about eye-candy and a wide variety of user device sizes.
But, if the applications are internal or business-to-business on a small scale, then a trendy UI may not matter much such that specializing by layers may be less necessary.
Table-ized A.I.
It is impossible to find good people under the age of 40. So by saying full stack they hope to get flexible people who have experience with multiple technologies.
The other reason could be that they deliver shit solutions to customers on a very fast basis.
It is incredible how many cloud service providers do not have people knowing DNS and mail. Like SPF, DKIM and DMARC.
Where I work a design bureau makes most of the front end. And we make the rest.
It's just an attempt to hire 1 person to do 4 different things.
When you see list of requirements, it's ridiculous.. and it's getting longer every 2-3 years. At least if we're talking about Web Developers.
All those things are trivial. Any decently educated engineer is capable of the lot. The problem with kids these days is they rely too much on work done by others.
You should largely understand every bit and byte from the moment you hit a key on the keyboard down to the interconnect protocol on the board to the cpu and the way in which low level languages operate.
If you understand the basics, there is no question of if people exist to do this; you can build everything from the ground up if you have to. That is what makes an engineer so valuable.
... be an expert in every aspect of only one single field of those supposed to comprise the 'full stack', let alone an expert in everything within every field of the 'full stack'.
As a good and experienced developer, though, you might have had the chance to look into several of those fields, and are, of course, able to learn what you do not yet know. As it is, a specific 'full stack' job can't possibly require every theoretically existing aspect within every field of the 'full stack', either.
If a developer fills the stack, the software will crash.
aaaaaaa
Almost 100% correct. Except for this part:
"If one of the three or four major browsers is completely broken in respect to the standard for some tag you can adjust for that, but those instances should be rare."
Actually, if any of those browsers fail to correctly render the standards, you should point any users who complain to you back to their browser developers' bug report page, and go have coffee. Fixing bugs in the wrong code does nothing to help -- it only introduces bugs, complexity, and maintenance burdens.
Do not forget that while client-side of full stack almost always is Javascript, the server-side can be dramatically different from Lua or Erlang to Java and Python - and there are very few of the people who can develop fast enough in every server-side language available. Client-side Javascript libraries also have a large competition / fragmentation, big corporations are pushing their solutions, while talented smaller projects (Elm, Vue,js) struggle a lot to compete just because there are no big names behind these. Imagine Python was developed by huge corporation and pushed and promoted, not because it's a nice language but because there is huge money behind it. Client-side also is going into wrong direction of cross-compiling (transpiling), creating unnecessary extra layer, instead of adapting much of ES6 and TypeScript in the browsers natively. It discourages browser developers to implement new features fast enough.
Though I think in reality I am a full stack developer, I just tend to prefer coding as a hobby even though I've been doing that for 30 years and the DBA thing for only about 5 years.
From my DBA perspective, most full stack developers are not that great when it comes to database things.
Thanks, it is now clear why you have a hard time getting a job.
Read a selfhelp book or get some psych/personality eval (asperger?). Full stack life, not tech.
You seem to value experience, but I have met people who have had a lot of experience, but it seems like they have just repeated their junior Java class 10 times. Experience helps, but it seems to stack only on some people.
From my own experience I remember a phase when I got stuck, I was really good, but I did not improve for years. Then I met some new people who helped me to continue improve. Now my skills are again at its peak. As years go by, it becomes harder and harder to improve.
Full-stack developer usually means they are small and have no money for separate teams or this is low end support job.
It means they do not have money for dbas and admins
and you will end up doing it all.
Customer wants a web application that can be also used to tablet or mobile phone and "all browsers" (actual text from requirement document). We use Bootstrap to minimize maintenance, but it has its own problems. You can do small adjustments easily with html and css for simple browser, but if you adjust bootstrap too much, you break things.
I would love to just keep the focus on the functionality and somewhat good looking UI, but that is not enough and that is what makes UI hard. Those last 10 pixels.
I guess editors are overrated.
I saw no spelling error nor a grammar error.
Perhaps you want to post a corrected post, so we all can learn from your insight?
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
I guess I am full stack... Everything from R&D to requirements to electronic design to firmware to validation and debugging to production support.
It's definitely undervalued. If you grow into it at one company the raises don't usually match your new skill set. If you are looking to move most places will be looking for specific skills and won't value your full stack abilities properly. That's just the way hiring works it seems.
I've noticed that US companies operating in Ireland pay very low wages. They contact me with offers that are â20k below anything I'd even consider, but want the skills and experience I have. They usually have very poor benefits too. Minimum holiday, no real perks. I don't know how they manage to recruit anyone. UK companies are often the same.
EU companies tend to be a bit better. The Netherlands is a great example. Good pay, 30% tax free income for foreigners, good holidays, holiday buy-back, lunch provided, car chargers, bike facilities, nice offices etc. Sweden and Norway seem good too, if the climate is okay for you. Language could be an issue.
const int one = 65536; (Silvermoon, Texture.cs)
SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
Thank god someone is still doing real work. Wishing you the best bits of life!
Full stack to me does not mean front and back end plus middleware. It means ALL software including what many large service providers tend to split off into infrastructure and systems support. The rise of cloud hosted everything up to the API means system software developers and coders are moving their capabilities right towards the application layer while application layer coders are becoming more interested in what the cloud providers are hiding underneath their applications. A full stack developer should be an IT generalist perhaps specialising in low level code debugging that can fix (usually *NIX) operating system level issues and not just application code. My current focus is on automation of different infrastructure and hypervisor APIs to spin up complex sets of compute, storage and network layers, setting out a rapidly repeatable whole environment landscape before any client code is dumped on it to break it.
I am one. Been coding 20 odd years, find myself more architecting software/systems, managing teams than doing the grunt work, though I will touch back and front end when shit gets tricky, or to relieve deadline pressures. Still have my chops. I am the guy who calls bullshit to "can't be done". Get paid proper for it. Yes I am your God. But seriously.. It was a lot of years in the trenches.
In my youth it was describing more that just being a code monkey and so able to do the full stack of; Analysis, Design, Code, Test, Deploy.
I know TDD, Top Down Development was hijacked long ago but this seems even larger.
My entire group is filled with them and I'm one of them. While everyone has their strengths and weaknesses, most in my group can jump in and out of the entire stack and it works great. While the younger folks tend to stick to their one area, the older and senior engineers are expected to be able to do it all and we do (and thus get paid appropriately because of it).
When was the last time you had an outage because the UI didn't work right?
Outright outage? Maybe not, but with a buggy or badly-designed UI, you just get a less spectacular, day-to-day loss of productivity due to improper/inefficient use of the system, tech support time wasted hand-holding users, mistakes made by operators and pissed-off customers... worst case: for a commercial product, people don't buy it. For a corporate system: users make the minimum use of the system they can get away with and rely on their own ad-hoc paper solutions and spreadsheets to get the job done - possibly a massive liability n the making. All less "visible" than the lights going out (figuratively) for a few hours but potentially far worse/more expensive in the long term.
If you're only going to hire one developer then (obviously) they need to be "full stack" - and have actual experience. If you have a team then maybe you can afford the luxury of a backend expert and a UI expert - but you also need a generalist - who understands the whole problem and can at least communicate with both specialists to keep them working together. Otherwise, you get the usual bullshit where each one thinks that they're the only one with a hard job and lives in a dream world where both parts of the project can be designed in perfect isolation (good aspiration, but probably not going to happen). Of course, I'm assuming "UI expert" means "actually experienced in solving practical problems in the field" not "word perfect in UX jargon" - but a similar caveat applies to all fields of development.
In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
In conversation with someone from a university in Ireland, they said the reverse - the wages on offer from USA-based companies there were such that staff retention was difficult. Wages in the USA are much higher than the equivalent in Ireland, or the UK, although differences in healthcare costs might account for some of the $20k difference you observed.
Learning a nordic language should not be a problem for an english speaker. Considering that english is heavy influenced by germanic and nordic languages. ...
Most jobs there are english anyway
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
In my experience the people who need to know the "full stack" are the Support team, not the Dev teams. The Dev teams can be split (front-end, back-end, middle-ware for instance), but all these get 'merged' when handing over to Support (which has its own set of skill-sets).
You never know what is enough unless you know what is more than enough. - Blake
Full stack is not that tough to get into, and pretty fun if you're into designing. You can get pretty good practice by using a simple Python webserver like CherryPy and SQLite as a backend, which obviates the need for installing a full LAMP stack.
The most tricky part IMO is keeping up with all the Javascript libraries out there. However, if you learn jQuery and maybe a data display library like D3 or a higher level charting library you can do pretty cool stuff with fairly minimal code.
"What lies behind us, and what lies before us are tiny matters compared to what lies within us." Ralph Waldo Emerson
BSc = Bull Shit Complete
MSc = More of the Same Crap
PhD = Piled Higher and Deeper
BA = Bugger All
I think Norwegian is closer to Russian...
const int one = 65536; (Silvermoon, Texture.cs)
SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
The parent is spot on, specialization in our field should never mean exclusivity, it should just mean a strength. Being full stack is the only way to truly understand what it means to write simple, elegant code. Watching your too-clever-by-half solution go up in brittle, flaming bits as soon as you deploy it on the real platform teaches you a lesson you cannot learn in books, only by doing.
The way to learn the full stack is on your own time, on your own projects, exploring whatever components tickle your fancy. A skill learned on one stack is impressively reusable on many, many others. I cannot count the number of times I've gotten a project or a job where I had to use some skill I learned on my own.
And, as an ancient developer, I will say you simply cannot afford not to be full stack, because you will find yourself out of a job before you are ready to retire. That is just a fact of life. Be prepared.
"We receive as friendly that which agrees with, we resist with dislike that which opposes us" - Faraday
Interesting. I've seen silly stuff like 45k for a "senior" developer from American companies. Irish companies in the same area offering 65k.
The other big difference is that the Irish ones offer things like relocation and pay your travel costs for interviews.
Maybe the difference is that US companies have bigger teams on average, so you are just a cog and get very little. Smaller Irish companies prefer quality over quantity.
const int one = 65536; (Silvermoon, Texture.cs)
SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
Tell me about it. My first full time job out of college required me to be full stack (though it didn't advertise at the time). Eight years later, I left because of a five year pay freeze (stayed that long because that was when the banksters had crashed the economy).. 50% raise to do so but I stalled again due to a rough couple of years working with junior "senior" developers. You know, coders doing "object oriented" that don't know about inheritance and MSSQL DBAs that never heard of stored procedures. Ridiculous. Now, all the jobs either don't think I have full stack experience or won't let me use it (my current position - DBA and bored to tears). I'm not even 40 and barely look 30.
The only thing that's actually thrown me for a loop is all of the cloud crap. It's not in the job descriptions yet but our MS rep is pushing Azure really hard. Problem is, the documentation is extremely poor and it's essentially a black box. The feeling I get is that, years ago, management outsourced development to Indians and the result was unreliable garbage, and now we have few developers across the organization, so Microsoft dangling this "we'll manage everything and it'll be awesome" in front of them looks like an easy out. Great, now that we have no development knowledge, we can outsource operations and have no infrastructure knowledge either. And then wonder why nothing works and nobody know anything.
Full Stack means you know your way around correct front-end, correct back-end, correct software architecture and a solid setup that can stand on it's own once the project moves from development into maintenance/"dev-ops". This usually means that you focus on a specific set of technologies, and don't get too much into others in detail.
Here's a nice example:
By chance and circumstance I happen to be doing quite a bit of PHP for a living. I started before Node and kinda got stuck with it. I haven't gotten round to building mission critical Node stuff yet, but there also are some things about Node and some about PHP that actually have be favour PHP, despite it being a language developed by monkeys on crack. I also know my way around JS, Ajax, DB Design, OOAD, Linux CLI, Tooling, Load-balancing and some other stuff. Ask me about intrinsict details on JS or PHP I might be out of my depth or jump straight to stackoverflow, but therefore I don't make a fool of myself when I need to pick a font or a color palette or design a basic pageflow and layout. I can also tell with quite some certainty wether someone at any tier of the stack knows what he is doing or not.
Hence: I'm pretty much what you would call a senior full-stack web-developer.
We suffer more in our imagination than in reality. - Seneca
... and never was. Anyone who thinks that doesn't know what he's talking about. The simplest type of frontend you could do was with Flash and even for that you really had to know what you were doing, otherwise you'd end up producing shit.
If someone tells you that front-end is simple, you know right away that he's a douche and his judgement shouldn't be relied on to heavily.
We suffer more in our imagination than in reality. - Seneca
not to far from each other
That should be
too
not
to
The problem with relying on an automatic spell checker is that it can't determine if the spelling fits the context.
The real question here is which "stack" does one refer to? When average people refer ro the "full stack", they usually think of applications with a Web frontend, and the stack's top layer is there, at the Web UI. And they are right, partially, as the most visible apps are built as Web apps. But software development can be done in various contexts, from programming microcontrollers to creating AI algorithms, to whatever other technology out there.
Moreover, even within the Web-based paradigm, there are a lot of "stacks" available, tons of technologies and platforms that sometimes imply going through steep learning curves to really know. So while you can be an expert in the full stack of technologies you currently use, a company asking for a full stack developer may refer to a completeley different set of technologies, and the learning curve implied will transform you into a beginner. Yes, the concepts are similar, but the details can be quite different and important.
So, unless a clear specification of the actual stack is given, this "full stack" requirement is nothing more than wishful thinking on the employer's side.
Alas, yes: one of my former start-ups had to do a pivot to node.js because they had a limited budget and real difficulties finding cheap java or kotlin programmers. They then had to build back-end programmers out of front-end, thus increasing the rate the now full-stack developers could ask for. Rinse, repeat.
davecb@spamcop.net
Some employers have trouble with wanting unicorns but only having the budget for newbies, but that's an entirely different problem.
Actually I think they're related, very often it's like we should have had three people, got the budget for one but let's throw in the requirements for all of them and hope for a miracle. There's some realism in it in that we can shuffle people around a little depending on what we get, but not that much.
Live today, because you never know what tomorrow brings
I build the train, I drive the train. And when it breaks, I occasionally fix the train.
And yes, that includes both the locomotive and the caboose.
davecb@spamcop.net
The biggest benefit to being full stack is in early builds, concept work, proofs of concept, etc. Once you scale you need some specialists.
Na, it is very close to german.
With some patience you can basically read it.
Even as an english speaker you should be able to read 20% - 30% of the words.
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
Hmm. Reading rtb's post I was able to follow it fine. Then I read the Captain's post, went back, and yes there were some errors (e.g., "ie" with no punctuation, and a few other things that you typically just give a pass on in an internet post.) Then I read your post, went back and read both prior, and wondered if you had missed the "/s" in Quark's, then wondered what I might be missing in all three. Yeesh, I'm overanalyzing. Decided to skip it, get coffee. Then post-coffee, I figure I might as well post myself (cause: coffee, of course).
My conclusions: 1) Editors probably aren't overrated, just under-hated, 2) Coffee is a double-edged sword, 3) I used the word "post" too many times, but I'm not going to go back and fix that ex post facto.
I don't trust atoms -- they make up stuff.
The Germans have something like that, it's called an egg-laying-wool-milk-pig.
They are very rare and their eggs are small, the wool is sticky, the milk sour and the pork awful.
You know the ole 'master of none' thingie.
It's definitely undervalued. If you grow into it at one company the raises don't usually match your new skill set. If you are looking to move most places will be looking for specific skills and won't value your full stack abilities properly. That's just the way hiring works it seems.
The problem with being full stack is there's still only X hours in the week. Just because you have the capability to do everything doesn't mean you have time. They still have to hire someone to do the work you don't get to even if you have the capability to do it.
I think I might be too, it is perfect work for autodidacts. I have my own persistence layer and UI layer that allows me to concentrate on domain and UI design. I'm planning a MQ for the persistence layer. I've designed business processes and applications to match. Designed and rationalized the DB, did the UAT.
From notepads and projectors to deployed in data center. I can design discreet electronics if I need to. I've been in competing project situations and projects with penalty clauses for not achieving certain project milestones by a deadline.
First of all, it is kind of a buzz, I really enjoy doing it, however it is all consuming and exhausting so I needed to find a balance. I carefully directed my career for years to prepare however I work in a pretty dense IT market so I think that is a factor too, always the deep end and many steep learning curves. I always find other geek/nerds projects interesting for what I can learn or contribute and learning to interact that way really made a big difference in terms of opportunity presenting itself.
I learned a lot and am grateful for the experiences I've had in my career and the opportunity to design and deploy some interesting projects from the ground up, they've always been fascinating. Especially when I let go of the ego and learned to handle pressure, so my takes is satisfying but exhausting.
If I'm not specifically there to do such a project (preferably on a contract) generally a company who has employed me will figure out you have those skills available and attempt to utilize them, which has generally been my experience. I had the same experience as you, employers will try to get out of paying you for what it costs to accumulate those skills. However some are generous.
Also designing business processes is intensely interesting, challenging aspect, which is the natural leader of full stack development I've experienced however if your soft skill are lacking you don't stand a chance. You have to manage stakeholder expectations, keep the respect of the developers and no one want's to work with an asshole. At first I only did architecture however I also learned project management.
I personally can't do it all the time, so I don't, but it makes you really employable because of how adaptable you become. I usually like to spend my energy on my own interests and I don't want to neglect them so sometimes I specifically don't do full stack projects so I have enough energy to chase my own dream. That's the balancing act.
My ism, it's full of beliefs.
Why don't you just kill yourself. You're obviously a waste of carbon atoms.
I have a broad hardware-through-software skillset. I would not seriously consider an offer of 65k - it's not even remotely in the ballpark. Luckily, I don't have to. I run my own shop at my convenience and in my own way.
This is an approach I think very likely can be utilized by many who actually have a serious top-to-bottom skillset. At this point in a career, There's probably no need to compromise by working directly for someone else. I certainly don't.
The prevalence of poorly coded applications and systems out there mean that there's always a market for more technically capable, correct, and secure solutions. Build a few on your own, get them out there where people can find them. Then the work will come to you instead of you having to come to it. It might well be that one of your better efforts does quite well for you all on its own, too.
I've never had a job in my 17 years as a developer where I was specialized in one thing. My team does everything, some are more skilled in certain areas, but we all are expected to learn anything that is required especially when you have to cover for vacations. Example: The OS administrators decide to do some routine package updates. Those updates take down the services running on it. They don't know it, they don't care, it's not their job. They did it outside business hours to minimize impact. Now the team responsible for those services get called in on off hours because of an outage caused by the OS team. Now we manage our own stuff, and are responsible for everything involved on it. There are countless examples where someone breaks something because it's not their responsibility to deal with whatever it is their change broke.
I would separate code writers from code debuggers.
Has this ever happened in a commercial environment? Just curious, as I've never come across the Job Description "Code Debugger". (well, not in my organisation). Yet, thinking about it, (and having looking at a lot of code from a support perspective) I can see the need!
Really what it sounds like is a refactoring team. Unfortunately it sounds like what "management" would call an "unnecessary overhead".
You never know what is enough unless you know what is more than enough. - Blake
I have done full stack development for many years and am now just doing back-end work. Here is the thing I have seen and experienced:
While I have done "full stack development" for many years and excel at back-end work, I have to admit that by far the best graphical work I have been a part of has been done by others and I was just able to incorporate it into what I was doing. By the same token the people I have worked with who have done the best graphically by far work were either completely terrible at the back-end work or only did front-end work. I have been in the industry many years, have done a lot of cool stuff, and have walked into at least a few different shops and saved the day while the rest of the team was collectively failing. In general while I have touched on every aspect of the development stack, focusing on a few things clustered around my core competencies has been far, far more productive than trying to do it all. At least if you want to do anything right and in a timely manner, you have to reduce the amount of information your brain has to process through down to the point where you are not endless trying to figure out how to do the next work module and then doing it poorly because it is either the first time you have done it and/or you lack the expertise to do it right while also at least for me throwing enough to learn in to keep it interesting. Don't forget mass production transformed the world by having many people (and now more and more machines) do specialized tasks and because they are focused on one aspect of the process, they do it a lot faster. The tricky part of software engineering is you always need to be building something that either has not been built before or was done poorly and has to be done better, so if for some reason you are just cranking out the same thing all day every day, you are doing something wrong. It is the machine's job to do the repetitive task, and I have come across shops, especially mostly H1-B shops were the H1-B code monkeys are doing the job the computer is supposed to do and doing it poorly at that and not the task they are really supposed to be doing. There is also the problem where when you develop software, it becomes your baby and so you do not see the obvious flaws that others see. I have never once come across someone who is flawless in their development work; everyone needs constructive criticism such as technical QA and acceptance testers and such. This whole notion of just picking smart people is actually pretty dumb in a way because most people are rather dumb when it comes to the level required for broad range of technical tasks, so really the smart thing for employers building up a company that develops software is to abandon the good o' boy system I see so often and instead try to be intelligent organizers of an array of labor talents. Intelligent organizers of labor tries to find people with various talents and put them into areas where they can excel while also not burning them out. This necessarily means specialization and other various practices to keep your talent from burning out. Also there are plenty of people who think they know it all, but actually suck and break everything or at least are good at fewer things than they boast, so intelligent management is figuring out what is overstated, who "does work modules" but actually breaks everything to hell, and who may be under valued. Too often I see the least valued person is the one who takes extra time to do it right both because maybe they don't reach some arbitrary work unit quota while taking the extra time to get it right and other developers feel threatened because hey this one guy (or gal) builds things that work right where all of the predatory worker's stuff is a disaster.
I'll stick with my embedded military/aerospace world that actually creates products of real importance using the same basic tool sets and ideology for the last 30 years. The rest seems to be have become some chaotic rat race that seems completely unappealing to anyone over 30.
A "unicorn" is mostly just someone who's been around for more than a few years and kept learning in a broad range of areas. There are plenty out there.
Hopefully there are more of those unicorns coming through the pipeline. I've found so many people simply don't want to learn new things. That won't work in the future, and to a large extent hasn't worked for years. Lifelong learning is the key, and a big part of being a Unicorn is a desire to learn new things. I've seen people lose their jobs because they refuse to learn new things, or learning them poorly when forced.
The shepherds did so well protecting the flock that the sheep no longer believed that wolves existed.
As I read your post I started to realise you were describing me and my company (a very small company), I really like working here though, I am valued and play a big part. But there is a significant difference to the main theme of this thread: I was hired as a newbie and grew into my position through a lot of personal investment, hard work and dedication to the company, I wouldn't self describe as a full stack developer but I will basically put my hand to anything that is needed at this company, I fill a number of roles but with the benefit of filling them in the way I want, my bosses are my colleagues and we really do work together. If you can find a place like this I highly recommend it, don't stick your nose up at tiny companies (I was apprehensive about this when I started), they can be truly enjoyable and satisfying places to work, sure I don't get 100k but I prefer the former over misery and money.
It is a thing that should not be.
Mike Nakis on "Full Stack Development":
http://blog.michael.gr/2017/07...
This guide is definitive. Reality is frequently inacurate. (from THHGTTG)
Being smart is not enough, it doesn't provide you with all the wisdom that experience and dedication to the art of programming and creating does. And boot camps can't teach you all of the mistakes you made on your journey to learning your craft.
> I think Norway is closer to Russia...
There, FTFY
I'm a full stack developer, I can and do write code in the embedded landscape with C, ASM (Several Arch's). I write back-end code with PHP, C, C#, Node.JS, Erlang, Scala, and some others. I write code in the front-end with JavaScript, Angular, React, GTK#, C#, C, GTK, and some others and I work with Databases, SQL (only when required as it's crap), MongoDB, and some node based DB's.
Part of my past job was to write and maintain a stack that included an Embedded Firmware, Database, Back-end globally distributed system, Front-end System on the Web and Desktop and I wrote a full testing framework for that system. There are defiantly full stack developers and they have a place, BUT, they're also a place for non full stack developers who specialize at a Jedi Ninja level in one area and rock it so hard, it's basically another Woodstock.
you should point any users who complain to you back to their browser developers' bug report page, and go have coffee
HA HA HA! Tell that to your boss who couldn't give 1 rat's sh17 about standards or social good or anything other than it doesn't work in Edge and 19% of the users use Edge.
Who pays for your coffee?
I have no problem with your religion until you decide it's reason to deprive others of the truth.
Being willing to learn new things is different from being required to constantly shift gears.
How am I supposed to get any good at Yesterdays-Framework.js when management suddenly decides we need to "pivot" to Framework-du-Jour.js?
Being willing to learn new things is different from being required to constantly shift gears.
How am I supposed to get any good at Yesterdays-Framework.js when management suddenly decides we need to "pivot" to Framework-du-Jour.js?
Hard to say. Over my career I simply learned and adapted to what I needed to do. I actually enjoyed learning new things - I suspect that might be the difference between myself and many/most people. There are rewards for being flexible and open to learning new things.
The shepherds did so well protecting the flock that the sheep no longer believed that wolves existed.
Of course "Full Stack" developers are a thing. I am one.
In the last year I have:
1) Created C/C++ code for remote sensors (IoT stuff)
2) Got that data from the remote sensors to our cloud servers.
3) Created server side services in C++, node.js. Pascal, Python to get that data into distributed database and do useful processing on it.
4) Put up the database and designed the require schema.
5) Taken care of messaging between various server side process.
6) Create the server side HTTP servers and RESTfull API's.
7) Created the browser side stuff with HTML, CSS, Javascript.
The full stack, from devices, to server, to database, to browser.
Of course, it's mostly crap because I'm no expert in any of those areas and don't have the time to get into them seriously.
It all hangs together well enough, for now....
There's a difference between being flexible and learning new things...and.... management rewriting the app every year or two in some new language and never getting around to releasing it.
I've found so many people simply don't want to learn new things.
I agree with you, but I think that's only one part of the problem. Another part is that so many relatively inexperienced web developers today are learning the wrong new things. They buy into the hype and so focus on learning the details of one short-lived tool after another, instead of developing their more fundamental skills that will go far deeper and last far longer.
Developers often talk about needing to use tools they can take from one job to another so their careers don't stagnate, but these tools rarely last long enough in the spotlight to be valuable for more than one or two job moves anyway, and then all those skills and buzzwords are worth almost nothing.
Employers often talk about needing to hire people who can hit the ground running with Supreme Master Framework 1.7.3, but a generally competent developer with knowledge of JS can pick up a typical UI framework or library within a matter of days if not hours anyway, and then they'll still be more capable than a framework monkey.
If web developers learned more substantial development skills instead of obsessing over superficial resume-building with one trendy buzzword after another, then in the long run they'd be able to achieve far more, faster and with better quality results. And if more employers had sensible recruitment practices that focussed on those people instead of requiring silly resume padding just to get past the HR keyword scans, they'd have a much more capable workforce.
It's hard to blame the junior developers for getting caught in this trap, because I think a lot of it is driven by the buzzword bingo recruitment practices of too many employers, and the potential employees are just playing the game by the rules that have been set. But there are more enlightened employers out there too, and if you understand real development instead of just colouring by numbers with this week's framework, you also have options for branching out on your own.
As the saying goes, there is a difference between having ten years of experience and having one year of experience ten times.
If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
Well, in a way yes:
Our QA actually does debugging. Not really because they were originally intended to do that, but because we happened to get a couple of good people for the role.
Since it seems to work well, we have made it policy and got a third QA person with the skills to do that too instead of another developer.
Respectfully disagree. I've worked with many folks who can hack HTML/js/Java/SQL/etc with varying levels of acceptable competence. I've met maybe 2 in 20 years who were equally excellent at everything.
Except users do not really care in the real life. "The website is broken" is their reaction and they go elsewhere.
In the ideal world we browsers would be standard compliant, in a slightly less ideal but good world user would blame the browser and either use another or report the but to them, but in the real world that is not the case.
Are there devs that end up doing everything? Obviously, tons of people like that. But there are no devs that are equally good at everything, just that sometimes you have to do tasks you are not exactly best at because there is simply nobody else to do it. Most devs worth their salt can figure out almost anything they need to in a pinch, but getting the job done is not the same as getting the job done well.
Its good to know a little bit about everything, but its not good to run around like a headless chicken trying to do tasks best handled by someone else, while leaving tasks that you are actually good at lag behind.
Yeah, we want to hire someone in their 20s, who has "full stack" experience (i.e. can do any damn thing you throw at them with any technology), who will work 60+ hours a week for under $20 an hour.
Of course, there's no shortage of people who will *claim* all of this on their resume.
Job descriptions like this are what happens when a company is either owned or run by non-technical MBAs, or the company has become infested with young MBAs. In either case, they're headed down the slow chute to insolvency. The MBAs, of course, will personally profit, at everyone else's expense.
Please do not read this sig. Thank you.
I'm what you'd call a full stack dev. Most of my time is spent in Angular 2+ with plenty of messing around with Observables and the like. However, I also do work in Spring creating REST endpoints, entities, handling security and integrating with other web services. I also write SQL queries for use by Spring entities, and work with store procedures that inevitably are called by Spring. When I need a new table or column I'll discuss shape, form, naming of it and its relationships with the database folks and they'll put it. Then I'll write the sql to populate it.
We have a dedicated frontend design/developer. He's light on the Angular 2+ side, which allows the rest of us to focus on that part and he takes care of all the CSS. I could do the CSS if I needed to as I was a web developer as well further back in my career. However, while I'm good at user experience flow, I'm not good at the making it pretty part, so we're glad to have him handle that.
The rest of the devs (4) on the team are also what you'd probably call full stack though everyone has their strengths. I'm probably the strongest in Angular 2+ on our team. Two of the others are stronger on the stored procedure/database side of things. The other two are probably strongest in Spring, though one is getting pretty good with Angular 2+ now as well.
Inevitably the entire team, other than the frontend designer/developer, ends up working along all parts of the stack to varying degrees. And we all code review each other's work so we're all exposed to all parts of the system.
Every company wants somebody that knows their full stack. Problem is, every company has their own unique permutation of technologies that forms their stack, and most companies won't liok beyond their particular buzzwords to understand how much of a problem space's theory an applicant understands.
Recognize the treadmill. Learn something else, something somewhat durable. As much as possible 'on the clock'. Even if it means fucking up your current employers product. e.g. putting embedded SQL into the steaming piles of Javascript, like half digested corn. Writing web methods that expose the layer you want to learn, then putting your learning code into the 'framework'. You can find a way to justify it, they're clueless enough to be framework thrashing.
John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
I've never seen this term used anywhere out of webdevelopment. In the embedded or application development worlds it is never used. Sometimes in mobile development, where some people believe an app should be a shell around a website but not for serious app development that does a lot of its work offline.
I find it usefull in employment ads, so I can skip it immediately. Hacking shitty frontends together and keep them working if the hipsters dat develop webbrowsers change their minds never produces clean code.
It still isn't write once run everywhere. You have to check IE and edge and choose two of Chrom Firefox and Safari. Then do a few mobile browsers at different versions.
Mobile Firefox would not display Slashdot correctly for a year until I reported it. And that's a team that had experience with html before. But think of all the people running outdated browser versions because OS updates are discontinued and the browser now needs this feature.
Its not 35 but it sure isn't 1 if you want to reach everyone you can. 35 hits diminishing returns especially since at some point those outliers will get a new device before you complete testing for their old one.
£45k from a US company in Ireland really means they arenâ(TM)t looking for you specifically. For people they really want, the large multi nationals will hit six figure packages and over, and wonâ(TM)t even think twice about it (Ireland or U.K.).
"Full stack" is just another in a long line of terms such as "rockstar", "guru", "code ninja", or "jedi". I'm sure that some people who have used these terms have some more specific meaning in mind, but most of the people who use it just mean "someone who knows what the hell they're doing". And keep in mind that these are mostly people who don't know what they're doing.
When I read a job ad that includes "full stack", I interpret it as people looking for a savior. I ask myself if I think I could save them, and then whether I'd want to. The answer to at least one of those is usually "no".
Savior! I like the sound of that! Let's make that the new hotness in software job ads.
Probably no-one is completely equal at everything they do. But it's not difficult to imagine someone with 10 years of experience who can do both front-end and back-end programming to a very high standard, and who also understands databases and infrastructure well enough to do everyday tasks themselves and to communicate intelligently with someone more specialised in those fields if necessary.
If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
In Finland, I met people surprised that foreigners would even want to learn Finnish. Nokia did most of it's business in English, even in Finland. They spoke better English in their McDonald's than they do in the US, the taxi drivers speak English, etc. In Europe, speaking a second language is a necessity of life.
I know many really smart people who lack experience. They make the same mistakes as novices. Sometimes it's worse because they know they're smart and will work on something beyond their abilities. Sometimes the company knows they're smart and have a PhD and promote them beyond their abilities as well.
I would consider myself a full stack developer. I can assemble a server, admin it, setup a database, code in perl, write coherent html, javascript, and css. I know jquery and quite a few frameworks. I dabble in python 2 & 3. I'm fairly proficient in crafting one-liners of awk, sed, bash, and perl to weed through logs to find the real issue. The downside is I am 48, I feel 35, but my age is 45. I think most HR departments don't realize the time (work and pleasure) it takes to be well rounded and stay abreast of the current state of all these items, it is nary impossible. Ageism is real sadly.
There's a difference between being flexible and learning new things...and.... management rewriting the app every year or two in some new language and never getting around to releasing it.
As long as I got paid....
The shepherds did so well protecting the flock that the sheep no longer believed that wolves existed.
Yes there are full-stack developers, as I am one. Been doing it for 6 years now. I gotta say the job listings I see are usually for small/smaller companies who need someone to do everything and only want to hire and pay one developer.
I am more comfortable in the back-end, but given a wire-frame and style guidelines, I can make a pretty nice looking website. Bootstrap FTW.
Slashdot "Classic" looked good on WebTV and IE4 - better and more useful than either of the new themes, and it's still the best on my phone.
That's because they didn't make an IE version, a Netscape version, and a WebTV version, or write for IE and then use a bunch of NotJavaScript to try to hack it.on other browsers. Instead, they wrote html. It works just great on browsers that were created ten years after the site was coded. They didn't test on Android or iPhone, those things didn't exist yet. They didn't have to test for Android or iphone because they uses html the way it was designed to be used - to describe the document's logical structure, not which pixel should be which color.
A "unicorn" is mostly just someone who's been around for more than a few years and kept learning in a broad range of areas.
If thats true then everyone over 40 who has been employed since they were in their 20's is a friggin unicorn... and thats not a unicorn.
First, a 'full stack' developers is what we used to refer to as a'web master'. Its a person who can do front end, database and backend. Nowadays with everything distributed, they can now handle distributed architectures and microservices, proxies, message queues, caches and apis. This just means that 'webmaster' grew with the job requirements.
But a 'unicorn' is someone who contributes something 'unique' .For example, I created api chaining upon solving the architectural cross cutting concern in the api pattern and rewriting the api pattern for distributed architectures. I also helped several enterprises (netflix, vmware, apple, amazon AWS team, cisco, etc) with their architectures. This is what defines a unicorn... offering unique services, ideas and perspective (unicorn==unique).
A ful stack developer is NOT unique. The fact people find them rare is just a sad commentary of the level of tech skill being cranked out by indian schools and american boot camps.
Universities still teach centralized architecture rather than distributed architectures and microservices for programming still. So it is no wonder businesses do not find the skills they need.
Kept learning, kept doing, kept up! After a couple of decades you too will marvel at new entries to the field trying to define the field.
If thats true then everyone over 40 who has been employed since they were in their 20's is a friggin unicorn... But a 'unicorn' is someone who contributes something 'unique'.
I'm not sure your preferred usage matches how most people use that word, but in any case, a lot of people who have 20+ years of professional experience and have continued their own professional development throughout certainly would qualify either way. It's difficult to do diverse work for that long and be paying attention without acquiring both a broad spread of knowledge and a lot of depth in some specialised areas.
If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
I know exactly what you are talking about. I lived the dream you describe. Looking for a new one.
I object to power without constructive purpose. --Spock
I saw one and I wasn't even paying attention.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
uhm, nothing should be only done on the UI... except maybe display choices available. Everything must be verified and processed on the server... end of story.
You asked one, I presume.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
Garbage. It's not that long ago that Danish, Swedish & Norwegian were considered dialects of the same language.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
When basing hiring decisions on emotional intelligence quotient (EQ), what reasonable accommodation would you make for candidates with Asperger syndrome, a disability that causes social awkwardness? Or is lack of autism considered a "bona fide occupational qualification" (BFOQ, BFOR, or GOQ) for most jobs nowadays?
I used to work for another Finnish company. One of the guys said that once you've put in the investment to learn it it's just easier to speak English. Little things like nouns not having 17 (or is it 23?) cases. For comparison, Latin has 5 and a bit.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
10 years experience in 4 things. So effectively only 2 to 3 in each.
And bear in mind that experience decays. There are things I have a couple of years experience in that I've almost totally forgotten.
And on top of that, things don't seem to last as long. That database you use is now two cycles out of fashion.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
I have been developing software for the past 28 years filling full-time and consulting positions. For the first 10 years there was no time to become an expert on anything because both the hardware and software technologies were changing to fast. The transition from big iron to mid-range to PC's was a hectic time. The transition from the desktop PC to the client server model to the distributed network model has been just as hectic. And of course the introduction of the Internet has been hectic from day 0 up to the current day. Although the Internet challenges today tend to be about control and privacy. Today the introduction of new technologies as it pertains to software are more about refinements of existing technologies then something totally new. And updated JavaScript libraries or changes to HTML are hardly what I would classify as new technologies. The last time web based technologies were considered new was the addition of ASP and Javascript to make an HTML actually do something without having to query a server to execute any type of functionality.
Having worked through all of these different changes has left me with a skillset that has ensured me a steady and relatively high paying job for just over 28 years. And my skill set has allowed me to gain experience across a whole range of industries. Banking, Shipping, Airline, Oil and Gas, online retail, entertainment, military, and Medical fields. They all use the same technologies but in slightly different ways. And I have interviewed , hired , and managed development teams for years and not once did I see experienced and knowledgeable developers being dumped for cheaper newbies. The number one rule in hiring a development team is that end in the end you always get what you pay for. Newbies with no experience almost guarantees missed project dead lines and sub-par deliverables that require hiring someone with more experience and hourly billing rate.
You are correct, I was misinformed.
const int one = 65536; (Silvermoon, Texture.cs)
SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
I enjoy learning new things but I also enjoy a feeling a mastery. If you are constantly switching frameworks you are constantly relearning from the ground up, which is inefficient.
Are 'Full Stack' Developers a Thing? They are if you're old enough to remember the 60's and LSD. What did I just say?!?
Truth - the industry has a problem (besides being generally stupid expectation-wise), they discriminate on age yet demand the experience and knowledge that only someone that has been doing 'programming' for well over 10+ years would have. Who get's hired? Kid with no experience in anything or plummer who went to code school and just graduated. They go cheap and worry about the consequences later. There is zero respect anymore for a domain of expertise. No focus and too broad, you are a generalist in many things. And if the experience isn't there too across those broad skills, then quality ends up being crap because you're really truly not good at anything in particular and mediocre at many. Experience matters, they just don't get it and are in denial that does.
So yeah -- a full stack developer can and does exist, they are just not a hire is all. To old. Never mind they say they want the full stack developer, what they want doesn't exist -- a young college grad, with low insurance premiums, 20+ years experience in multiple domains, and will take a pittance for compensation. All the while working long hours because the product is garbage, and engineering one-offs for a product with no customers.
You get called in for an interview for a full stack developer, beware -- you may not be interviewing for a real position, but moreso taken advantage of for free consulting advice they can't get from their inexperienced staff. Half the developers I've worked don't know even how to use SSH none the less no what subnets are.
That's so they can import the full-stack guy from India
Unfortunately your salary is capped well below that of a company with a larger software engineering team.
I've been in such jobs and they're fine for a while, but you're massively limiting your salary growth, and you'll be less employable when you do want to move on to grow your career because you'll only have minor experience in several different areas.
Unfortunately expertise is where the bigger paychecks are, and you don't get that in a small company where you're doing everything.
Which isn't to say I don't believe in the full stack developer - I do - I just agree with some of the posts above that full stack developers are simply really experience developers and can expect high salaries to match. Most companies advertising for full stack developers either aren't really asking for full stack (i.e. as the guy in the summary highlighted - some people think full stack, simply means full front end stack) or will never fill the positions with what they want - they'll either never fill the positions at all, or they'll get someone who blagged their way into the job and can't do it and just wastes their money.
Most companies use Agile/Scrum now. Stories must be vertical - UI change, back-end change, and DB change. In Scrum, every developer can work on any story. Therefore, everyone is full stack. If you're team isn't full stack, then just take a sprint or two to cross train.
I did, it's a thing called "Photoshop"
Perhaps only half misinformed :D
The grammar is still quite complex if you want to go into the depths.
There are basically three big language groups in Europe: latin/roman based (mediterranian and France), German/Nordic based (Germany, Denmark, Netherlands, Switzerland, Austria, Luxembourg, Norway, Sweden - until around 1000 AC all those regions had so called intelligible languages, depending a bit of course how close they where to each other) and then the slavic languages, to the east and north.
English is an outsider as it is a bastard language where nearly everything except slavic is mixed in.
Then we have of course some outsiders: Basque and Greek ... and some arabic/spain/african mix on Malta, and plenty of regions that regain their local dialects, mostly Gaelic based: Gallicia/Spain, Ireland, Scottland and Bretone/Brittany.
Ah, I forgot the 4th relatively big group: Finish and other Baltic languages. Not so big if you consider the amount of people there, but big area.
Funnily Russian imported a view German words, e.g. Butterbrot.
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
In case nobody linked to this yet:
The Myth of the Full-Stack Unicorn Developer
Probably your brain is wired to see errors and mistakes. :D
I only see meaning
However when I perform examinations in martial arts, I also only see mistakes ... after the end it is often hard to remember what the good parts where.
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
In some way it is fun to learn languages. ... never been there though. I guess I could not compete with their drinking/party attitude :D :D
And Finnish is most certainly an eye catcher on a resume. Pretty pointless for the rest of the world, considering a country with about 5 million inhabitants. But fun nevertheless. Most Fins I know are excellent guys/girls
And then again, unlike english or french finish is written/spelled as you pronounce it. One mayour obstacle in language learning is gone
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
Thanks. I wonder how hard it is for an English speaker to learn. I speak some French and passable Japanese, but neither of those is likely to be much help.
There seem to be plenty of tech jobs there at least. A little daunting when you can't even pronounce the names of half the town's though :-)
const int one = 65536; (Silvermoon, Texture.cs)
SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
I have been a full-stack developer at my last 3 jobs (a span of 7 years). During this time, I've used ActionScript and JavaScript (Backbone, and now React) on the front end. On the back end it's been Java, Python, and now Node. In terms of database, it's been MySQL, MSSQL, and now PostgreSQL (and Redis).
Actually speaking japanese helps in some way.
E.g. you transliterate a japanese word into Romaji/Romanji. E.g. watashi wa nomu o Angelo desu.
Most european languages (french and english the only exceptions I'm aware of) are pronounced exactly like that jap. sentence. If you have learned to pronounce e.g. italian, you can pronounce, norwegian, or german just fine. Of course a few languages have some tricks like the different pronunciation of "c" in italian depending of the following vowel or the "j" in spain that is used like a "ch" in german.
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
That doesn't add any value[1], so it can wait for the next release.
Which will be long enough after your boss gets his bonus and moves on that it'll be the next guys fault. And yours, of course. In fact I'm going right now, before they try to blame me.
[1] it doesn't tick any boxes on the feature list from the sales guys, which means nearly the same thing.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
We talk about T-Shaped devs a lot. What that means is that a developer has a wide breadth of knowledge, is proficient in technologies from server configurations, to database, business logic, services, and UI, however, in one area the dev should have a greater depth of knowledge, and that depth and experience feeds into the other areas. Here is an example of a T-Shaped full stack: Breadth in web dev tech: ---Linux---Apache---MySQL---Python---Javascript/Node---HTML/CSS/--- Depth in Python: Py2.7, Py3.6, Django, Flask, SQLAlchemy, Selenium, Data Science, Scipy, ML
Back in the days of 3-tier architecture (remember LAMP?), it was pretty common for people to be able to work in all three tiers. Now, with all the specialization, generalists are looked down upon.
So, no, I doubt you could find many full-stack developers in Silicon Valley anymore. Your best bet would be to look out of SV to find one. However, considering any full-stack developer you find is likely old (at least over 40), I don't think you'll want to hire them.
Plus, block chain. A full-stack developer likely won't have experience in block chain so, yeah, no. You definitely don't want to hire one of them. Eeeeyooooo.
This was the point. Then designers started bitching. HTML4 was moving away from this, and HTML5 is mostly built around the idea that everyone would override the rendering with canvas/webgl. See what happened with Flash, but now it's built into the standard, not a plugin.
That's saying nothing of the fact that everything is dynamically loaded via JS for unfathomable reasons.
Your ad here. Ask me how!
Auto-layout at the browser side is a nice ideal, but fails in the real world: each browser brand and versions has its own flaws and idiosyncrasies that must be worked around and tested.
Further, one should actually test on a reasonable set of sample screen sizes, OS DPI settings, and browser brands; if you want to do it right. That's a lot of testing. Now, maybe an elite UI dev can pull it off without the needs for combo testing, but that doesn't scale as most people are not elite by definition.
Doing "progressive" (self-scaling) right takes a hell of a lot of work, or at least selectively sacrificing certain things for simplicity's sake that the customer may not like. Things that should be simple are not simple.
Many techies don't want to rock the boat because UI fiddling is good money. But that's selfish thinking. Let's fix stupid tools/standards.
It's my opinion we need a new standard where the positioning is mostly controlled on the server. You can still choose "auto-flow" over WYSIWYG if desired, but that becomes a server-side implementation choice. The server scales the UI based on the device's (client) preferences or stated screen-size. Therefore, one is testing just one layout engine instead of 50+ needed for fat-client positioning of the current browser stack. It's logically better factoring so that your UI's can live long and prosper.
(The existing standards are still good for some things, I will agree, but not everything.)
Table-ized A.I.
I see this superstition so much.
... but the impossibility of succeeding without experience is not a foregone conclusion AFAIK ...
People often say certs don't matter because people can get them without experience, so -irrefutably- certificates are worthless.
If someone went through the trouble of passing a MS T-SQL cert or a Cisco Cert, they are probably going to be able to do some amount of meaningful work on day one
We're the proverbial jack of all trades, master of none, and for any task there's someone more specialized who can do it better.
This is exactly who the question was written about. "I can do it all, but not so much on 3/4 of it. I can't do it ok, but hey, I have 18 years of experience doing it not so well, so !"
You aren't a full stack developer in the way the term is used. You have to be UX/UI expert, and DB/Storage expert, a messaging expert. An admin expert.
Just because you CAN do everything, doesn't mean you have to. It does mean that when you do your part, you can do it in such a way that you don't make another part unnecessarily hard. It also gives you a better ability to determine where the various parts should be done. That is an advantage in any case
It also means that you can guide less experienced developers to do some of the parts while you work on others.
And then there are those projects that are fairly small but cross a number of domains. You can either do it quickly with a full stack developer or you can create a team and take 3 times longer due to communications overhead.
I don't know if this is true. I have spend 20 years doing everything from setting up servers, securing them, installing software (mail server, application server, web server, caching server, database - oracle and postgres, etc.), configuring the software, designing and building database tables, partitions, indices, sequences, keys, constraints, triggers, etc. Writing innumerable sql statements, writing server-side code, writing front end html, css, js, etc.
I work in a start up and I like to joke about being full full stack, because I had to handle the website from the HTML up to the AWS elastic infrastructure (passing by Dev. & Ops)...
So, for me "full stack" is just a buzzword, there are many order of magnitude of developers ability spectrum, reducing it to FO/BA/FS is really not precise...
But hey, in the real world it seems to work because if you have experience generally either you choose to specialise or you go "full stack"
The unicorns are out there. The catch is, they are necessarily older developers who have chosen not to go into management. If HR doesn't want to hire older developers, they'll never get a unicorn.
> It's my opinion we need a new standard where the positioning is mostly controlled on the server. ...scales the UI based on the device's (client) preferences or stated screen-size.
You can do, today! And since 1993, actually. That's called pdf.
The unicorns are out there. The catch is, they are necessarily older developers who have chosen not to go into management. If HR doesn't want to hire older developers, they'll never get a unicorn.
That is exactly right. The meme of the older developer - or most technical positions for that matter - is just that, a meme. The few successful fresh folk we had learned pretty quickly that I knew more than they did. That professional development - I took it seriously.
The others at least had a failure excuse - damn old people. Of course to them, old was anything over 40. But yeah - in my 50's, I could perform every activity in my department at a high professional level.
The shepherds did so well protecting the flock that the sheep no longer believed that wolves existed.
Help Desk support is in higher demand because none of these developers can code worth a damn.
The original ISO 32000-1:2008 standard includes JavaScript, forms, and multimedia. Only the archival variant, PDF/A, disallows JavaScript because JavaScript standards change over time.
> sample screen sizes, OS DPI settings, and browser brands ...
> Doing "progressive" (self-scaling) right takes a hell of a lot of work
It's a LOT less work if you change your frame of mind to realize my DPI is none of your damn business. The message you wrote, the one I'm replying to, looked great. It looks great on my phone, my laptop, my desktop, my desk monitor - no matter how I resize the window.
You had a heading / subject line, then marked your paragraphs. Then let my browser do its dang job and render your stuff to look nice on my screen.
> Now, maybe an elite UI dev can pull it off
Some people consider me "elite", they come to me for help fixing their stuff. 90% of the time, I fix their stuff by *deleting* some of their code. When they stop telling the browser to make things we wrong, the browser defaults to making things look good.
What kind of interactivity did you have in mind, exactly?
Limited, I suppose, since you said you're going to scale the same UI design for both 24 inch and 3 inch screens.
hm ... i had a funny feeling thats what it meant ... i havent seen a job application for devs and programmers that didnt require "full stack" in years ... actually the last offer i saw for a factory worker required experience in logistics and preferably a hi school degree in IT ... probably to euh, "jump in" as you say ... and i wonder if they wonder why they don't find anyone and import filipinos or sweatshop koreans lol , whell its not lolly at all actually ... full stack hm ... mastery at minimum wage
i see
Free speech was meant to be free for all... how can anyone grow up in a nanny state ?
No, read it again.
Table-ized A.I.
Just wanted to let everyone know that this was Slashdot's most-visited story for the entire week!
I've always wondered how many Slashdot readers are programmers versus sys-admins. But maybe it would've been just as interesting to ask how many work on the front end, and how many are full-stack developers...
Then it's fucking bullshit to say that you saw no errors as a rebuttal to someone who said there was one. Of course you didn't see something you weren't looking for, not that you'd see it anyway.
Internet tough guy spotted.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
Then it's fucking bullshit to say that you saw no errors as a rebuttal to someone who said there was one. Of course you didn't see something you weren't looking for, not that you'd see it anyway.
No it is not. I don't see simple errors. I would not know how to proofread some text, because
I simply don't see a typing/spelling error. And honestly I loath people who see every typing mistake or spelling error and make fun about people who make them or take them for idiots.
Aoccdrnig to a rscheearch at Cmabrigde Uinervtisy, it deosn't mttaer in waht oredr the ltteers in a wrod are, the olny iprmoatnt tihng is taht the frist and lsat ltteers be at the rghit pclae. The rset can be a toatl mses and you can sitll raed it wouthit porbelm. Tihs is bcuseae the huamn mnid deos not raed ervey lteter by istlef, but the wrod as a wlohe."
Bad example, there are much better ones. But if you can not read that as fast as completely error free text: YOU, not me, has a mental problem.
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.