강의

멘토링

커뮤니티

Programming

/

Back-end

What Interview Officials at Kakao Tell You: Distributed Environment You Must Know

This course explores microservice architecture and distributed environments not as a simple list of technologies, but from a 'design perspective' required in actual work and interviews. Starting from the differences between monolithic and MSA, it progressively covers incremental migration strategies, modular monoliths, clean architecture and hexagonal architecture, clearly explaining why each choice is necessary and the trade-offs involved. Through hands-on practice, you can directly verify the intent of the structure and learn about core issues inevitably encountered in distributed environments—such as data consistency, transactions, inter-service communication, and failure handling—through realistic scenarios. Based on actual questions and perspectives from Kakao interviewers, this course aims to go beyond simple knowledge acquisition and elevate your way of thinking about distributed systems to the next level.

(5.0) 7 reviews

245 learners

Level Basic

Course period Unlimited

  • Hong
JavaScript
JavaScript
Design Pattern
Design Pattern
MSA
MSA
software-design
software-design
Government-Funded Bootcamp
Government-Funded Bootcamp
JavaScript
JavaScript
Design Pattern
Design Pattern
MSA
MSA
software-design
software-design
Government-Funded Bootcamp
Government-Funded Bootcamp

What you will gain after the course

  • Design Perspective for Understanding Distributed Environments at a Glance

  • Clear criteria for deciding on MSA architecture

  • The ability to explain architectural trade-offs on your own

  • A design approach that naturally incorporates testability and scalability

  • Knowledge to confidently discuss design in interviews and practical work

How should we manage ACID in an MSA environment??🤔

  • The content below is from an actual conversation.

😄 Hong : I've been thinking about lectures lately - what do you think about covering MSA, you know, distributed environments in general?

😁 Kakao Interviewer (Developer) : Suddenly?? Why??

😄 Hong : It's tough to get a job these days... Even if you pass the document screening, many people fail at the interview stage, so I thought it might help those preparing if we cover theoretical aspects and approach things from a broader design perspective

😁 Kakao Interviewer (Developer) : Hmm... As I was preparing for interviews, I noticed that while people's specs and knowledge keep growing, it's a bit disappointing that they're stuck only within what they know, you know??

😁 Kakao Interviewer (Developer) : From this perspective, I think it would be good to cover various topics about distributed environments

😁 Toss Developer : I'm not an interviewer so I don't know about that part, but looking at new people coming in, the majority of cases are those who only know the common knowledge that everyone knows, without really understanding why we use this, what the pros and cons are, and such. They just think, "Isn't this just how you do it??"

😁 Toss Developer : There were many people who only explained it like this. That part is a bit disappointing.

😁 Kakao Interviewer (Developer) : Then I'll try making it with Hong. Since I haven't let go of being an interviewer yet, I think I can provide various perspectives when it comes to conducting interviews.

😄 Hong : Sounds good!! Then I'll prepare everything overall and let you know.

Are you using MSA, or a distributed environment?? 🤔

How do you write test code in the relationships between numerous service applications, and what concepts do you introduce to solve problems in distributed environments? Or how will you proceed with the migration process from monolithic to distributed environments?

In reality, you cannot solve these various problems from such a broad perspective by learning just one technique or pattern. In a real-world environment where there is no single correct answer, you need to learn about various problems and topics, and know how to consider and combine the trade-offs accordingly. Through these combination methods and approaches, what could be the way to ensure scalability and resilience even in distributed environments?

I hope you'll explore these various topics and their trade-offs while watching this course. 🚀

Features of This Course

📌 A course structured based on the know-how and interview questions of an actual Kakao interviewer (developer)

  • The content is structured based on actual interview questions asked by Kakao interviewers (developers). Rather than simply providing fixed answers to interview questions, it teaches you the trade-offs and pros and cons from a distributed systems perspective.

📌 Course structure with numerous diagrams, lecture summaries, and hands-on coding practice

  • This is not just a lecture that explains things with words alone, but one that enhances learning efficiency by providing actual code, diagrams, sequence diagrams, and additionally simple summary files of the lecture content.


📌 The shortcut from junior to senior..! Distributed environments

  • Through this course, you can clearly learn what problems exist in MSA or distributed environments, how to solve them accordingly, and what advantages and disadvantages they have.


I recommend this for: 👨‍🏫

🎯 Non-CS major developers who are curious about large-scale architecture design

  • Those who want to view services from an architectural perspective, not just as developers implementing business logic through programming

🎯 Those who have heard about MSA but didn't know the specific design methods

  • Those who are curious about the design approach of MicroService Architecture and its trade-offs

🎯 Backend developers at startups/large companies considering service scaling and distributed environments

  • Developers who are considering service architecture structure and database scaling as their service grows

🎯 Beyond simple microservices, developers who want to design complex distributed architectures

  • Those who are curious about complex distributed architectures implemented through MicroService Architecture and want to get a glimpse of the design process

Background of the Kakao developer (interviewer) who prepared this course 🤭

I'm Choi (abbreviated name), a backend server developer with 12 years of experience, currently working on server development at Kakao and also serving as an interviewer.

I connected with Hong at a Conference in the past, and since the middle of my teaching activities, we've been actively participating together and have created courses on various topics. Through creating these courses, conversing and communicating with various people has been very helpful in my developer career and I believe it's a time to learn diverse perspectives, so I'm striving to cover even more varied topics.

I don't think that a single credential of working at what is commonly called a large corporation proves that someone is a good developer, but I do believe it provides opportunities to experience and handle more traffic compared to typical platforms. I will always try to incorporate and share these aspects in my lectures. Thank you.

[Current] Server Developer at Kakao Headquarters

[Former] 4-year Computer Engineering major in Seoul

Notes

Practice Environment

  • I will write practice code using JavaScript.

  • Visual Studio Code is used as the IDE.

  • I used an Apple M3 Air


Recommended for
these people

Who is this course right for?

  • A developer who uses MSA but isn't confident about the architecture

  • People who get nervous whenever system design questions come up

  • Someone who is experiencing the limitations of monolithic architecture in practical work

  • For those who want to understand distributed environments through flow rather than formulas

  • Backend developers who want to take their skills to the next level

Hello
This is

5,964

Learners

391

Reviews

127

Answers

4.7

Rating

22

Courses

Introduction

I started studying development after finding it interesting while lounging around at home, and I am currently working as a platform server developer in Pangyo. I am continuing my activities as a knowledge sharer because I want to provide you with the methods I used to study, as well as the various problems and solutions you may encounter in the field.

These lectures are not created through my knowledge alone. Every lecture is made possible by those who work alongside me.

Instructor Experience

[Former] Blockchain developer for Sandbox IP

[Former] Metaverse Backend Developer

[Current] Veteran server developer based in Pangyo

Interview History

Other inquiries

  • unduck2022@gmail.com

Curriculum

All

29 lectures ∙ (6hr 27min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

7 reviews

5.0

7 reviews

  • cchoii님의 프로필 이미지
    cchoii

    Reviews 11

    Average Rating 5.0

    5

    93% enrolled

    I'm a knowledge sharer who works as both an interviewer and developer at Kakao. This time, together with Hong, I've prepared a course that introduces various perspectives on distributed environments and several patterns you can reference when structuring your projects. I've tried to incorporate as much as possible the perspectives from which I typically ask questions in interviews. Representative examples include: 1. How do you debug in a distributed environment?? 2. Please explain the patterns you know. 3. How do you conduct testing according to architecture?? If you focus on these topics, you'll find this course even more beneficial. I hope you gain many insights. Thank you!

    • jhong
      Instructor

      Let's prepare another more informative lecture next time haha Thank you~~

  • warna97725274님의 프로필 이미지
    warna97725274

    Reviews 3

    Average Rating 5.0

    5

    90% enrolled

    I really enjoyed this very informative lecture. The more I reflect on the content, the more I realize how beneficial it is and how many perspectives I can gain from this lecture. Additionally, you've organized various practical materials and theoretical resources, so I feel very fortunate to have been able to watch such a great lecture on Inflearn.

    • jhong
      Instructor

      Hello warna, thank you for leaving this review. I will continue to provide more beneficial lectures and help broaden your insights. Have a great day!

  • dkim72409371님의 프로필 이미지
    dkim72409371

    Reviews 8

    Average Rating 5.0

    5

    31% enrolled

    • arton7278님의 프로필 이미지
      arton7278

      Reviews 4

      Average Rating 4.3

      5

      62% enrolled

      • hsk7413388님의 프로필 이미지
        hsk7413388

        Reviews 12

        Average Rating 5.0

        5

        62% enrolled

        $50.60

        Hong's other courses

        Check out other courses by the instructor!

        Similar courses

        Explore other courses in the same field!