Job Descriptions JavaScript Developers Should be Weary of in 2019
Tags: javascript, career
Published: 2019-09-25 00:17:49

Recently, [a thread over at r/javascript](https://www.reddit.com/r/javascript/comments/d8goc2/askjs_can_we_stop_treating_es2015_features_as_new/) has me a bit fired up.

JavaScript today is not JavaScript of 2006, 2004, or prior. I repeat.

*Modern JavaScript is not "just" JavaScript*

Recruiters, and HR, please take note.

Lead devs,

I understand this language may have burned you, chewed you up, and made your life utterly miserable a decade ago. 

This is not an acceptable excuse for attempting to hire a developer and stagnating their career progression with your outdated tech stack. 

If Internet Explorer 11 and below are a required target, you better prepare to offer higher compensation for outdated technology.

Junior devs to-be,

Please take in consideration of where you see yourself in the future. If you've been building applications with technologies such as Ember, React, Angular, and Vue, please be cautious of job listings containing jQuery or "JavaScript" with no context.

If you are working heavily with ES2015 syntax and front-end frameworks, you are no longer just a 'front-end web developer'. You are an application developer. Don't let anyone try to cut corners with job descriptions.

However, job descriptions are just the beginning. You need to press the topic during the interviewing process if you have any doubt.

Legacy code is real, and you need to ask if you'll be spending 90% of your time in jQuery-land or what you thought you signed up for instead. 

*"I saw jQuery and React on the job posting, are you transitioning to React"?*

*"The interview question/tests are using some older syntax, is this indicative of your current codebase"?*


Anyways, I scoured a job board to find a list of good and questionable job descriptions. Notice a common key-word in each of the good descriptions. If there is no mention of ES2015 (ES6) or higher, then you need to go on the offensive during the interviewing process. 

## Good Job Descriptions

*Senior Level*

> * Expert level programming knowledge in Javascript (ES6), including writing cross-browser code, writing testable code.
> * Knowledge of best practices & patterns for large scale applications in javascript .
> * Efficient DOM manipulation.
> * Component architecture using AngularJS or ReactJS/Redux. 
> * Less dependent on third party ibraries.
> * Web: HTML(5), CSS(3), BootStrap/Foundation,

*Intermediate Level*

> * 2+ years of professional JavaScript experience, including concepts like asynchronous programming, closures, types, and ES6
> * 2+ years of professional HTML/CSS experience, including concepts like layout, specificity, cross browser compatibility, and accessibility
> * Broad understanding of the JavaScript ecosystem
Experience with React, Angular, Vue.js, or other modern frontend frameworks
> * Direct experience with professional software development practices, including coding standards, source control (Git), code reviews, build processes, and testing

*Junior Level*

> * Passionate and fast learner
> * Knowledge and experience with one or more Javascript frameworks such as AngularJS or React
> * Experience and opinions about one or more of the animals in the JavaScript zoo: Webpack, ES6, TypeScript, ClojureScript, Grunt, Elm, Redux
> * Expert with HTML5, CSS and modern web design standards

## Questionable Job Descriptions

*Intermediate - Senior Level*
> * Must have excellent background and understanding of HTML5, CSS3, SVG, ReactJS, Web Socket and Canvasas as well as Client-side Java Script.
> * Several client-side frameworks and build tools (ReactJS, jQuery, Less/Sass, Grunt/Gulp, etc).
> * Server-side development (JavaScript/Node.js, PHP, etc) and architecture (Apache/Nginx/etc.)
> * Database-driven web applications
> * REST APIs.
> * Git
> * Bash (linux or Mac)
> * Security best practices & familiarity with:
> * Relational Databases (SQL & PL/SQL)
> * Web Services
> * 3rd Party APIs: Twitter,Facebook, Google Maps, etc
> * Knowledge of common content management systems
iOS and/or Android native development experience a plus
> * Comfort with Agile and Waterfall development methodologies

*Intermediate Level*
> * Minimum of 3 years work experience as a web developer/programmer
> * Solid exposure to front-end technologies is required:
> * JavaScript-3+ years of experience
> * HTML-3+ years of experience
> * CSS-3+ years of experience
> * PHP-3+ years of experience
> * Netsuite SuiteCommerce Development Certification a plus

*Junior-Intermediate Level* 

> * Proficient in HTML5, CSS3, JavaScript/jQuery.
Comfortable writing native JavaScript from scratch.
> * Proficient in bootstrap and/or other responsive frameworks.
> * WordPress development (Installation, customization, and updating) a must-have.
> * Comfortable in Photoshop/Illustrator to slice and create images.
1 – 3 years of experience.
> * Bachelors degree in Computer Science or similar, preferred but not required.