강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

etc. (Programming)

First Steps in System Design: Designing Backend Architecture That Stands Out in Interviews

Beyond basics like API design, CRUD implementation, and JWT authentication, all the way to backend architecture design! This is an introductory system design course to help you build 'your own backend architecture' that you can confidently discuss in interviews.

(4.9) 15 reviews

238 learners

  • mindlantern
시스템-디자인
아키텍쳐
개념강의
백엔드이해하기
Architecture
backend
software-design
system-design
Interview

Reviews from Early Learners

What you will learn!

  • Backend System Design

  • System Architecture

  • Large-Scale System Design Trade-offs

  • How to do a project that stands out in an interview

First Steps in System Design 🚶🏻‍♀️

Beyond implementing features, this is a stepping stone to becoming a backend developer who knows how to design.


" I clearly did the project, but why do I have nothing to say during the interview? 🤔 "

When many backend job seekers talk about their project experiences,
This will focus on API design and CRUD-centric function implementation .
But what the interviewer really wants to know is
It is your own judgment and consideration as to ' why it was designed that way ', not ' how it was implemented '.


This course is designed for job seekers who have no experience in backend architecture design .
When designing a large-scale system, what should be the goal , what components should it consist of,
And it covers the entire design flow step by step, up to what architecture can actually be developed.

Through this lecture, you will be able to confidently explain yourself in an interview.
Let's work together to complete a project with your own design .


#System Design #Architecture Design #Backend

🌟 Course Features

📌 So that even beginners can easily understand!

  • From the four core goals of system design to the major components and architectural concepts that make up the backend system,
    We explain system design at a beginner's level so that you can quickly get a feel for it.

📌 The ability to say, 'Why did you choose this technology?'

  • Beyond simple functional implementation, you'll learn about technology selection and architecture design processes that consider tradeoffs.
    Create a design rationale that you can confidently explain in an interview.

📌 Design sense applicable to actual projects!

  • Chapter 16 introduces how to create a project that stands out in interviews, and by following the practical missions provided in each section, you can personally consider and design a backend architecture suitable for your own project.

🙋 Recommended for

I want to quickly go over the basics of system design.


About backend system design
For those who want to quickly organize concepts and draw the big picture

I want to work on a project that will demonstrate my technical depth for employment.


Beyond simple functional implementation,
Anyone who wants to create a project that can explain the reason for the design and the process of selecting technology.

I'm a new developer and I have no experience designing systems yet.


Those who want to understand the goals and components of system design and develop the ability to design their own architecture.



📖 After taking the class

  • You will understand four core goals for designing large-scale backend systems .

  • Servers, DBs, caches, message queues, load balancers, service registries, batch & streaming processing, etc.
    You will learn about the role and necessity of the core components that make up the backend architecture.


  • Learn the fundamental concepts and key tradeoffs (e.g., consistency vs. availability) to consider when designing a system.

  • You will learn about major backend architecture styles and architectural design methods through example projects.

  • Job seekers working on backend development projects can design their own architecture based on lecture content and practical missions.

Learn these things

Section 1. Why Learn System Design?


We explore what system design is and why it has become especially important for backend developers recently .

This is the first step toward becoming a developer who can clearly articulate design reasons and technical judgments, rather than simply implementing them.

Section 2. Four Core Goals of System Design


Understand the four core goals of system design (reliability, performance, availability, and scalability) and learn how to apply them to actual project design.



Section 3. Key System Components and Tradeoffs


We introduce the main components frequently used in creating large-scale backend systems and explain in which cases they are used with real-world examples .

It goes beyond simply introducing components, and also covers the issues and trade-offs that need to be considered when introducing each component .

Section 4. Designing and Describing Your Own Architecture


This step-by-step guide will walk you through how to create a backend project that will stand out in interviews . We'll explain each step in detail: how to plan, implement, and refine the project.

Learn about different backend architecture styles , their pros and cons , and how to choose one .

We'll explore how you can incrementally improve your architecture by designing example projects together in the Developer Q&A Community.

Things to note before taking the course

Learning Materials

  • We provide a PDF of the lecture slides (350 pages).

Player Knowledge and Precautions

  • If you have basic backend development experience, you will find the course easier to follow.
    For example, it would be helpful if you had experience with technologies such as:

    • Experience developing API servers using web frameworks

    • Data storage using relational databases (RDB) or NoSQL DBs

    • Understanding the basic concepts of HTTP and networks

  • This course is a theory-oriented course that teaches system design concepts and design flow.
    So Redis, Kafka, Spring, Nginx, etc.
    It does not cover installation or usage of specific technologies, nor does it cover code implementation practices.

Recommended for
these people

Who is this course right for?

  • Backend job seeker who has implemented basic features but never designed architecture

  • Job seeker aiming to boost employability via projects contemplating large-scale system tradeoffs.

  • A new backend developer who has to design system architecture for the first time at the company

Need to know before starting?

  • Basic understanding of HTTP and RESTful API is a plus.

  • Experience building a simple CRUD server with web frameworks (Spring, Express ...) will be helpful for your learning.

  • If you have DB-related knowledge like SQL and relational databases (RDB), you can follow the lecture better.

Hello
This is

238

Learners

15

Reviews

2

Answers

4.9

Rating

1

Course

안녕하세요, 개발자 성장랜턴입니다.
국내 IT 대기업에서 근무 중이며, 누구나 개발자가 되어 상상하는 것을 직접 만들 수 있는 세상을 꿈꾸고 있습니다.

현업에서의 고민과 실제로 쓰이는 기술들을 처음 배우는 분들도 쉽게 이해할 수 있도록 전하고 싶습니다.
배우고 성장하는 과정을 좋아하는 사람으로서, 제 강의를 듣는 분들도 함께 성장하는 즐거움을 느낄 수 있으면 좋겠습니다.

 

이메일: mindlantern.studio@gmail.com

Curriculum

All

24 lectures ∙ (4hr 59min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

15 reviews

4.9

15 reviews

  • sungho kang님의 프로필 이미지
    sungho kang

    Reviews 17

    Average Rating 3.6

    Edited

    5

    70% enrolled

    아키텍처로 일하게 된지 3년정도 흘러가는 것 같습니다. 도메인(제조서비스)에 따라서 진행하다보니 늘 비슷한 시각으로 시스템 디자인을 행하는 것 같아서 초심으로 돌아가는 마음으로 잘보고 있습니다. 특히 이커머스, 풀필먼트 같은 서비스기반 아키텍처는를 설계해본적이 없었는데 비슷한 설명을 해주셔서 도움이 많이 되었습니다. 강사님께서 추가서비스로 이기종 데이터 통합 실시간 처리 부분(멀티스레딩, GPU 가속 등도 요즘 제조업(에너지) 부분도 많이 쓰고 있어서 서비스로 추가 강의 만들어주시면 좋을 것 같습니다. 그리고 요즘 다들 관심이 많은 벡터 데이터베이스에 대한 설계 부분도 기회가 된다면 업로드 해주시면 취준생분들께 도움이 많이 될 것 같아요. 요즘은 정말 제조업 기반 SI 그룹사들도 신입인데 신입같지 않은 취준생을 요구하셔서요. 감사합니다.

    • 성장랜턴
      Instructor

      sungho kang님, 좋은 수강평 남겨주셔서 감사합니다. 이미 아키텍트로서 설계 경험이 있으신데도 강의가 도움이 되었다니 다행이네요😊! 말씀해주신 이기종 데이터 통합 실시간 처리는 정말 좋은 주제이지만, 이번 입문 강의에서 다루기에는 다소 난이도가 있을 것 같아서 더 심화된 내용을 다룰 후속 강의에 포함하는 방향으로 검토해보겠습니다. 벡터 데이터베이스나 AI 모델을 포함한 아키텍처 설계는 요즘 취준생분들이 프로젝트에서 많이 경험하시는 부분일 것 같아 추가 강의로 제작해보겠습니다! 시간내어 좋은 피드백 남겨주셔서 정말 감사합니다.

  • dt10002님의 프로필 이미지
    dt10002

    Reviews 2

    Average Rating 5.0

    Edited

    5

    100% enrolled

    처음 수강평 적습니다. 취준생 입장에서 요즘 AI의 발전으로 코드 구현은 어느 정도 해결되는 영역으로 넘어갔다고 생각합니다. 그럼, 뭐가 중요할까에 고민하다가 "아 이제는 시스템을 잘 설계하는 것이 중요하겠구나, 시스템 설계 의사소통이 중요하겠구나"라는 생각이 문득 들었습니다. 그래서 강의에서 소개해 주신 "대규모 시스템 설계 기초 1"편을 읽다가 뭔가 실무자 관점에서 설명해 주는 강의가 있으면 좋겠다는 생각이 드는 찰나에 이 강의를 발견하여 바로 구매했던 것 같습니다. 개인적으로 큰 흐름을 잡는 데 정말 많은 도움이 되었습니다. 사용해 본 적 없고, 들어만 봤던 기술들에 대해서도 "아, 이게 이런 상황일 때 사용할 수 있겠구나" 하면서 배경지식을 넓힐 수 있었고, 실제 프로젝트 초기 단계에서 고려해야 할 부분에 대해서 많이 배울 수 있었습니다. 왜 이제야 나타나신 건가요…. 그뿐만 아니라, 백엔드 개발자로서 면접에서 어떻게 프로젝트를 어필할 수 있는지도 배울 수 있었습니다. 제가 문서화를 진짜 귀찮아하는데 앞으로 열심히 트러블 슈팅한 내용을 문서화하도록 하겠습니다. 정말 좋은 강의 감사합니다. ppt 자료도 너무 읽기 좋았고, 교안 디자인도 너무 이뻐서 마음에 듭니다! 다음에 또 어떤 강의를 기획하고 계신지는 모르겠지만, 믿고 수강하도록 하겠습니다 :>

    • 성장랜턴
      Instructor

      dt10002님, 정성스러운 수강평 남겨주셔서 너무 감사드립니다! 제가 개발을 하며 쌓아온 경험들이 누군가에게는 도움이 될 수 있겠지라는 생각으로 강의를 만들게 되었는데 이렇게 실제로 도움이 되었다는 후기를 읽으니 너무 뿌듯하고 힘이 나네요😆 앞으로도 이 강의가 더 많은 분들에게 실질적인 도움이 될 수 있도록 계속해서 발전시켜 나가겠습니다. dt10002님의 앞으로의 취준과 시스템 디자인 여정도 진심으로 응원하겠습니다! 공부하시다가 궁금한 점이 생기면 언제든 편하게 질문 남겨주세요. 감사합니다!

  • 이민선님의 프로필 이미지
    이민선

    Reviews 6

    Average Rating 5.0

    5

    30% enrolled

    • 박철현님의 프로필 이미지
      박철현

      Reviews 24

      Average Rating 5.0

      5

      55% enrolled

      진짜 지리네요....

      • 우주인님의 프로필 이미지
        우주인

        Reviews 28

        Average Rating 5.0

        5

        100% enrolled

        시스템을 어떻게 잘 만들지에 대한 고민을 많이 하는데 기본적인 내용과 이후 어떻게 공부를 하면 좋을지에 대한 방향성을 잡는데 도움이 되었습니다 유익한 강의였습니다

        $34.10

        Similar courses

        Explore other courses in the same field!