The myth of the full-Stack developer
In recent years, there has been a magical job title. Who has come before you – Full Stack Developer?
If you take a closer look at the skills required in the job description. So it can be really breathless sometimes, and on the other end of the demand is supply. There are development frameworks that are positioned as full-end development frameworks, and there are others that can build full-end capabilities in n weeks. course, also a job seeker with the full development experience of more than 1 year?
Backend, frontend to a full end
Table of Contents
Where did the term “full-end developer” come from? Judging from the information that can be found, it currently points to the article “What is a Full Stack developer?” ( http://goo.gl/EVMa32 ), in which Laurence Gellert mentioned that there was a time in OSCON (Open source convention ), a Facebook employee told him that they only hire full-stack developers, and similarly, Laurence Gellert wondered, what exactly is a full-stack developer?
Originally, in the back-end, it has also developed into a huge technical system (just look at the things in Java’s era), what’s more, the front-end uses other languages and ecology that are different from the back-end, based on the professional division of labor, The distinction between back-end and front-end development is actually quite acceptable. However, there is obviously a demand for application development now. There must be developers who can handle the front-end and back-end, and complete the entire application in one hand. I believe you I know that there are people who can complete the entire application with one hand. This kind of person seems to be called a full-end developer?
Full Stack on Frame
So, what technologies do full-end developers need to know? As far as ” What is a Full Stack developer?” is concerned, you must understand the server, network, host environment, data modeling, business logic, API layer, MVC, user interface, etc., assuming full-end development If the author really has a way to use so many knowledge systems, then one of his most important skills should not only be able to understand these technologies individually, but to be able to further integrate these different knowledge systems together.
In fact, it takes some effort to integrate different technology systems, and some frameworks do this kind of work, which makes the integration work easier. If the technology is first limited to Java, I believe that many Java developers will be more concerned about Full-stack. Nouns may feel familiar. In the era when the Java ecosystem was full of flowers more than ten years ago, how integrating different libraries and frameworks became a big problem. The integration of Hibernate, iBATIS, etc. should be familiar to many Java developers. Others such as AppFuse, JBoss Seam, etc., as early as 2006, some people called such integration tools as Full Stack framework.
Of course, just integrating Java technologies, application development is also cumbersome, so cumbersome that many opponents want to simplify to erode the Java market, such as Rails provides a complete set of simplified Full Stack, developers familiar with Rails, can Complete the entire web application quickly, and even cover many front-end functions. Some full-end development training courses are called Rails, and the development model of Rails also affects the Java development ecosystem, so there is full-scale development such as Grails and Play. The Stackframe appears.
Full Stack on vacancies
In any case, the rapid development framework that can now be called Full stack, because it encapsulates a lot of bottom layers, simplifies a lot of complicated settings, and removes a lot of unnecessary designs, really makes it possible for developers to organize the entire application. For a company or a boss, if you can manage the entire application, you can have ten employees, how can you not love it? There are more and more vacancies looking for all-around developers. Searching for “full-stack” on the Internet will find many interesting vacancies.
In fact, the training of full-end developers has never been interrupted. However, in the past, it was claimed to be able to train all-around programmers and integrated development programmers. The average is about three to six months so that new people in the programming industry can work hard. Training courses or camps that swallow programming languages, development frameworks, web design, server installation, version control, database design, testing, performance, security, etc., aren’t these courses “producing” full-end developers all the time? ? Perhaps because of this, I have only recently seen job seekers who claim to have one or two years of experience in full-end development.
So, does demand match supply? Take a closer look at the skill categories listed in “What is a Full Stack developer?”. It seems that user experience and understanding of customer and business needs are also required. This is really recruiting all-around employees, not just developers! Don’t think that the requirements in the article will not really appear in the company’s job vacancies. I have seen PTT’s recruitment article, and the skill categories listed above are really copied from ” What is a Full Stack developer?”.
To be honest, when a company wants to recruit all-end developers, does it really know what kind of talent they want, or does it have no idea what kind of talent they need? Thinking about a company as big as Facebook, it should know what kind of talent they want! Many people have interpreted this behavior of Facebook, thinking that the full-end engineers they want are not really proficient in various fields or technologies but do not limit themselves to front-end or back-end, and they can analyze problems by themselves. And seek solutions, rather than assuming or waiting for others to solve, that is, developers who can fully exhibit “self-propelled” behavior or so-called “independent work”.
Full Stack in Mentality
Regardless of whether Facebook itself really thinks so about its requirements for full-end developers, it seems to be a reasonable explanation to use developers who exhibit self-propelled behavior to interpret full-end developers. Otherwise, full-end developers will It’s really just a myth.
Because developers who can independently develop applications do exist, they may currently be Web Stack, Mobile Stack, etc. In one field, they appear to be full-end developers, but in another field, they are Not necessarily full-end developers. Of course, if they want, and given the right time, these people can also find a solution.
Such developers with a Full Stack mentality may further become Full Stack Engineers or Full Stack Startups. Of course, back to the technology itself, these people do not aim to become full-end but solve various problems In the process of learning, the relevant skills or skills are naturally acquired because these are just the things that are necessary to achieve the goal.
As for those vacancies for full-end engineers, don’t worry too much. In fact, such vacancies have always existed, but the name has changed from all-around, integrated development, and independent work to the name of full-end engineers, and then the technical scope of responsibility is more and more It’s just getting wider and wider. As always, developers need to figure out what the mentality of these companies is when listing these vacancies, whether they want to find a vulgar engineer who can do n jobs by one person, or It’s a god-level developer who throws work on him and things will pop up!