강의

멘토링

커뮤니티

Programming

/

Programming Language

[CS Technical Interview 7] JavaScript That Makes Sense

This course carefully selects only the essential JavaScript core concepts you must know for practical work and interviews, covering everything from scope and execution context to closures, prototypes, asynchronous processing, and module systems all in one comprehensive guide. Going beyond superficial syntax explanations, it's structured to help you understand how JavaScript actually works from fundamental principles. Through examples and visual materials, even concepts that seemed difficult are explained easily, aiming for 'understanding that can be expressed in words' that you can directly utilize in interviews. If you want to systematically organize JavaScript's operating principles, start right now.

(5.0) 7 reviews

264 learners

  • yiyj10305235
javascript
자바스크립트
3시간 만에 완강할 수 있는 강의 ⏰
비전공자
JavaScript
Tech Interview
kakao-tech
kakao-recruitment

Reviews from Early Learners

What you will gain after the course

  • Understanding JavaScript's Operating Principles Based on Scope and Execution Context

  • Organizing core concepts like closures, prototypes, and this binding to interview level

  • Learning Asynchronous Processing (Promise, async/await) and Event Loop Operating Mechanisms

  • Understanding the Structure and Loading Strategies of Module Systems (ESM, Dynamic Import)

  • Learning How to Clearly Answer Advanced JavaScript Concept Questions in Technical Interviews

🥲 Getting a developer job, coding tests weren't the end of it.

As a non-major, when I first prepared for developer employment, I was obsessed only with algorithms and coding tests. I gained some confidence and passed most coding tests. However, I kept failing at the next hurdle, technical interviews.
What was the problem? It was the lack of CS (Computer Science) knowledge. In interviews, CS fundamentals were considered much more important than algorithms.

🗣 For actual interviews, 'speaking practice' was important.

Even after filling in my CS fundamentals, interviews weren't easy. At a certain company's interview, I was asked about floating-point numbers. It was content I thought I had read and understood multiple times in books, but I couldn't utter a single word. That's when I realized it. Passive learning through simply reading and understanding cannot provide answers in real situations.

To succeed in interviews, you need not only to accumulate a lot of knowledge but also the ability to explain this knowledge. This 'ability to explain' can only be developed through practicing to organize concepts in just a few sentences and articulate them out loud. Through this process, you can also discover what you didn't know precisely. Without sufficient practice, you'll encounter the following problems.


1. Conceptual Confusion Type

Interviewer What are the characteristics of object-oriented programming?
💬 Candidate The SOLID principles. First, S is..(omitted)...

This is a case of confusing similar concepts.
SOLID is an OOP design principle, while the characteristics of object-oriented programming are abstraction, encapsulation, inheritance, and polymorphism.
The moment you mix up related concepts, the interviewer judges that 'your fundamentals are shaky.'
It's not just a simple mistake, but rather it's read as a signal that your conceptual framework is not solidly established.


2. Lack of Specificity Type

Interviewer What are the characteristics of TCP?
💬 Candidate It's a protocol that guarantees reliability.
Interviewer What are the mechanisms that guarantee reliability?
💬 Candidate Uh... well... it makes transmission safe... like that...

This is a case where you only know the What, but are missing the How/Why.
You only know the surface-level answers and aren't prepared to explain the underlying principles.
TCP establishes communication through connection (3-way handshake), ensures reliability through RDT (sequence numbers, ACK, retransmission, etc.), and maintains quality through flow control and congestion control.
These concepts should be connected as one cohesive flow in your mind. Without organizing concepts concretely, you cannot prepare for follow-up questions.


3. Being speechless at basic questions

Interviewer What is HTTP?
💬 Candidate Um... it's for sending and receiving data on the web... something like that...?

It's such a familiar concept, but when asked to explain it in one sentence, the words don't come easily.
Words like request, response, server, and client come to mind, but they don't flow together into a natural sentence.
This is because we've never practiced explaining from definition to principles in one coherent flow.
This isn't a lack of knowledge, but an absence of structure.


Just knowing is not enough. It only becomes true skill when you can express it in words.

🎯 Recommended for these people

Non-majors · Job seekers · Career changers and others who are preparing for technical interviews and need to be able to verbally organize CS fundamentals

A major student who needs to reorganize again

I've studied before, but
I can't bring myself to organize all that vast amount of CS knowledge again

Don't open that thick
textbook again.
We'll organize only the essentials clearly.

Non-CS majors who find CS overwhelming

This is my first time preparing for a technical interview
and I don't know where
to start - I'm completely lost

By following the roadmap, you can
focus on learning only
the core CS concepts.

Job seekers with no time

Enough, I don't have time.
I need to quickly review only the CS topics

that come up in interviews

You can quickly review on your own with
lecture materials and
interview chapters available.

⚡ Lecture Core Kick

1⃣ Short and highly focused runtime

  • With a comfortable lecture duration, you can complete the course even with a busy schedule and quickly review right before interviews.

  • Compressed to the essentials, designed so you can complete the entire course in a short amount of time

  • I focused on the point that the greatest learning effect comes from completing the course itself, rather than accumulating courses like shopping.

2⃣ Interview-focused lectures summarizing only the essentials

  • I have compiled and organized the essential concepts and principles that must be reviewed before an interview.

  • While building fundamental skills, I ultimately structured it to be used for interview preparation

  • It's not just a simple summary, but structured with diagrams and easy explanations so that even non-majors can fully understand it.

  • You can quickly organize key content while learning with a clear understanding of why it's important.

3⃣ Appendix [Interview Practice] Included

  • In interviews, the ability to explain things clearly is much more important than simply knowing something

  • However, organizing and practicing on your own is not easy and is a tedious task.

  • At the end of the lecture materials, we include "answering in one or two sentences" training to reduce the effort of summarizing.


📘 Technical Interview Practical WorkbookProvided

"How can I maximize my learning efficiency even more?"
"Will this course alone really be enough for speaking practice?"

After much deliberation, the Technical Interview Practice Workbook was born.
You can practice speaking out loud as if in a real interview.

This is a file provided separately from the lecture materials,
and it focuses on enabling you to express
what you've understood in your own words.

Curious about the workbook structure or how to use it?
You can check it out in detail right now in the workbook introduction video at the beginning of the course.

Workbook PDF Preview

💡 Use it like this

1⃣ Download the materials and learn key concepts while listening to the lectures.
2⃣ Take notes on important parts to create your own CS interview notes.
3⃣ Save them on your phone and review them briefly whenever you have time.

If you have an interview coming up,
and you don't have much time → Use the appendix [Interview Practice] in the course materials to quickly sharpen your interview skills.
If you have time → Complete your speaking practice like a real interview with the Technical Interview Practice Workbook.

💬 Q. The lecture time is short, but will I be able to learn properly?

This course is short, but it's 'not shallow'.
We've compressed vast content to organize only the core essentials that are actually asked in interviews.
We've removed unnecessary theory and cover topics deeply enough to answer follow-up questions.
If you want to use your limited time most efficiently, the short runtime will actually become your most powerful weapon.

🖐 Hello! Let me introduce myself! 🙇

I created this course while thinking of my past self, who stayed up all night worrying about fundamentals and had my heart racing over a single interview question.

I started as a non-CS major and understand better than anyone the thirst for fundamentals (CS knowledge, programming languages, etc.). Through self-studying countless materials and building my own know-how, I eventually graduated from Seoul National University and now work as a 🧑🏻‍💻 Kakao developer.

Since childhood, I've been more confident than anyone in combining and restructuring various materials to create 'my own comprehensive study notes.' This course is precisely that secret notebook born from my 'ultimate self-study know-how' and all my passion and philosophy.

🔥 What makes this course special?

  • All of my 'know-how' is included: As a non-CS major, I have fully incorporated my experience and know-how of self-studying CS and programming languages and getting hired at a large corporation. I have included in this course all the methods for how to most efficiently understand complex and abstract concepts and make them your own.

  • 'Fundamentals' are key in any development field: Whether you're aiming for game development, AI, web/app development, or any other field, basic computer science knowledge is not optional but essential. This course helps you become a true expert based on solid fundamentals.

  • We compete with 'overwhelming quality': I've referenced countless materials including textbooks, famous university lectures, commercial books, and technical interview resources to extract core keywords and reconstruct them in my own unique way. With intuitive diagrams and illustrations, plus easy explanations infused with my practical experience, I promise to make even complex concepts click with that "Ah, now I get it!" moment.

🚀 Introducing the seventh lecture of the Technical Interview Master Roadmap, the [JavaScript] edition.


📕 JavaScript is not a language where knowing just the syntax is enough.

  • You know variables but are confused about scope/hoisting/TDZ

  • Are you stuck on explaining why 'this' differs depending on how it's called

  • Is it difficult to structurally explain the difference between prototypes and classes

  • Event Loop·Microtasks·Promise·async/awaitIs it difficult to confidently explain the execution order

Understanding the 'operating principles' like scope, execution context, closures, prototypes, and event loops is what gives you real power in practical work and interviews. This course clearly organizes JavaScript's internal workings through diagram-centered, flow-centered, and practice-centered approaches rather than memorization, providing an experience where "words flow naturally" in interview situations.


🎯 Through this course, you will be able to clearly answer the following questions.

  • What are scope and execution context, and why are they necessary?


    → Understand why hoisting and TDZ occur through the identifier search/initialization rules determined by lexical environment and execution context.

  • How is this binding determined?
    → Summarizes the default/explicit/new binding rules and the differences between call/apply/bind with examples.

  • What is a closure and when is it useful?
    → Covers the pros and cons in a balanced way, from encapsulating external state and utilizing in events/callbacks to precautions about memory leaks.

  • What's the difference between prototypes and classes?
    → We compare prototype chains, method sharing principles, and the abstraction that class syntax provides through diagrams.

  • How does the event loop work?
    → Visualize the call stack, task queue, and event loop, and learn the principles of Promise and async/await.

  • What is the DOM and how do you manipulate it?
    → Explains node selection and manipulation, event propagation (capturing/bubbling), and preventDefault/stopPropagation together.

  • Why are script loading strategies important?
    → We'll organize the differences between defer·async·type="module", ES modules·dynamic import, and code splitting.



📌 At the end of the lecture, a practical interview practice chapter awaits you.

You can also practice answering common interview questions like "Explain execution context in one sentence," "Why are closures necessary?," "Explain prototype inheritance with a diagram," "Explain the difference between Promise and async/await in terms of execution order," and "Why is bubbling useful?" in one or two sentences on your own.

📖 A curriculum packed with only the essentials

This is the table of contents and key keywords you will learn in this course.

If there are any unfamiliar keywords, make sure to master them thoroughly with this opportunity.

  1. Scope and Execution Context

    • Scope, Lexical Environment, Execution Context, Hoisting, TDZ, this keyword, Explicit Binding, JS Runtime


  2. Closure

    • The concept and operating principles of closures, advantages and disadvantages from data encapsulation and memory management perspectives

  3. JavaScript Operating Principles

    • Single-threaded structure, synchronous vs asynchronous processing flow, how the event loop works (call stack, task queue)

  4. Asynchronous Programming

    • Callback functions and callback hell, Promise state changes and chaining, async/await syntax and error handling

  5. Prototype and Inheritance

    • Object Creation Methods and Constructor Functions,

      The concept and connection structure of prototypes,

      Various Prototype Inheritance Methods

  6. Working with Arrays and Objects

    • Array methods like map, filter, reduce, object destructuring and spread operator

  7. JavaScript Module System

    • ES module system structure, differences between import/export, dynamic import and code splitting

  8. Browser and JavaScript

    • JavaScript execution preparation process, script loading strategies, DOM and events, event propagation

  9. [Appendix] Interview Practice

    • Review the main concepts once more in a Q&A format

✏ Here's what you'll learn

1⃣ Understanding JavaScript Core Mechanisms Through Flow-Centered Approach

  • Understanding the flow and timeline of how complex mechanisms like scope, execution context, event loop, and call stack are interconnected and operate through flowcharts and timelines

Execution Context Creation Process

2⃣ Step-by-step flow explanation using diagrams, notes, and code

  • Not just simple memorization, but a structure that combines visual + code + handwritten notes
    → Even complex concepts can be naturally learned by combining note-taking with execution results
    → A 'review-oriented lecture' structure that allows you to reopen and organize materials even while taking the course

Definition and Types of Scope

3⃣ Pattern-based examples to develop practical skills

  • Prototype inheritance, event delegation, module loading strategies, etc.
    Structured to help you understand the patterns you encounter in practice along with the reasons

class-based prototype inheritance example

4⃣ Key Questions Summary for Technical Interview Preparation

  • Includes interview practice chapter at the end of the course

  • "What is a closure?", "Please explain the principles of Promise", etc.
    Includes practice summarizing frequently asked questions in one or two sentences

  • From concept mastery → to practical preparation - a continuous flow

Key Questions Summary

👀 Course Preview

If the video is frozen, please refresh the page :)

Overcoming the limitations of single threads: Event Loop

Promise Operation Principles and Follow-up Processing Methods

💡 Curious about other interview preparation courses? Check out the roadmap below :)

🔗 Technical Interview Master Roadmap

Technical Interview Master Roadmap

Pre-enrollment Reference Information

  • Learning materials format provided: PDF

  • This is a course that does not require prerequisite knowledge.


Recommended for
these people

Who is this course right for?

  • Those who know the basic syntax of JavaScript but want to systematically organize the principles of how it works

  • Those who want to deeply understand common interview topics such as execution context, closures, prototypes, and asynchronous programming

  • Job seekers who want to confidently answer JavaScript-related questions in technical interviews

  • Those who want to understand code execution flow and performance optimization principles to immediately apply them in practical development

Need to know before starting?

  • Javascript Basic Syntax

Hello
This is

2,386

Learners

118

Reviews

12

Answers

4.9

Rating

7

Courses

About Me

  • 카카오에서 서버 개발자로 일하며, CS 개념을 빠르게 이해하고
    면접에서 말로 풀어낼 수 있도록 돕는 '말이 트이는 CS' 시리즈를 만들고 있습니다.

 

학력 및 경력

  • 서울대학교 졸업

  • 現 카카오 서버 개발자

 

강의 철학

컴퓨터 비전공자로 개발을 시작해 CS 기초부터 기술 면접까지 직접 정리하며 시행착오를 많이 겪었습니다. 그 과정에서 쌓인 학습법과 개념 정리 노하우를 바탕으로, 실무와 면접에서 꼭 마주치는 핵심만 선별해 도해와 쉬운 흐름으로 누구나 이해하고 설명할 수 있도록 만드는 콘텐츠를 제작하고 있습니다.
"그때의 저에게 필요했던 강의를 만들고 있습니다."

 

강의 스타일

  • 핵심만 3~4시간에 압축

  • 도해 중심의 구조적 설명

  • 면접 질문을 기준으로 구성

  • 워크북으로 실전 답변까지 연습

 

블로그

  • yiyj1030.tistory.com
    → CS, 알고리즘, 실무 개념을 쉽고 정리하는 기술 블로그 운영 중

     

 

Contact

yiyj1030@gmail.com

Curriculum

All

40 lectures ∙ (3hr 33min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

7 reviews

5.0

7 reviews

  • dlatjdgns2839112님의 프로필 이미지
    dlatjdgns2839112

    Reviews 2

    Average Rating 5.0

    5

    32% enrolled

    Great for preparing CS for in-person interviews!!

    • ghdtjgus76319152님의 프로필 이미지
      ghdtjgus76319152

      Reviews 1

      Average Rating 5.0

      5

      37% enrolled

      I enjoyed it so much! I'm curious if you have any intention of creating a React course as well. After listening to all the CS courses and then the JS course, I feel like I understand a lot more by connecting them, so I'd love to study React too!

      • yiyj10305235
        Instructor

        I'm glad it was helpful. 😊😊 Unfortunately, there are no plans for React yet 😢😢

    • 12313님의 프로필 이미지
      12313

      Reviews 5

      Average Rating 5.0

      5

      100% enrolled

      It was great to be able to comprehensively review and quickly check JavaScript overall. The learning materials also included diagrams, which made it easy to organize the content in my head into writing or speech.

      • seohyeoniii님의 프로필 이미지
        seohyeoniii

        Reviews 10

        Average Rating 5.0

        5

        47% enrolled

        This is a course where you can set aside about a day to organize the major concepts of JavaScript all at once! It's great as a reminder before interviews👍

        • misungdev0784님의 프로필 이미지
          misungdev0784

          Reviews 1

          Average Rating 5.0

          5

          30% enrolled

          $18.70

          yiyj10305235's other courses

          Check out other courses by the instructor!

          Similar courses

          Explore other courses in the same field!