JavaScript Developer I Certification Guide & Tips

Share this article...

Table of Contents

Certification Introduction

The JavaScript Developer I exam is intended for individuals who have the knowledge, skills, and experience developing front-end and/or back-end JavaScript applications for the web stack. These skills can be applied to any framework and are not mobile or device specific.

What’s really important with this certification is that it’s the first platform agnostic exam that tests knowledge outside of Salesforce platform tools. There are also no prerequisite certifications for this exam.


Also, something I am personally excited about – there’s a high possibility of a JavaScript Developer II being introduced in the future as the name implies, similar to Platform Developer II, so stay tuned!

The exam will test your knowledge on:

    • Variable, Types, and Collections
    • Objects, Functions, and Classes
    • Browser and Events
    • Debugging and Error Handling
    • Asynchoronous Programming 
    • Server Side JavaScript
    • Testing

Who's the Ideal Candidate?

For this exam, there are two categories of candidates that can benefit most from working towards getting this certification:

1. Web developers who are looking to get into the Salesforce ecosystem.

2. Salesforce developers who are looking to build and test their fundamental JavaScript and other web technology skills. (Node.js etc.)

As Salesforce continues to build and support more open source technologies e.g Lightning Web Components and becomes more involved with ECMA TC39 and standardization of JavaScript, I believe they’re looking to introduce more developers into the Salesforce ecosystem.

As for current Salesforce developers, this is a great opportunity to build and improve your core JavaScript skills and get a better understanding of the inner workings of the language that drives the web!

As a reminder, this is a difficult exam, deep diving the fundamentals of JavaScript. It’s going to test your code reading skills, analysis, testing, and much more than other certification exams. (This means no Lightning Web Components specific questions, but working with them before the exam will help).

Fear not though! I’m hoping this guide will point you in the right direction and you can check out links below for my comments and resources I have used to prepare for the exam.

Key Topics

Salesforce Exams are made up of different topics, comprised of different weightings for each. It’s important to pay attention to these, as just a few sections will most likely take up the majority of the exam, such as the key topics below (Totalling 54% which is 32/60 questions).

1. Variables, Types, Collections: 23%

This part is really where you should focus on as a beginner, you might be using these concepts without even realizing it while building LWC or even Aura and VF components.

JavaScript is known to be a quirky language so be sure to get fundamentals straight at least up to a comfortable level. This is your Day One study material. Figuring these out from ground up will help you both in the exam and in your day to day job!

I’m talking about function, variable scoping, array methods, JSON methods and truthy and falsy concepts.

  • Given a scenario, write code to create variables and initialize them correctly.
  • Given a business requirement, utilize strings, numbers, and dates effectively.
  • Given a scenario or example, demonstrate awareness of type coercion and its effects.
  • Given a specific scenario, distinguish truthy or falsey evaluations
  • Given a list of data, demonstrate data manipulation with arrays.
  • Given a JSON response, demonstrate how to operate the JSON object.

2. Objects, Functions, and Classes: 25%

Who said JavaScript can’t be object oriented? Even though OOP can get quickly very complicated, be sure to understand the concepts like prototypes, flow control on a high-level view and be ready to dive deep on concepts like “this” keyword, block scoping, constructors and Object methods etc.

  • Given a business requirement, locate the best function implementation.
  • Given a business requirement, apply fundamentals of object implementation to solve the business requirement.
  • Given a business requirement, apply fundamentals of class implementation to solve the business requirement.
  • Given a JavaScript module, give examples of how to use the module.
  • Given a JavaScript decorator, give examples of how to use the decorator.
  • Given a block of code, analyze the variable scope and the execution flow.

3. Browser and Events 17%​

Your browser developer tools are your best friend in this section! Play around with DOM elements and practice using online sandboxes. I recommend understanding how to control events and browser APIs and how they can potentially work together.

  • Given a business requirement, utilize Events, event handlers and propagation.
  • Given a business requirement, evaluate and manipulate the DOM.
  • Given a scenario, utilize the Browser Dev Tools to investigate code behavior.
  • Given a scenario and requirements, utilize browser specific APIs.

4. Debugging and Error Handling: 7%​

There’s more than just console.log()! Again your browser developer tool to the rescue. Learn features like debugger keyword and different ways you can display data in your log statements. Did you know you can measure performance of functions with console methods?

  • Given a scenario, handle errors properly.
  • Given code to be debugged, use the console and breakpoints.

5. Asynchronous Programming: 13%:

Using async/await and promises are one thing, but truly knowing the difference between them and where to use them correctly is another. This section was difficult in my experience, especially if you’re missing out on how order of execution works in JavaScript and related concepts including Event Loop and Callstack.

  • Given a scenario, apply asynchronous programming concepts.
  • Given a scenario, use event loop and event monitor or determine loop outcomes.

6. Server Side JavaScript 8%:

This section is about using tools such as Node.js alongside npm. Expect both open ended questions about the features of these technologies and CLI code snippets

  • Given a scenario and requirements, infer which Node.js implementation is a good solution.
  • Given a scenario and requirements, infer which Node.js CLI command is a good solution.
  • Know the core Node.js modules and given requirements, infer which Node.js library/framework is a good solution.
  • Given a scenario and requirements, distinguish which Node.Js Package Management solution is the most fitting.

7. Testing: 8%:

This section is about you guessed it, testing. Be sure to understand logical concepts of reporting a result of a test and methods like console.assert()

  • With a block of code and the associated Unit Test, determine where the test is ineffective and modify it to make it more effective.

Study Strategy

There is going to be plenty of code reading with this one and although there are still going to be open-ended questions I recommend practising as much as possible on a JavaScript playground and understand nuances between lines of code. You can also use a desktop app such as RunJS, (it might have differences compared to a browser, for example not having the top-level object window so your mileage may vary).

MDN web docs are a tremendously helpful resource for you to bake in core concepts and test those out in your JS playgrounds or sample apps. 

You can take online courses, or if you’re new to both Salesforce and JavaScript, I recommend completing the Trailhead modules (Build LWC, or Discover Sample Apps) while you study the details on how to proceed using relevant documentation.

Once you complete the Superbadge, you can even try solving the challenges afterwards (again) using different methods; alternatively, you can build on top of apps that are readily available on the Sample Gallery. 

There are many thoughts and opinions about JavaScript, especially on advanced topics. Make sure to check out ECMAScript Language Specification when in doubt (ECMA) as this is the constantly evolving authoritative piece for things related with the inner workings of the language.  

Learn and be coachable on online communities (Salesforce-related, or not). This involves being active on Salesforce Stack Exchange or my favourite online community, SFXD.

As you will see in the ‘Resources’ section later on and when you begin studying, there are many resources online. Be careful! Because of the volume of information, it is easy to branch outside the scope of the exam, so stick to the concepts you will be tested on. I wish somebody told me earlier, but I forgive myself!

Exam Strategy

This certification (and Superbadge) is all about learning by doing so having both theory and practical knowledge of the necessary concepts are essential. The certification exam will test you on both, as you will need to quickly spot differences between code and what’s missing to reach the right answer to very small nuances to small syntax errors

Test taking is a whole another skill on its own but I found by process of elimination and quickly checking if a keyword, braces or any type of syntax missing or seems odd can go a long way, at least for eliminating the most obvious of wrong answers.

Remember to mark your answers for review as you proceed. I usually found out from my experience the first answers I picked were usually the right ones, so if you’re in the same boat as me don’t make the mistake of changing your answers when confused too much!



Final Thoughts

As more developers enter the ecosystem everyday, I think getting this certification will prove valuable for the right candidate in the future.

All things concerned, JavaScript Developer I Certification Exam is not your typical Salesforce certification exam. It’s not hundred percent code reading, but most of it is with good reason.

Overall I found this exam very rewarding for building towards core skills which will provide for success in real world scenarios. Kudos to the Trailhead team and committee that prepared the exam and all the study resources.

Finally, good luck!

Leave a Reply