In the beginning of the COVID-19 lockdown I made a decision to use the isolation for self-improvement and invest time in something future-proof, so I signed up for OpenJS Node.js Application Developer (JSNAD) certification.
It took me a few weeks and two attempts to pass the exam, and a couple of days ago I finally received my certificate. Now it's time to reflect on the preparation process and test itself.
About the exam
The OpenJS Node.js Application Developer certification exam is not a dry theoretical test. Not at all, it's a performance based test consisting of a few coding assignments which you solve in a remote environment using one of the available IDEs (VSCode or WebStorm).
You're given two hours, IDE and terminal to get the job done. You can only use Node and JS docs during the exam.
Preparation
- I've reviewed Node.js 10 documentation. Yes, correct, the certification is for Node 10 (at the moment of writing).
- I've completed learnyounode and stream-adventure free interactive courses.
- I've watched the first part of the Ilya Kantor's free screencast in Russian.
- I've read and reproduced code examples from the following chapters of Node Cookbook:
- Ch 1: Debugging process
- Ch 2: Writing Modules
- Ch 3: Coordinating I/O
- Ch 4: Using Streams
- Ch 9: Optimizing Performance
I was so impressed by the Node streams that I even wrote about them.
First attempt
9 in the morning. Said Hi to my exam proctor through their chat. Showed my ID, desk and room to the proctor. Forgot to close thousands of tabs in Chrome. Experienced screen sharing issue. The proctor motivated to close the tabs. It fixed the issue.
Was solving tasks one by one. Enjoyed the problems and process.
Not enough time.
Result: 62. Passing score: 68.
Second attempt
One retake was free, so I happily used the second chance.
To prepare for the retake, I reviewed all the topics I was not confident about during the first attempt. During the second attempt, I tried to manage my time better and avoid the same organizational mistakes, such as chaotically switching between windows, working on one task for too long, double-checking whether I saved my solution or not, etc.
That worked. In 36 hours, I received my PDF certificate.
Result 76. Passing score: 68.
Advice for future test takers
- Make sure you can comprehend written English to follow proctor's instructions.
- Dedicate some time to learn candidate resources.
- Learn cd and clear Linux commands. You will probably need them to effectively work with terminal.
- Make sure you know where to find Node 10 docs.
- Practice before the exam. Seriously, try to solve foundational Node problems, such as writing to a file, executing a command in a child process, dealing with promises, getting system info, debugging, etc. Focus on fundamentals rather than on a particular framework or database access layer.
- On exam day, make sure you don't have anyone else in your room and anything on your desk except your ID. Move away all electronic devices to not cause redundant questions from the proctor.
- Close all apps (except Chrome) which are not necessary for normal functioning of your OS.
- Close all browser windows/tabs (except one).
- When you first open VSCode, configure it. Turn on auto save (File -> Auto Save) and enable word wrap (View -> Toggle Word Wrap). Believe me, it will save your time.
- Use VSCode integrated terminal (Terminal -> New Terminal) to avoid switching between windows.
- Every task folder has a README file with the task description. Don't waste your time on reading it in the browser.
- Control your time and try not to spend too much time on a single task. Better come back to it later if some time is left.
To sum up
The Node.js certification was not my first technical certification, so I can compare. The first one was Zend PHP Certification back in 2013. That exam had mostly theoretical questions. However, it gave me a big picture of the language and deepened my knowledge. Besides, the PHP certificate favorably distinguished my freelance profile from myriads of others, which helped with job search.
Let's see what opportunities Node.js certificate can bring for my future career. Even though I'm 100% sure the certification has made me a better developer, I still have a lot of things to learn, and I'm not going to stop evolving.
Top comments (22)
I appreciate this post, @kkomelin ! And congratulations on the cert!
Now, almost a year later, what are your thoughts on having the JSNAD certification? Has it opened up roles/opportunities for you?
I recently signed up for the JSNAD and I am preparing right now.
I appreciate you sharing tips on setting up VSCode upon start, thank you for that!
Hi @mannyluvstacos ,
Sorry for my later response. Missed the notification.
To be honest, I prefer frontend more and this certificate didn't open new opportunities with the frontend. However, I was contacted by a few recruiters who offered me Node.js roles after I shared my certification experience.
For me, this certification helped understand Node deeper but, as a web developer, I would also consider JSNSD certification because it's more Web-focused.
Best of luck with your exam!
Congrats and thanks for the helpful hints Konstantin!
You're welcome Ian!
Thank you for these tips!
May I know, what learning resources you follow everyday inorder to prepare for the test ?
Of course Ali. It's everything I mentioned in the Preparation section. Node Cookbook is good, in particular.
Here is how I would work with the book:
1) Read an article.
2) Try to understand everything from it.
3) Learn NPM documentation for each package mentioned in the article.
4) Refer to Node docs if anything is still unclear (Node 10).
5) Try to solve all problems from the article yourself (at least reproduce solutions from the article).
And what's more important from my perspective is to practice regularly. Don't skip a day. If you decided to take the exam, schedule it and prepare to it every day at least for 30 mins. Immerse yourself in the context of Node, even if your daily work is not related to it. It's like with language learning.
Thanks Again!😊
Congratulations! Doing a certification is a really good idea, especially in the current situation.
Thank you for sharing your insights :)
Thank you Tobias.
Exactly. Many of us have gotten extra spare time (commute, etc), so it might be a good idea to invest it to self-improvement.
You are very welcome!
Good tips. Thanks. I wonder anyone has sat for the Service Developer.
You're welcome Daryl. I know a person who was going to take the Service exam but no results yet.
Congrulations !!!! 🎉
Thank you Andres!
Good tips, thanks a lot!
You're welcome Daniil.
Congratulations! I will look into the JSNAD certification. Thanks for sharing. 😁
Thanks! Sure. It's my pleasure.
this actually motivates me to get mine too! thanks for sharing your experience
You're welcome Babacar. Good luck for your exam!
Thank you for your feedback about this certification.
Do you have any precision about your Node.js level before preparing this certification? (how many years of experience? daily use?)
As I remember, the Linux Foundation recommended having two years of experience with Node to successfully pass the exam but I think you can have less.
As for my personal prior experience with Node, I had built an API project with Koa and worked with Next.js for about a year before the exam preparation. Also written a couple of chat bots with Express and maybe something else. Node is everywhere today, so I also used it occasionally for frontend projects, for example to configure Server Side Rendering for React apps, etc. Besides that, I had worked with different backend and frontend tech for 13 years, so my case may not be that typical to make conclusions.