OpenJS Node.js Developer Certification: What to Expect
OpenJS Node.js Developer Certification: What to Expect
Here's what you can expect from OpenJS Node.js developer certifications.
Join the DZone community and get the full member experience.Join For Free
In collaboration with the OpenJS Foundation and Nodesource, it's my pleasure to announce the launch of two certifications: the OpenJS Node Services Developer (JSNSD) and the OpenJS Node Application Developer (JSNAD).
As a technical lead and primary author on both certifications, I'm going to discuss the driving principles used to create the certifications, along with the purpose and general theme of each examination.
If you are a Node.js developer looking to gain recognition for your skills, or a hiring manager interested in acquiring specialized skills, this short read will give you insight into what to expect from the certification.
You may also like: [DZone Refcard] Node.js
The pricing structure for the two certifications is notably different from many other Enterprise certifications. There's a very intentional reason for this: leveling the playing field. While price can indicate many things, we wanted to make it as easy as we can for independent, startup and enterprise developers around the world to access the certifications. Having said that, there's definitely more than the Foundation can do to make access more open to different socioeconomic and geographical backgrounds. At the time of writing, this should be addressed in the next few weeks to allow for greater inclusion across the community and industry.
While price diverges from traditional Enterprise certifications, JSNAD and JSNSD are both focused on validating practical Enterprise-level Node.js development at the upper-intermediate skill level.
Node is a very versatile tool, and as such, has a broad spectrum of use cases, even when focusing primarily on commercial applications. Originally, the content formed the basis of one certification, but we ended up with an estimated five hours of the subject matter. In order to cover the breadth of usage, we pruned and then split the content into two certifications, each with a two-hour exam.
The certifications are about validating problem-solving ability and practical outcomes. This is why candidates are allowed to use documentation or any online resources, with the exception of Stack Overflow and related sites that encourage cargo culting.
Due to the Node's small-core philosophy, there are myriad combinations of tooling, libraries, and frameworks that can be used for any given problem. To cater to this, every question can be answered with either Node core API's or any library or framework as desired.
While code challenge platforms are about learning as you go, these exams are about verifying practical problem-solving abilities in common scenarios. Having spent ten years as a software consultant, I've often found that unit tests are frequently unavailable or untrustworthy. For this reason, no unit tests are provided for you to test your answers against, although you can unit test your own code as you go.
Given that exam conditions are highly flexible it's important that we maintain the quality and integrity of the exam. With principles of global access and scalability at the forefront, we opted for a remote examination solution. This is why each exam is proctored by an informed human agent and conducted in an isolated remote environment. The downside to this is that you may not have the operating system or tools that you're used to. The environment is a bare-bones Linux VM with a GUI, file manager, a terminal, a browser, and a Visual Studio Code (and Vim). If you are used to IDE's like Webstorm, then part of preparation may be familiarization with the tools available during the exam.
Nevertheless, we recognize that there are trade-offs and challenges in conducting an examination in a remote VM. As such, if you're unhappy with your initial result for any reason, the retake is free.
Exam integrity is also preserved through variance. There a multiple forms of each question, selected at random by the examination platform. So even in a retake scenario, you may have different yet equivalent questions. If it becomes necessary over time to further protect the integrity of the exam, we can always add/replace variants.
With regard to quality, the original certification topics were created by a cross-section of industry volunteers under the advisement of a psychometrician. The content and software for the exam were either written or co-written by myself and have been peer-reviewed by industry leaders such as Mathias Buus, Adrian Estrada, Luca Maraschi, and Charlie Robbins. The examinations have also been through Alpha and Beta testing rounds, with the psychometrician being consulted throughout the process, in particular helping us to analyze Beta feedback for final content improvements.
It should be noted that this initiative would not have been successful without the formative leadership of Tracy Hinds, who was instrumental in creating the certifications' culture by laying down these principles and processes from the start.
The JSNSD Certification verifies practical skills for one of the most common Node.js use cases: creating services. The focus of the JSNSD certification is on validating core competencies with RESTful servers/services and security as it relates to Node servers. This exam does not contain a large number of questions. However, the questions in this exam tend to be quite involved, providing a detailed list of requirements to be implemented against.
If you work with Node every day and you frequently use frameworks like Express, Koa, Restify, Hapi, or Fastify, then this certification will allow you to officially validate your skills.
For instance, a file system question will be marked on whether your answer causes relevant file system mutations to occur, not on whether you directly used the module. If you want to demonstrate comprehensive aptitude with Node.js then this certification applies the necessary rigor to officially ratify your competency in creating all common forms of Node.js applications.
I intend to continue working with the OpenJS Foundation to provide on-going support and maintenance. We will be keeping the certifications synchronized with modern development practices and Node.js as a platform. Our immediate next steps will be to establish a release schedule that appropriately maps to Node.js release cycles while constantly improving the content based on candidate feedback and advancements in the JS and Node.js ecosystems.
In the meantime, if mentoring/training is of interest or you have further questions for me, you can follow/contact me via Twitter @davidmarkclem.
Published at DZone with permission of David Mark Clements , DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.