Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript

Front-end Specialist??

Often, I hear that it's financially smarter to specialize at one thing instead of being a jack-of-all-trades when it comes to web design/development. What kind of "specialties" can a front-end developer have? I would like to work with code as opposed to Photoshop, but I do like designing/creating interfaces that users interact with. Any suggestions on what "specialty" that would be? Or am I totally missing the mark here?

4 Answers

Jimmy Hsu
Jimmy Hsu
6,511 Points

I personally think that a full-stack/jack-of-all-trades developer can be more valuable than someone who only has experience in on area, especially if you ever aspire to be project lead or a technical manager. For example, a full-stack developer qualifies to more jobs due to multiple skill-sets, so at the very worst you've manage to open yourself to more opportunities at an average pay grade instead of only a couple positions with high pay grades (and depending on where you work, 50/50 chance you are crucial and permanent or just need to solve one issue for a short while).

There's no real specialties for front-end beyond designer or developer, as mostly everything is all tied together in one way or another (JavaScript is also backend due to node.js, css is a hybrid for design and development, etc).

If you really wish to specialize, Front-end Web Development track seems best for you if you haven't already finished it.

What I meant was specializing WITHIN the front-end role. For example, specializing in e-commerce sites, or specializing in jQuery. And yes, I agree all knowledge is good knowledge but at the end of the day you can't be an expert at everything...

Front-end development would be your HTML, CSS, JavaScript, Structural PHP, etc. You would also need to be familiar with the software like Illustrator, Photoshop, etc. as often times you will be getting measurements and assets from those sorts of files. Once you are familiar with those languages, it won't matter what sort of project you are dealt, whether it is an e-commerce site, or a web application.

Wow, so being a front-end developer basically means you have to know a little of all 3 roles... Sounds a little daunting. When I see job listings for front-end the required skill list is extremely long though. @Dave Evans: Which one is the most important front-end skill? What specific ability will get me a jr. dev position faster? Also, do you recommend learning PSD to HTML still? Thanks in advance, and I apologize for my barrage of questions!!

This won't necessarily narrow down your answer, but they are all important. Start out with a solid HTML knowledge and CSS. Then add onto that with JavaScript/jQuery, then dive into PHP. Knowing how to create web assets from PSD and AI isn't difficult, but you can get a solid grasp on that through Treehouse.

Something I always told my students when they started out with web development was to picture a website like a paper airplane. Your HTML is the paper and the folds that will actually make it fly. Without having a solid knowledge of where to fold you won't have much of an airplane. The CSS is your colors that you paint your paper airplane to make it stand out above the rest. And then you can add some languages like JavaScript to throw a propeller on it to make it soar. They are all necessary, but a strong foundation is imperative in the industry if you are shooting for a front-end, or back-end developer position.

Start out with HTML and CSS. Learn the fundamentals, then get into more advanced languages to make your sites even better. Don't ever be afraid to dive into something new. Anything and everything can help get you that starting position with a company, but until then volunteer to do some sites for training or portfolio purposes. Then use those freelance experiences in your resume. It all helps out. My first professional position in the industry (not freelance), I didn't have a degree but I had a solid portfolio and references from many freelance clients.

There are typically three classes in the industry. You have the designers, front-end developers and back end developers. The designers are the ones who obviously come up with the UI and complete the design phase. Then they pass it off to the front-end developer (which is what I am) who creates a website from the design using best practices to ensure quality UX across the board. Then the front-end developer (if needed) will pass it off to a back-end developer who will add a lot of additional functionality that are typically not seen by the user (hence back-end developer) but assist with either gathering additional complex data, integration, or whatever. It's good to know a little of each as it will make you more marketable as an employee. However, if you excel at one thing over another, you can stand out among the rest.

There are smaller companies that tend to merge the designer and front-end developer position where you would be working on the project from concept to framework and beyond. Always learn whatever you can, but you will inevitably enjoy doing one position over the rest. That should be the one you focus on while still learning in the rest. I've working in the industry for close to a decade and I've worked in each role professionally and I enjoy front-end development the best.

I would have to agree with Jimmy. The better you know how everything works the better you will be at creating specialized front end stuff.

James Barnett
James Barnett
39,199 Points

Most professional front-end devs have some serious JavaScript-related skills.

If you check out a new baseline for front-end devs you'll see that "js" comes up in most every section.