What Makes a Great JavaScript Developer?

Image by Alex Kulikov.

In 1995, Brendan Eich developed a programming language which went through a series of names before finally settling on JavaScript, commonly initialised as 'JS'. Today JS is widely used in the creation of websites and web applications. However, like anything else in life, some excel in JS, whilst others find it a tricky language to master.

With this in mind, how do you progress from a novice JS developer to a great JavaScript developer?


How to Become a Great JavaScript Developer ‑ Tips

JavaScript has been an important tool in the arsenal of developers for many years, and it is one of the core skills for browser development. A strong developer needs a sound grasp of the language's main mechanics and of the runtime in which their code executes; nobody needs to know every corner of the language or ecosystem before they can do good work. Useful areas include:

1. Understanding Your IDE

An editor or integrated development environment can make larger JavaScript projects easier to navigate, test and debug, but tool choice is not evidence of mastery. Editors such as Atom and Sublime can both support substantial projects; what matters is using the chosen tools effectively.

Personally, I have been using Visual Studio Code for several years. The fact that you can sync your IDE settings using your GitHub account is even better; allowing you to retain all the personalisation, linting, indentation, etc settings across devices especially handy when setting up a new project machine!

2. Different Applications

JavaScript is used in browsers, servers, build tools and other runtimes, but language knowledge alone does not make every application context interchangeable. Strong developers learn the APIs, constraints and failure modes of the environment in which their code runs.

3. Frameworks

ECMAScript editions define versions of the JavaScript language; frameworks and libraries are separate tools built for particular application patterns. A great JavaScript developer can distinguish those categories, learn the tools required by the project and recognise which behaviour comes from the language, the runtime or the framework.

4. Organisation and Debugging

No one writes code perfectly. When you make errors, you should be able to analyse your code with debugging tools to pinpoint the problem and offer a viable solution. These skills help you save time to produce your project quicker, and with fewer bugs that need sorting at a later date.


My Advice...

Keep challenging your skill level and learn something new whenever you interact with other JavaScript developers and when you take on new projects. Ensure you understand the basics before you rush into massive projects, as this could derail your progress and your reputation within the development community.


What I Look for Now

Syntax knowledge is only the starting point. The stronger JavaScript developers I have worked with are good at narrowing a problem, reading unfamiliar code, debugging calmly and knowing when a small boring solution is better than a clever abstraction.

They also understand the runtime they are working in. Browser JavaScript, Node.js, serverrendered React and build tooling all have different failure modes. Knowing where the code runs is often half the debugging work.


Production Judgement

In production work, good judgement shows up in small decisions: adding the test that catches the bug, naming a function so the next developer understands it, checking the loading and error states, and asking whether the code is still clear without the author in the room.

That is the part that takes time. You can learn syntax quickly. Developing the judgement to keep a JavaScript codebase healthy whilst real users and real deadlines push against it is the longer craft.


Want to find out more?

If you need senior handson support with a complex React or Next.js platform, migration, performance issue, or technical SEO problem, send me the context and I'll tell you where I can help.