
Ask HN: How FULL is the stack? - arisAlexis
I consider myself to be a full stack developer in that I can write backend code (node.js,Java Spring, PHP) and frontend (Backbone.js, Ractive.js). I am not really good with CSS though.<p>In the future, do you think a full stack developer would be expected to be familiar with machine learning too in Python or something else?
======
PaulHoule
Machine Learning, as it is practiced today, is a field with a huge amount to
know -- just as you could make webapps with plain HTML or write them in C and
compile them to Javascript you could choose a huge number of algorithms and
specific implementations of algorithms.

A big part of the future is systems like this

[https://aws.amazon.com/machine-learning/](https://aws.amazon.com/machine-
learning/)

which let you get machine learning done without even choosing an "algorithm"
such as neural network, decision trees, support vector machine, whatever. The
thing either has a very flexible algorithm in it, or it chooses an algorithm.

That kind of thing is an "expert system" which is an expert on machine
learning -- it tries a bunch of things, evaluates them, and shows you the best
one.

A better tool would engage you in a dialog over the data and not be such a
black box.

------
stephenr
in the future, a full stack engineer will be required to do _everything_.

\- Invent/discover new materials to replace silicon, copper, gold, etc

\- Create CPU using above materials

\- Create Kernel to run on above CPU

\- Create Software language(s) for application

\- Create Software libraries for above language(s)

\- Create application using above libraries and laguage(s)

\- Design interface

\- Create new interface rendering language

\- Create new image format

\- Create above interface using above rendering language and image format

\- Create new network transfer technology

\- Create new Ultra Quad Super Duper HiDPI physical screens to take advantage
of new interface

\- Create new GPU to drive said screen

\- Create new batteries to power above devices

\- Create new OS to use and manage above devices

\- Create new humans with eyeballs capable of appreciating Ultra Quad Super
Duper HiDPI screens

\- Create pancake stack for above humans to eat for breakfast.

Seriously though - if a project has the same person writing Database queries
and Media queries, run. Run like the wind and do not look back.

~~~
arisAlexis
your about reads "Ops/infrastructure and web app development" :D

~~~
stephenr
Yes, it does. Also, I was once employed primarily to write HTML/CSS/JS.

------
dudul
"Full stack engineer" is the new "Coding Ninja". It doesn't mean anything. It
is most often used by non-technical founders who just want to hire one guy to
do the work of 3.

As you said "How full is the stack?" Do you need to know how to setup and
administer servers? Do you need DevOps skills? Do you need to be able to write
backend/frontend code? Do you need to know how to design the UX as well?

I systematically ignore all positions for "full stack engineer" because in my
mind it translates to "we don't know computers but we have a Great Idea(tm)
and we just want some nerdy guy to handle all these computer thingies for us".

~~~
dozzie
> "Full stack engineer" is the new "Coding Ninja". It doesn't mean anything.

> Do you need DevOps skills?

Certainly, as the "DevOps skills" means the same as "full stack engineer":
nothing.

~~~
dudul
Well, DevOps is definitely an over-used buzzword, but I think it's a good term
to use as an umbrella for technologies like Chef, Puppet, Ansible, etc. It is
definitely a different skillset than the one required to write software.

I think DevOps gets a bad reputation mostly because of companies who just use
it to look cool without really embracing the "infrastructure-as-code"
philosophy (a bit like Agile/Scrum "we do Scrum, but...")

~~~
dozzie
> I think it's a good term to use as an umbrella for technologies like Chef,
> Puppet, Ansible, etc.

No. Those already have their umbrella term: infrastructure as a code. You even
mention it yourself.

~~~
davelnewton
That clearly takes too long to say.

DevOps covers more than just "infrastructure as code", though.

~~~
PaulHoule
I would say it is a viewpoint I attained from doing web projects for various
"startups" and "internal startups" starting in 1999 or so.

In these cases you have very small teams so you can't afford to have separate
DBA, Sysadmin, Network Operations, and Development people -- at least not
entirely.

When you've had experience doing everything yourself I think that makes you a
better team member. For instance I write very solid server code because I hate
being woken up at 3AM.

~~~
davelnewton
Sure, knowing all the things makes you a better team member.

But all this is orthogonal to what was being discussed. DevOps is a thing, and
the skillset(s) are not _necessarily_ the same. Similarly anecdotal; I'm a
pretty decent dev. I'm _not_ a decent ops person for a variety of reasons, the
biggest being a complete lack of interest. Would knowing more about ops make
me a better team member? Maybe marginally, but we have devops people that
don't have to concern themselves with application code, and apps people that
don't have to concern themselves with (almost any) of deploy/ops details.

 _That_ makes us more efficient, because we don't _have_ to know all the
things, and can actually have time to focus.

~~~
dozzie
Oh, so you have devops people and dev people. How strange, given what's
typically behind devops buzzword.

