K
K
Kanat Sahanov2014-09-25 09:19:21
JavaScript
Kanat Sahanov, 2014-09-25 09:19:21

How to find out the level of a front-end developer?

I've been doing layout for about a year now. During this time, I improved my skills in HTML + CSS well.
I use technologies such as Gulpjs, SASS / Compass, Susy, BEM from Nicholas Gallagher. I can also type in Bootstrap and Foundation. But js is not so good. I know jQuery well. There, event processing, all sorts of tabs, accordions and simple sliders I can write.
And I define myself as a junior front-end developer.
And here the question arises, what technologies determine the levels of middle and senior frontend developer?
Do I understand correctly that in addition to the layout technologies that I have, I need to add knowledge of native js + some kind of framework (angular, backbone, ember) + cofescript, jasmine / mocha and other advanced goodies, not to mention work experience (two years ) to grow to the middle?

Answer the question

In order to leave comments, you need to log in

2 answer(s)
E
Evgeny Petrov, 2014-09-25
@kana_sahanov

@tnorman the level of logic is not lower than on the server side?)) They made me laugh.
A front-end developer should understand the front-end, not PHP - Php PHP, no PHP at all.
The basics of building databases - yes, since it will be possible to work with databases directly. Understand the principles of communication with the server and other computers, know about HTTP headers, security policy and, in particular, the document origin policy. That is, knowledge of XMLHttpRequest, CORS and (at least) an idea of ​​WebSocket, WebRTC.
Understand client technologies - HTML, CSS, Javascript, SVG, canvas, numerous APIs described in HTML. And if you don’t know about WebGL and API, then understand why it is and why. Building DOM, CSSOM, understanding bottlenecks and trends. Basic semantic constructions and microdata.
Understand box model, visual formatting model, stacking context, work with forms and elements, media elements. Know what an encoding is and how to live with different encodings if necessary, although this is already a rarity.
I agree with OOP - inheritance, encapsulation, understanding the role of prototypes and the ability to use them. Knowledge of basic patterns and paradigms. I will add an event model - just knowledge (not a miserable 5 pieces, but real coverage, including MutationObserver). Well, regular expressions.
AJAX? If you do not take into account XML-RPC, SOAP, WSDL, then it is not worth highlighting this as a separate issue. But the event loop (including tasks and microtasks), on which the event model is tied, and all asynchronous calls must be known. Also be aware of what a promise is, why they are and how to use them.
Know the basics of design, UX and building UI. A lot of the work of the front-end is based on the interaction of the person and the interface. Misunderstanding the basics of UX backfires.
As for Backbone or other specific technologies, this is generally a matter of time and it is not worth focusing on. Experience is welcome, but not required. Well, only if the project does not burn.
Of course, knowledge of development technologies is necessary, but then I would put on Node.js, Grunt / Gulp, AngularJS.

D
deleted-tnorman, 2014-09-25
@deleted-tnorman

I could be wrong, I'm quite a rookie in this regard, but.
AJAX
Programming MVC Backbone
Object Oriented Programming is great for learning the front end, but it doesn't hurt to get into the back end as well. PHP with its simple frameworks like Slim. Working with the database. Even if you do not have direct contact with a real database, it will not hurt you to understand how the back-end works with it. If this sentence does not seem superfluous, then here is about PHP [Slim, RedBean, SQLight]
Building a simple Backbone application with an understanding of what you are doing will allow you to call yourself a "front-end developer". It's just that the front-end is not a design, it's a level of logic no lower than on the server side, just located on the client side.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question