How to be a good front end developer?

Often, it is not the ability that defines the greatness of a person, it is as much the attitude. In fact, people from all facets of life will tell you that attitude is a bigger trump card than ability. You can see this in any sport and most certainly at work. And it is no different when it comes to being a front-end developer.

A front end developer is someone who is responsible for the development of those elements of a website that the customer sees and interacts with directly. It is a combination of programming skills and aesthetics. Acquiring the skills to be a good front end developer is fairly straightforward. It's about learning the right programming skills and developing a design sensibility.

But, what after that? Does everyone with programming skills and design sensibility become a good front developer? Not really.

It is the attitude that matters. Front end developer, Zach Leatherman, has written a beautiful guide of principles that define a good front end developer. There are 16 principles that every front-end developer should live by. They are as follows -

I will put the needs of the user first, over my needs as a developer - Because, at the end of the day, you're building the product for the user, not yourself.

Progressive enhancement and unobtrusive javascript are my tools - Both are strategies and principles for web design that uses web technologies in a layered fashion so that the product can be used under any technology and bandwidth constraint.

Simplicity is respect - User focus comes through here again, as a front end engineer must look at  complicated interfaces and designs as bad as disrespecting the user.

I will educate my friends and family that web browser choice matters - Because, the user should use good products.

I believe in the power of the open web - In the constant endeavour to provide accessible device independent content in the face of App Store ubiquity.

I acknowledge that performance is critical - Because, "it works on my machine" just doesn't cut it anymore. A good front end developer should be mindful of limited hardware, poor latency, and low bandwidth situations.

I will learn at the root, not the abstraction - JAVASCRIPT BEFORE JQUERY or YUI, Prototype, Mootools, et al.

I believe that open source code and royalty-free tools represent the best future for the Web - Zach shares that this is particularly true for file formats and codecs for images, audio, or video.

I will not underestimate the importance of accessibility - Because a very large population of computer users are visually impaired. Zach goes a little forward and expects front end developers to be responsible for providing comprehensive access for users that may prefer to use either the keyboard or the mouse; in providing a clean print friendly format; in providing content to devices of varying technological capabilities.

I will give back to the community - Especially in today's context, we owe the community a lot, for what it has given us.

I will continue to foster both hemispheres of my brain - Because, for front end developers, art is just as important as math.

I will do my best to keep my knowledge current - A front end developer should realise that they cannot learn everything and they should be mindful of what they do not know.

I accept my responsibilities for view source - So as to use approaches that will be compatible with current and future web browsers.

My code will be portable - This means being mindful of overzealous use of browser implementation quirks

I will choose the right tool for the job - Because.

I will strive to create secure applications - This isn't out of the purview of a front end developer. Simple things like properly escaping output and code to prevent XSS and CSRF.

Read it in Zach's own words here -

About the Author

Raghu Mohan
Raghu is an engineering grad handles Marketing at HackerEarth. Prior to this, he was an editor at When he’s not working, you can find him at the nearest music shop having a jam session.