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.
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.
"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.
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'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/
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 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
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.
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.
"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
Wow, your post is hard to read. It's full of grammatical and spelling errors. Ever thought of hiring an editor? /s
--
The front-end is basically completely FUBAR at this time. Always changing trends, always apparently good (but actually really bad) new ideas (like REST now), and everything new is expected to use them. But after a few years the framework designers lose interest and a new greatest thing is born and the old one withers and dies (very slowly). All that without any actual benefit, because business logic and business applications do not need any of that, a vt100 would actually be perfectly fine for most of them. And you do actually find those vt100's still in use. Although they are now a badly working Java Applet, instead of the original rock-solid serial terminal.
While "new" technologies and frameworks are created at a break-neck pace, but they are not decommissioned at the same pace. So the number of different technologies you have to keep running at the same time gets larger and larger. Not good. Most applications web would actually do fine with plain HTML and a bit of JS for interactivity, but that would be plain old boring and nobody would want to be boring just for the sake of actually delivering a mature stable and professionally done product. Instead it is always the next stupid thing that is supposed to solve everything a lot better than the last stupid thing.
Basically, it boils down to most coders never having heard of KISS or not understanding it at all. The utterly demented things coders do are staggering. And the utter lack of skill, insight and knowledge is the same. I recently told some people that their web application was not working with a proxy because it was not web-standard conform and they did not even understand what "RFC7230" was and why it was _their_ problem if they violated it, regardless of whether the framework they were using was doing it or not. Or application teams that expose data to the browser that they must not expose to it or the security model goes out the window. Turns out they had no idea what was getting sent to the browser. Or the senior (> 5 years experience!) web developer that I had to explain the anatomy of an URL to. The list goes on.
In the end, all this is just an expression of too many bad coders and too many bad framework designers (but with big egos!). And they all want to show off their mediocre skills because they have delusions of being masters of this game and jump of every demented new trend as they think that will make them shine. What it actually does is create a mess of inconsistent technologies were you can find all the "web application coding worst practices" because somebody with not even minimal understanding of competent coding thought it was a good idea to do something clever.
Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
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.
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.
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.
> 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'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.
... 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
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.
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
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.
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
The poor people who suffer are those left in the support teams. (Which is where I seem to have spent most of my career recently. Unfortunately it seems I'm good at it). KISS would make my life a lot easier, especially with regards frameworks. I've come to the conclusion that these are far too overused, and when they 'go wrong' (which they tend to do, being both complex and brittle), they can be a pain to sort out.
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
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
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
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
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.
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'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.
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)
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?
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.
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.
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.
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'
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.
"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.
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.
True, full stack seems like a great keyword to avoid jobs with likely little resources to build everything all by yourself. And even if it could apply nicely to embedded, like many in this thread do, I haven't seen it there.
Personally, I think front-end has grown to be a weird place where people are all about the latest JS frameworks, preferably several at once, and these all change every year or two. It is complex but in a different way from the backend. Backend seems more stable and more focused on business logics and similar.
I can understand most parts of the "stack" and technology, even if kernel code with all the C/C++ tricks baffles me. I feel I can write decent code, and even talk to the customers and stakeholders. I wouldn't call myself full-stack in any case, don't see that I would even want to be messing with everything possible. If that is what "full stack" is..
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.
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."
So what toolset do you use for full stack development?
46137
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."
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.
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.
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.
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
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.
Back end development is only complex because you have to keep explaining to those front-end people that back-end shouldn't provide formatting, translations, styles, etc.
They'll ask for stupid stuff like "could you add a field that sums those rows together? and maybe a flag to indicate whether a price is negative?"... and then I have to explain about how we want to be able to deploy the back-end without having to upgrade front-ends and vice-versa and that tightly integrating them is gonna make that impossible.
They think they're the only kid on the block, while in reality the "back-end" is used for headless services, the web front end, the mobile front end, the "internal" front end, batch processes, etc.
Might as well work with monkeys, they can be trained at least.
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.
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.
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.