The Ultimate Guide To Becoming A Front End Developer
The Ultimate Guide To Becoming A Front End Developer
Front end developers work with HTML, CSS, and JavaScript code to
build the presentation layer. They need to be familiar with things like
responsive design, user experience design, and modern web
standards. They also need to understand the constraints of what can
be done with back end code.
Granted, you can build some websites without using backend skills
(other than being able to upload your site files to a web server). There
are even content management systems (especially flat file
CMSs—those that don’t use a database to store information, but
rather store everything in separate files) and ecommerce platforms
that don’t require you to have skills beyond HTML, CSS, and JS.
FRONT END TECHNOLOGIES YOU SHOULD
KNOW ABOUT (AKA, THE SKILLS YOU NEED)
HTML & HTML5
HTML is short for “hypertext markup language” and it’s the coding
language used to build websites. Every single website in the world is
built with HTML and it’s the only thing you need in order to make a
website (although it will be pretty basic—think: 1995).
CSS3 is the latest version of CSS, and it made a bunch of cool new
features available, including animations, color gradients, text effects,
new ways to select what HTML element you are describing, and
something called flexbox which makes it possible to design seamless
websites that work across every device you can image.
VANILLA JAVASCRIPT
JavaScript is a programming language that works in your browser.
JavaScript can do ALL kinds of things, but in particular, you will use it to
make heavily interactive web user experiences.
Check out
vanilla-js.com
for more!
jQUERY
jQuery is the most popular and commonly used JavaScript framework.
It’s also been around the longest!
Angular.js
React.js
Ember.js
Backbone.js
All of these front end technologies together are used to build the parts
of websites you (and billions of other internet users) see every day!
As already mentioned, front end developers (or those with front end
dev skills) have a hand in building every website and web app out
there that has any kind of presentation layer (which is almost all of
them now).
Check out some of the awesome websites created (at least in part)
with front end developer skills on the next few pages.
Legwork Studio
The Boat
OpenGov
As you can see from those examples, you can build pretty much
anything with front end developer skills.
Front end developers are in high demand, which means salaries for
even entry-level positions are
supercompetitive. Add to that airtight
job security and tons of available jobs, and you can see there are a lot
of options out there for anyone who wants to get into front end dev.
Front end dev jobs at some companies can even reach over $200,000,
depending on expertise, and over $150,000 is not uncommon for a
senior dev.
The point of all this is that from day one as a front end developer, you
can make good money, and it only gets better with experience and
added skills!
The two key titles to search for in addition to “front end developer” are
JavaScript Developerand
Front End Engineer . You might also find some
front end dev jobs listed as just
Web Developer , too.
Note: Be sure to check for the variations “front-end,” “frontend,” and “front
end,” as they are all used in the industry. Talk about cutting edge—we
haven’t agreed on a title yet!
We’re looking for engineers who are not afraid to stick their neck out
in pursuit of innovation and creative solutions. People who know what
YOU SHOULD...
● have 3+ years experience building modern front-end
applications in JavaScript, HTML5, and CSS
● have great product sense and be able to think through user
experience issues before diving into the code
● write maintainable, testable, and performant JavaScript
● have a love for great UI
● enjoy debugging all aspects of the front-end app including
memory leaks and quirky CSS across browsers
● have experience implementing real-time (e.g. websockets,
polling, etc.) web apps
● have significant experience with REST APIs and thoroughly
understand HTTP requests
Want to live in the small town where you grew up? Go for it. Want to
move to the city with the best school districts for your kids but avoid a
commute? You got it. Want to spend six months (or longer) traveling
the world without coming home broke? You can do that, too.
Imagine what your days could be like: wake up and have coffee at your
favorite coffee shop while doing a little work, hop on a plane to Europe
before lunch and work on the plane so that when you arrive at your
destination, you can take the evening to explore the city, all without
worrying about vacation days or making up for lost income!
You might start out as a junior front end developer. Junior developers
usually work on a team, under the direction of a senior developer. It’s
a great way to learn more on the job, by actually working on projects,
and gain experience at the same time. Junior front end devs usually
need minimal experience. Instead, you’ll need a portfolio that shows
you know the basics of the job and can complete projects.
From there, you can move up the ranks, taking on bigger projects and
more responsibility. Eventually, you can become a senior front end
developer, leading your own team and supervising new junior
developers.
Senior front end developers sometimes take on
non-development responsibilities, too, like consulting or working with
clients.
You don’t have to spend your days as a front end developer working
for a company or agency, though. There are plenty of front end
development options for those who want to freelance, or even those
who want to start their own business.
Take Adda, Skillcrush’s CEO, for example. Front end development skills
(along with other tech skills), are what set her down the path to
eventually starting Skillcrush.
The skills she learned and experience she got designing and
developing sites for companies like WNYC, Pro Publica, The Huffington
Post, and The New York Times, and also working as a technical
producer at MTV and VH1, set her up to build and launch Skillcrush
from the ground up.
When you think about learning a set of skills, like those a front end dev
has, you usually think about it in terms of getting a specific job. You
might be thinking, “I don’t know if I
want
to be a front end developer.
So why bother learning these skills?”
The awesome thing about front end dev skills is that you can use them
for a
ton
of different career paths. Like starting your own company,
being a better designer, or as a jumping off point for learning even
more.
Almost every business out there has a website now. That means every
business that isn’t designing their website in-house is working with a
web designer and developer. Knowing how to communicate with those
pros is a key way for founders and CEOs to make sure they get what
they want (with a design/dev team that respects them for knowing the
lingo and doesn’t get frustrated with vague, non-specific instructions).
Learning front end dev skills means you won’t have unscrupulous
developers taking advantage of you by using a whole bunch of jargon
that you don’t understand. Instead, you can come to the table
informed, making the entire project run more smoothly.
Even if you are creating your company’s website in-house, being able
to lead your team and speak their language makes you a much more
effective leader. Plus, being able to jump into the trenches and help
out with code as needed is a great way to keep your team motivated.
Adding front end dev skills also makes you a more valuable employee
if you’re working as a designer for an agency or company. Being able
to jump in and help out the dev team even when your primary role is
design is super helpful and valuable. Plus, that part about having
happier teams all around is two-fold when you’re all employees
working together.
Plus, while each programming language out there has its own
specifics, the general concepts of how coding works stay pretty
consistent from one language to the next, whether you’re working with
JavaScript, PHP, Ruby, Python, or some other language.
Good news: those little concepts and small projects are just as valid in
a portfolio as a job you might do for a high-profile client down the
road. You can use anything that shows your skills, whether it’s your
personal website, a web app or game you created for fun, or an open
source project you’ve contributed to.
I’d also love to design an html menu page because right now the
only way to view their offerings is by downloading a PDF (a pain
on my iPad and iPhone bc I have to take 3 steps to download &
view it). It also looks like they started working on a “Meet the
Chefs” page—I’d love to see this through. It would be great if
newcomers visiting the site could meet the chefs—they’d be so
taken by their personalities and warmth, they’d never be able to
resist a visit (The chefs are a married couple. Whenever I walk in
they look at me and gasp and jokingly ask, “Deepina you are
hungry AGAIN?” It’s hilarious and their joie de vivre
really comes
across in the spices in their food).
And if you’re looking for even more, check out Cameron Chapman’s
Skillcrush article on
more advanced projectsyou can add to your
portfolio. From Cameron:
One of the big perks about developing a stock theme is that you
can also sell it as a premium theme, generating income while
contributing to your portfolio. Or you can give your theme away
as a means of promoting yourself (consider offering support or
customization for an additional price in this case).
And you don’t have to get too fancy. Check out these
simple
WordPress themes by Paul Jarvis .
Really take time to plan out and create a site that is 100% you.
Think about the kinds of projects you’ll be showcasing, then
figure out the best way to display those projects. Check out Folio
Focus for some great inspiration from other designers’
portfolios.
There are TONS of designers out there who have created projects for
their own portfolios, personal projects, etc. that don’t have the front
end dev skills to bring them to live. Reach out to designers whose work
you admire and see if they want to collaborate on something!
If you’re 100% new to tech, then start with the Skillcrush 10-day Coding
Bootcamp . It’s completely free, and will get you up to speed on the
basics, from how HTML works to the difference between the Internet
and the Web.
After that (or if you already have a little bit of knowledge about how
the web and basic coding works), sign up for Skillcrush’s 3-month Front
End Developer Career Blueprint . You’ll learn all you need to get started
in front end dev:
You will even start working on real projects while you learn (and earn
money along the way). Plus, it’s a solid foundation for the rest of your
career as a front end developer.
When you finish your Blueprint, you’ll have some projects you can add
to your portfolio. Supplement that with a few of Dee’s pretend projects
(or more real client projects), and get out there to start looking for
your first junior developer job or more freelance work!
There are so many opportunities out there for front end developers,
and if you show that you’re passionate about development, eager to
learn and improve, and have a few projects to show off, you’ll be well
on your way to your new dream career.
TOOLS
Can I Use ? : "Can I use" provides up-to-date browser support tables for
support of front-end web technologies on desktop and mobile web
browsers
HTML5 Please : Look up HTML5, CSS3, etc features, know if they are
ready for use, and if so find out how you should use them – with
polyfills, fallbacks or as they are
JSHint: A tool that helps to detect errors and potential problems in
your JavaScript code
PlainJS: Vanilla JS utilities for writing powerful web applications without
jQuery