Backend (BE) - Languages depend on the stack, but C#, C++, .NET, PHP, Ruby as well as database and server tools and scripts.
Full Stack - Ones who claim they can do the lot - these are few and far between. Usually stronger at one than the other and traditionally are primarily from backend origins.
Anyway, this topic is about how to be a good frontend developer…
What do frontend developers do?
Day to day - building the interfaces of websites. From creating template structures and the skeleton for pages and modules (HTML), making them look sleek and user friendly (CSS), to making them work with interactions, animations and functionality (JS).
Frontend development work can be diverse and challenging, but from time to time there are always the arduous tasks which take patience.
Junior frontend developers will primarily be doing the grunt work, taking PSDs and making them into accessible, semantic static HTML. Whilst this is not technically difficult, it has to be mastered like anything else. Most developers who “say they can do HTML and CSS, it’s easy,” don’t do it properly.
Senior FE developers and architects; well these guys should be focusing mainly on architecture if in a large team; as a lone-wolf, a senior frontend developer is highly proficient and efficient in all areas, with a wealth of knowledge of frameworks (Angular, React, Knockout, Mustache etc.) and preprocessers (SASS, LESS), task runners (Grunt, Gulp) and most importantly…. can do the job without any of these tools - vanilla!
How long does it take?
To progress through the ranks, it's safe to say it's a 4 or 5 year career. But depending on the individual, this can be accelerated but it's entirely up to you. Technical understanding gets you so far, but experience (which can only be gained over time) separates the best from the rest.
In order to evolve, one needs to have some personal and professional traits which facilitate growth and development:
1. The ability to be an independent learner
It’s all well and good “going on a course” which teaches something technical, but you’ve got to have the appetite to learn. Without that, those who do have this appetite will surpass you. It takes time, persistence, trial and error before you’ll hit significant progression milestones. You'll need to put the hours in.
2. A good eye for aesthetics
Your backend buddies won’t have great strength in this, and they probably will never be able to acquire it, their strengths lie elsewhere - cherish this creative stronghold. You don’t have to be a full-on designer, but a creative mindset is greatly advantageous.
3. Be a problem solver
You won’t ever know everything, or be able to remember everything, even if you’ve done it before. Arrogant developers claim they know everything. In fact, you will frequently need to research, investigate, solve and try, try, try again. Be thorough and persistent.
Actually this is needed for any development role, and a lot of other professions. In order to advance and deliver, being able to repel distraction and focus in fast paced environments is key. Developers are notoriously introvert, however the ones in the frontend domain seem less so (stereotype).
I’ve had more than my fair share of exposure to developers of severely varied skill levels and attitudes, there are ones who excel and ones who fall by the wayside; plenty of run-of-the-mill developers about on the open market too.
How do I become a FE developer?
If you like the sound of all of the above, then there are many avenues for entering the industry as a frontend developer. The best way to become a master of this craft is to join a large company, or a growing company, where training and opportunity is at the forefront of the culture. No one will hold your hand, you have to persist, but being surrounded by other individuals who are advocates of consistency, standards, efficiency and quality is the most important aspect.
There are courses, TreeHouse, Code Academy etc., however nothing beats practical experience. Companies are not schools, be prepared to take a lower starting salary than the infamous "market rate" or even an apprenticeship. Once you can prove yourself, you have better options in this regard.
NB. Keep an eye here ;-) Jobs at Codehouse