강의

챌린지

멘토링

로드맵

커뮤니티

“Mastering the Flow of Execution in the Era of ‘AI Clicks’: Multithreading and Concurrency Design”

In an era when AI writes code, developers need the ability to determine why that code becomes slow and where it can go wrong. From the basics of CPUs and threads to the principles behind running multiple tasks simultaneously, you’ll build your understanding step by step through hands-on exercises, detailed notes, and simulations. Based on this foundation, you’ll learn to identify the causes of performance problems and develop the fundamentals for designing fast, reliable systems.

23 learners are taking this course

Level Basic

Course period Unlimited

JavaScript
JavaScript
Python
Python
Node.js
Node.js
Network
Network
Computer Architecture
Computer Architecture
JavaScript
JavaScript
Python
Python
Node.js
Node.js
Network
Network
Computer Architecture
Computer Architecture

What you will gain after the course

  • You can explain in your own words the relationship between processes, threads, CPUs, registers, and context switching.

  • You can distinguish between code that waits for external operations and code that directly uses the CPU, and choose an appropriate processing method.

  • You can explain why async/await does not automatically delegate lengthy computations to another thread.

  • You can connect worker creation, messages, errors, and termination, and distinguish between task success and resource cleanup.

  • You can implement data flow between the main thread and workers using `workerData`, `parentPort`, and `MessageChannel`.

  • You can understand the differences between data copying, ownership transfer, and memory sharing, and choose the appropriate transfer method for the task.

  • You can divide the calculation range among multiple workers and compare the sequential execution with all the results to verify omissions and duplicates.

  • You can implement a worker pool and task queue and design processing rules for preparation, assignment, failure, and termination.

  • You can control messaging costs and the queue’s memory usage by applying batch size and submission volume limits.

  • You can interpret performance measurements by distinguishing between elapsed time, CPU time, and utilization metrics.

  • You can measure the number of concurrent requests, throughput, and response latency distribution, and compare practice HTTP servers that use workers.

  • You can distinguish between the role of Node.js’s internal libuv worker pool and that of a custom JavaScript worker pool.

  • You can understand the relationship between ArrayBuffer, SharedArrayBuffer, TypedArray, and Buffer, and work with byte ranges and ownership.

  • You can reproduce race conditions and explain the roles of atomic operations, conditional waiting, mutexes, and semaphores, as well as the causes of deadlocks.

  • You can distinguish the execution contexts of the event loop, Promise, and nextTick, and write code that gives other requests a chance to execute.

  • 1. You can review the parallel-processing code proposed by the AI based on its execution location, data boundaries, correctness, failure handling, and measurement conditions.

Recommended for
these people

Who is this course right for?

  • Those who have used Node.js but find it difficult to explain what a thread is

  • For those wondering why the server slows down even when using async/await

  • Those experiencing delays in other users’ lightweight requests due to heavy computations

  • For those who find it difficult to identify the cause when response times are slow despite low CPU usage

  • For those who have created a worker but aren’t sure how to connect message, error, and termination handling

  • Those who want to find out why increasing the number of workers does not improve performance

  • For those who want to manage the queue and memory usage when many tasks pile up

  • For those who are unsure whether the data passed to the worker is copied or shared

  • For those who want to understand why shared counters or state values occasionally become incorrect

  • Those who want to interpret performance metrics and load test results based on sound evidence.

  • Those who want to understand the execution order of the event loop, callbacks, and Promises based on principles rather than memorization

  • Those who want to develop the ability to directly verify the design and operation while using AI-generated code

Need to know before starting?

  • It would be good if you could at least read JavaScript variables, conditional statements, loops, functions, arrays, and objects.

  • Experience running files in Node.js and using simple servers or asynchronous code is recommended.

  • Familiarity with callbacks, Promises, and async/await will help with understanding, while thread and operating system concepts are explained from the basics.

Hello
This is nhcodingstudio

Inflearn Verified

Career Verified

4,323

Learners

266

Reviews

76

Answers

4.8

Rating

24

Courses

Hello, welcome to Woori Neighborhood Coding Studio!

Our Town Coding Studio is an educational group founded by developers who majored in Computer Science at leading North American universities such as Carnegie Mellon, Washington, Toronto, and Waterloo, and gained practical experience at global IT companies like Google, Microsoft, and Meta.

It initially began as a study group created by computer science majors in the U.S. and Canada to study and grow together. Although we were at different universities and in different time zones, the time we spent solving problems together and learning from one another was very special, which naturally led to this thought.

“What if we shared the way we studied with others exactly as it is?”

That question was the starting point of Our Neighborhood Coding Studio.

Currently, about 30 incumbent developers and computer science students are in charge of their respective fields of expertise, directly designing and teaching a curriculum that spans from introductory to practical levels. Beyond simple knowledge transfer, we provide an environment where you can learn from a real developer's perspective and grow together.

“Real developers must learn from real developers.”

We systematically cover the entire process of web development from start to finish, but we don't stop at theory; we help you build your skills through practice and practical-oriented feedback.
Our philosophy is to contemplate and lead the growth of each and every student together.

🎯 Our philosophy is clear.
"True learning comes from practice, and growth is completed when we are together."

From beginners starting development for the first time to job seekers looking to enhance their practical skills and youth exploring their career paths,
Neighborhood Coding Studio aims to be everyone's starting point and a reliable companion walking alongside you.

Now, don't struggle alone.
Neighborhood Coding Studio will be with you on your journey of growth.


Welcome to Neighborhood Coding Studio!

Neighborhood Coding Studio was founded by a team of developers who studied computer science at top North American universities such as Carnegie Mellon, the University of Washington, the University of Toronto, and the University of Waterloo, and went on to gain hands-on experience at global tech companies like Google, Microsoft, and Meta.

It all began as a study group formed by computer science students across the U.S. and Canada, created to grow together by sharing knowledge, solving problems, and learning from one another.
Though we were attending different schools in different time zones, the experience was so meaningful that it led us to one simple thought:

“What if we shared this way of learning with others?”

That thought became the foundation of Neighborhood Coding Studio.

Today, we are a team of around 30 active developers and computer science students, each taking responsibility for their area of expertise—designing and delivering a curriculum that spans from foundational knowledge to real-world development.
We’re not just here to teach—we’re here to help you see through the lens of real developers and grow together.

“To become a real developer, you must learn from real developers.”

Our courses take you through the entire web development journey—from start to finish—focused on hands-on practice, real-world projects, and practical feedback.
We care deeply about each learner’s growth and are committed to supporting your path every step of the way.

🎯 Our philosophy is simple but powerful:
"True learning comes from doing, and true growth happens together."

Whether you're just getting started, preparing for your first job, or exploring your future in tech,
Neighborhood Coding Studio is here to be your launchpad—and your trusted companion on the journey.

You don’t have to do it alone.
Let Neighborhood Coding Studio walk with you toward your future in development.

More

Curriculum

All

44 lectures ∙ (12hr 42min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

Not enough reviews.
Please write a valuable review that helps everyone!

nhcodingstudio's other courses

Check out other courses by the instructor!

Similar courses

Explore other courses in the same field!

Limited time deal

$42,900.00

70%

$110.00