A full-stack developer is a developer who sees something that needs to get done and does it, even if they currently don't "know how".
And these people do exist, and are every bit as valuable as you'd expect.
A full-stack developer is a developer who sees something that needs to get done and does it, even if they currently don't "know how".
And these people do exist, and are every bit as valuable as you'd expect.
A full-stack to me is somebody that can do web development, do server-side development, optimize SQL queries, understand security, scalability, and able to build linux server infrastructures for large software systems. They also are able to take any technology and provide value to a business using it in a matter of a couple of weeks.
* Willingness to dive in and figure things out. * Having a wide enough knowledge base that they know where to and what to look for when they don't know something.
And you can learn the second ...
How? Especially if they've never learned the language/framework? This "Paul Bunyan" fairy tale of the "just do it!" hacker who can solve any problem no matter the odds just doesn't exist in real life.
Learning just enough of a language or a framework to patch up a solution to a specific problem doesn't take very long. It takes a bit of experience, but it doesn't take a mythical hyper-productive hacker. The solution might not be pretty, and it probably won't scale to millions of users or stay solid for decades, but it will solve the problem. And in many cases, it's all that matters.
I'm sticking with my "full stack" claim. I think I've earned it.
Which is what the actual core of the article (the section on "Identifying mastery") was devoted to.