Ive hade enough of online marketing, i want to be a front end developer!
For the last 6 years Ive been an e Commerce manager but Ive had enough & want to be a front end developer.
The reason for this post is I want to develop the skillset to be able to apply for the below type of jobs:
My question is:
Any insights welcome
If you really want to be an expert, it would be wise up to know at least 1 server side programming languages. Being in the front-end means that you'll have to catch up w/ technology to the bleeding edge. As of now, I'm learning ExtJS (think of jQuery on steroids) and I can clearly say..learning curve is very high.
That position you posted sounds more involved in building than designing. In which case while knowing some design theory and practical application may be nice, may not be mandatory. Front-end developer tends to have skewed meaning to different people. In most cases though it primarily involves working with front-end technologies to implement a design mock-up into a usable site or application. Normally, the a few static mock-ups will be given to you from a designer, with the overall look and feel. It is than the front-end developers to build out the front-end of the site and make some design decisions regarding consistency, but it all comes back to the mock-up(s). Not much design is involved, just common sense and knowing the previously mentioned technologies to bring a designers vision to life on the web with "pixel perfect" (commonly used) replication and cross-browser compatibility.
The issue with not knowing at least something about the application language your working with is that your likely to mess up server side code in templates. That is why many front-end jobs ask for some type of knowledge in the application being used. HTML and the application code being used are so tightly coupled its hard not to have some knowledge of the application language and be able to build the front-end effectively or modify application code in the template when necessary, ie to achieve a certain look or something. While you don't need to be a master, you should have a basic understanding of how to achieve some basics things using the application language such as loops and conditional logic pertinent to displaying and formatting information. It may not be critical but any programmer would rather work with a front-end guy less likely to muck up code than not. I know I do.
HTML and CSS are expected, so being slick with them together is key. Alistapart.com is a great place for advice on clean design (http://www.alistapart.com/topics/code/). You gotta make pages on a portfolio that make a knowledgeable hiring manager drool. And if you simply make up the pages, even better, since there's no time crunch to slop the work together and you can get fancy.
Then throw some jQuery in there and you've got a rounded front end stack.
Thanks Alex -Regarding books Ive got a stack of Sitepoint & O'reilly which I'm v happy with I just need to migrate out of the cut and paste method Ive been using for years and get that deeper understanding to get the badge of front end developer.
Thanks for defining the languages I need competence in. It kinda backs up what I thought
Well thats what i was hopping to hear. Being an expert in CSS is enough in my view & I would imagine if you worked for an agency & waved the flag you were a jack off all trades they'd stretch you so thinly your reflection would turn into binary code
ExtJS sounds too scary for me at the mo
I disagree, there's no need in every case to claim everyone needs to be a master of none. Some of the best in their field only know a specific subject or aspect of web creativity. The more things you learn and try to maintain an active current and thorough knowledge level, the more your quality level gets diluted (as a result of trying to over-diversify and having less time to focus on a specific region). It just depends whether you want to be a professional or expert.
There isn't really a strict syllabus to work through however there are two layers of important things to know about, the practical skills (such as the languages) and the theoretical skills (such as design theory). The Opera Web Standards Curriculum (you can find it via Google easily) has a good rounded idea of what you need to acknowledge but the general method I would learn if your self-teaching is to just get some good books, keep reading stuff on the web and taking part in places like this and just build up your knowledge as you go. There's only so much you can learn from a book and much of web design is about trial and error (and hard research).
Theoretical items you'll need practical knowledge of will include graphic design (as it's front-end you'll need to be handy with pixels), information architecture (mock-up's, sitemaps, wireframes, etc), design theory (so typography, color, general design, design psychology, etc) and user-experience design (at least the basics of accessibility and usability). While it may seem like an after thought, they will be looking for people who know their craft well. The practical stuff and learning the standards is important, but you really need a well rounded scope of knowledge in the front-end sphere as you'll be expected to be able to make judgements on not just implementation of designs but the usability and visual credibility too. Seems daunting I know, but front-end design is as much a creative subject as a coding gig (in fact, I would say it's less about coding and more about the experience). Hope that helps - this info was based on what I've advised others getting into the field.
BTW if you want book recommendations I've got a good list that'll set you down the right road