Skip to content

villainscode/tech-interview-for-junior

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

19 Commits
ย 
ย 
ย 
ย 

Repository files navigation

tech-interview-for-junior

The technical interview knowledge that a junior backend developer should possess.

Table of Contents

Table of contents generated with markdown-toc

์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž ์ธํ„ฐ๋ทฐ ๊ฐ€์ด๋“œ

2024.04.20 ํ•œ๋น›๋ฏธ๋””์–ด ์„ธ๋ฏธ๋‚˜์ž๋ฃŒ ์ž…๋‹ˆ๋‹ค. ์‹ ์ž… ๋ฐ ์ฃผ๋‹ˆ์–ด๋ฅผ ๋Œ€์ƒ์œผ๋กœ ํ•˜์˜€๊ณ , ๋” ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ฑ…(๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ๋ฉด์ ‘ ๋…ธํŠธ ๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

์†Œ๊ฐœ

book.jpeg

Yes24 - https://www.yes24.com/Product/Goods/125554439

KyoboBooks - https://product.kyobobook.co.kr/detail/S000212738756

์ธํ”„๋Ÿฐ ๊ฐ•์˜

19๋…„์ฐจ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž

  • ์นด์นด์˜ค ๋น„์ฆˆํŒŒํŠธ๋„ˆํ”Œ๋žซํผ ๊ฐœ๋ฐœ ๋ฆฌ๋“œ

๊ฒฝ๋ ฅ

  • KAKAO Corp (2018 ~ Now, Leader)
  • LG Fashion (2017 ~ 2018, Senior Manager)
  • Coupang (2013 ~ 2017, Sr.Software Engineer, L5)
  • Freelance Developer (2008 ~ 2013)
    • Samsung Electronics OSP 2.5, AA, Manager
    • SK Telecom T-Gate, AA/TL, Manager
    • GS Homeshopping E-Commerce Platform Developement, developer

Git

Contact

์ฑ… ์†Œ๊ฐœ

์ฑ…์„ ์ง‘ํ•„ํ•œ ์ด์œ 

  • ์ง์ ‘ ์ฑ„์šฉ์„ ํ•ด์•ผ ํ•˜๋Š” ํ™˜๊ฒฝ์—์„œ ์„œ๋ฅ˜ ๊ฒ€ํ† ์™€ ๊ธฐ์ˆ  ๋ฉด์ ‘์— ์ฐธ์—ฌํ•ด๋ณด๋‹ˆ ์ค€๋น„๊ฐ€ ๋ฏธํกํ•œ ์ง€์›์ž๋“ค์ด ๊ฝค ๋งŽ์ด ์กด์žฌํ•จ.
  • ์ƒ์œ„๊ถŒ ๋Œ€ํ•™์„ ์กธ์—…ํ•˜๊ณ  ๊ฝค ํฐ ๊ธฐ์—…์—์„œ ์ผ์„ ํ–ˆ์œผ๋‚˜ ๋ณธ์ธ์„ ์ž˜ ํฌ์žฅํ•˜์ง€ ๋ชปํ•˜๋Š” ์ง€์›์ž ํ˜น์€ ๊ธฐ์ˆ ์  ์„ฑ์žฅ์˜ ์ง„๋กœ๋ฅผ ์žก์ง€ ๋ชปํ•ด ๊ณ ๋ฏผ์ธ ์ง€์›์ž๋“ค์„ ๋ณด๋ฉฐ โ€œ์™œ?โ€ ๋ฅผ ๊ณ ๋ฏผํ•˜๊ธฐ ์‹œ์ž‘
  • ์–ด๋–ค ๋ถ€๋ถ„์—์„œ ์ทจ์—…/์ด์ง์— ๋Œ€ํ•œ ๊ฒฝ์Ÿ๋ ฅ์„ ๊ฐ–์ถ”๊ธฐ ์œ„ํ•œ ๊ฐ€์ด๋“œ๋ฅผ ํ•ด์ค˜์•ผ ํ• ๊นŒ?๋ฅผ ๊ณ ๋ฏผ
  • ๋‚ด๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์ž๋ฃŒ๋กœ ์ถฉ๋ถ„ํžˆ ๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ์„๊ฑฐ ๊ฐ™๋‹ค๊ณ  ๊ฒฐ๋ก ์„ ์–ป๊ณ  ์ฑ…์„ ์“ฐ๊ธฐ ์‹œ์ž‘
    • ์ดˆ๊ธฐ์—๋Š” ์ฑ… ๋ณด๋‹ค๋Š” ์˜คํ”ˆ์†Œ์Šค์ฒ˜๋Ÿผ ์˜จ๋ผ์ธ ํผ๋ธ”๋ฆฌ์‹ฑ์„ ๊ธฐํšํ•˜์—ฌ ์ž๋ฃŒ๋ฅผ ์ทจํ•ฉํ•˜๊ธฐ ์‹œ์ž‘
  • ์ตœ๋Œ€ํ•œ ์‹คํ–‰ ๊ฐ€๋Šฅํ•˜๊ณ , ํ˜„์‹ค์ ์œผ๋กœ ์ ‘๊ทผํ•˜๊ธฐ ์‰ฌ์šด ๋ฐฉ๋ฒ•์„ ์ œ์‹œํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•จ

์ทจ์—…/์ด์ง์„ ์œ„ํ•œ ์ค€๋น„

์ทจ์—…/์ด์ง์„ ์œ„ํ•ด์„œ ์–ด๋–ค ๋ถ€๋ถ„์„ ์ค€๋น„ํ•ด์•ผ ํ• ๊นŒ?

  • ์„œ๋ฅ˜ ์ž‘์„ฑ

    • ์˜คํ”„๋ผ์ธ ์ œ์ถœ์šฉ ์„œ๋ฅ˜๋Š” ํ•ญ์ƒ ๊ฐ€์ง€๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค.
    • ์˜จ๋ผ์ธ์€ ๋งํฌ๋“œ์ธ์„ ๊ธฐ์ค€์œผ๋กœ ๋‘์„ธ๊ณณ ๋“ฑ๋กํ•ด ๋†“๋Š”๋‹ค.
    • ํ•„์ˆ˜ ๊ฐœ์ธ์ •๋ณด๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€๋Š” ๊ณต๊ฐ„ ๋‚ญ๋น„/์‹œ๊ฐ„ ๋‚ญ๋น„
    • ์ง€์› ๋ถ„์•ผ ๋ช…์‹œ
      • ์ง€์› ๋ถ„์•ผ์˜ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋‹ค๊ฑฐ๋‚˜ ์ด๋ฏธ ๊ฒฝํ—˜ํ•œ ๋„๋ฉ”์ธ์ด ์žˆ๋‹ค๋ฉด ์œ ๊ด€ ๋ถ€์„œ์— ์ง€์›ํ•˜๋Š” ํŽธ์ด ์ข‹๋‹ค.
      • ์ง€์› ๋™๊ธฐ
      • ๊ด€์‹ฌ์žˆ๊ฒŒ ๊ณต๋ถ€ํ•˜๊ณ  ์žˆ๋Š” ๋ถ„์•ผ
      • ํšŒ์‚ฌ์— ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ๋Š” ๋ถ€๋ถ„
    • ์Šคํ‚ฌ์…‹์„ ์ผ๋ชฉ์š”์—ฐํ•˜๊ฒŒ ์ •๋ฆฌํ•˜์ž. (ํ•˜๋‹จ ์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž ์Šคํ‚ฌ ์…‹ ์˜ˆ์‹œ ์ฐธ๊ณ )
      • ์Šคํ‚ฌ์…‹์˜ ์ˆ™๋ จ๋„๋ฅผ ํ‘œ๊ธฐํ•˜์ž.
      • ๋ฉ”์ด์ € ๊ธฐ์ˆ ๋งŒ ๋„ฃ๊ณ  ๋‚˜๋จธ์ง€๋Š” ๊ฒฝ๋ ฅ ๊ธฐ์ˆ ์„œ์˜ ํ”„๋กœ์ ํŠธ ์ˆ˜ํ–‰ ๋‚ด์—ญ์— ๋„ฃ๋„๋ก ํ•œ๋‹ค.
    • ๊ต์œก์‚ฌํ•ญ๋„ ๊ฐ€๊ธ‰์  ์ด๋ ฅ์— ๋„์›€์ด ๋  ๋งŒํ•œ ๊ณณ์ด๋ผ๋ฉด ํ‘œ๊ธฐํ•˜๋Š”๊ฒŒ ๋‚ซ๋‹ค.

    แ„€แ…ญแ„‹แ…ฒแ†จ.jpeg

  • ํฌํŠธํด๋ฆฌ์˜ค / ๊ฒฝ๋ ฅ ๊ธฐ์ˆ ์„œ

    • ๊ฒฝ๋ ฅ์‚ฌํ•ญ์€ ํ•œ ๋ˆˆ์— ๋ณด์ด๋„๋ก ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ ๋Š”๋‹ค.

    • ๋ˆˆ์— ๋„๋Š” ์ด๋ ฅ์„œ

      • ์˜คํ”ˆ ์†Œ์Šค ๊ด€๋ จ ํ™œ๋™
      • ํ…Œํฌ ๊ด€๋ จ ์„ธ๋ฏธ๋‚˜์— ์—ฐ์‚ฌ๋กœ ์ฐธ์—ฌํ•œ ์ด๋ ฅ
      • ์ฑ… ์ง‘ํ•„, ๋ฒˆ์—ญ์ด๋‚˜ ํŒ€ ํ”„๋กœ์ ํŠธ๋กœ ์„ฑ๊ณผ๋ฅผ ๋‚ด์—ˆ๋˜ ๊ฒฝํ—˜
        • ๋Œ€์ฒด๋กœ ๋งŽ์€ ์‹ ์ž… ์ง€์›์ž๋“ค์€ ํŒ€ ํ”„๋กœ์ ํŠธ ์œ„์ฃผ์ด๊ฑฐ๋‚˜ ๊ฐœ์ธ ํ”„๋กœ์ ํŠธ ์œ„์ฃผ
          • ๋ฌด์—‡์„ ํ–ˆ๋Š”์ง€์™€ ์–ด๋–ค ์—ญํ• ์„ ํ–ˆ๋Š”์ง€๊ฐ€ ์ค‘์š”
      • ์ž˜ ์ •๋ฆฌ๋œ ๋ธ”๋กœ๊ทธ๋‚˜ Github
        • ๊ทธ๋Ÿฌ๋‚˜ ์ฑ—GPT์˜ ๋“ฑ์žฅ์œผ๋กœ ๋ธ”๋กœ๊ทธ๋„ ๋ณต๋ถ™์ด ๋งŽ์•„ ์ ์  ์ž๋ฆฌ๋ฅผ ์žƒ์–ด๊ฐ€๊ณ  ์žˆ๋‹คโ€ฆ.
        • ๋ธ”๋กœ๊ทธ๊ฐ€ ์—†๋‹ค๋ฉด ์ฐจ๋ผ๋ฆฌ Github๋ฅผ ํฌํŠธํด๋ฆฌ์˜ค ์ฒ˜๋Ÿผ ๊พธ๋ฉฐ๋ณด์ž.
        • https://github.com/haru-note/tech-interview
        • https://github.com/goldbergyoni/nodebestpractices
    • ์„œ๋น„์Šค ์šด์˜ ์ค‘์˜ ๋ฌธ์ œ ํ•ด๊ฒฐ๊ณผ ์„ฑ๊ณผ

    • ํฌํŠธํด๋ฆฌ์˜ค ์ •๋ฆฌ

      • ๊ฐœ๋ฐœ ๋ชฉํ‘œ์™€ ์˜๋„
      • ์ฃผ์š” ๊ธฐ๋Šฅ
      • ์‹œ์Šคํ…œ ๊ฐœ์š” (์‹œ์Šคํ…œ ๋””์ž์ธ, ์•„ํ‚คํ…์ฒ˜)
      • ๋ณธ์ธ์ด ๋‹ด๋‹นํ•œ ์˜์—ญ๊ณผ ๊ธฐ์—ฌ๋„
      • ์†Œ์Šค ๋ฆฌํฌ์ง€ํ„ฐ๋ฆฌ ์ฃผ์†Œ
      • ๋‚˜๋ฅผ ์•Œ๋ฆฌ๋Š” ๊ฒƒ์„ ์–ด์ƒ‰ํ•ดํ•˜๊ฑฐ๋‚˜ ๊ฒŒ์„๋ฆฌํ•˜์ง€ ๋งˆ์„ธ์š”.
      • ํ•˜์ง€๋งŒ ์ตœ๋Œ€ํ•œ ๊ฐ„๊ฒฐํ•˜๊ฒŒ, ํ•œ ๋ˆˆ์— ๋“ค์–ด์˜ค๊ฒŒ ์ž‘์„ฑํ•˜์„ธ์š”.
      • ๋„์‹ํ™” ํ•˜์„ธ์š”.
      • ๋…ธ์…˜๋ณด๋‹ค๋Š” PDF๋‚˜ ๊ตฌ๊ธ€ Docs๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

ํšŒ์‚ฌ ์ฐพ๊ธฐ

๊ฐ€์žฅ ์ค‘์š”ํ•œ ํ•œ๊ฐ€์ง€ ์กฐ๊ฑด๊ณผ ๋‚˜๋จธ์ง€ ์–‘๋ณดํ•  ์ˆ˜ ์žˆ๋Š” ์กฐ๊ฑด์„ ๋‚˜๋ˆ ๋ณด์ž.

๋‚˜์—๊ฒŒ ๋งž๋Š” ํšŒ์‚ฌ๋Š”? ๋‚˜์—๊ฒŒ ์ ํ•ฉํ•œ ํšŒ์‚ฌ๋ฅผ ์ฐพ๋Š” ๋ฐฉ๋ฒ•

  • IT ์ „๋ฌธ ๊ตฌ์ธ/๊ตฌ์ง

  • ๊ธฐ์—…์˜ ํ‰ํŒ์ด๋‚˜ ์—ฐ๋ด‰/๋งค์ถœ ์ •๋ณด ์ฐธ๊ณ 

  • ํˆฌ์ž ์œ ์น˜ ๋‰ด์Šค๋ฅผ ํ†ตํ•œ ์„ฑ์žฅํ•˜๋Š” ํšŒ์‚ฌ ์•Œ์•„๋ณด๊ธฐ

  • ๋‰ด์Šค๋ ˆํ„ฐ ๊ตฌ๋…

  • ๋ฉ˜ํ† ๋ง, ๊ต์œก

    • ์ปคํ”ผ์ฑ—
    • ์ปค๋ฆฌ์–ด๋ฆฌ
    • ์ธํ”„๋Ÿฐ
  • ์ปค๋ฆฌ์–ด์— ํฌ์ธํŠธ๋ฅผ ์ค„๋งŒํ•œ ์˜์—ญ๋“ค, ์ง€์‹์„ ๋Œ์–ด์˜ฌ๋ฆฌ๊ธฐ ์œ„ํ•œ ๋…ธ๋ ฅ๋“คโ€ฆ

    • ๊ณ„๋‹จ์‹ ์„ฑ์žฅ

      • ์„ฑ์žฅ๊ธฐ์™€ ์ •์ฒด๊ธฐ
        • ์ •์ฒด๊ธฐ๋Š” ๋ชธ์ด ์ ์‘ํ•˜๋Š” ์‹œ๊ธฐ
        • ์ •์ฒด๊ธฐ ์ดํ›„ ํ•œ๋‹จ๊ณ„ ์ ํ”„ ์—…
        • ํ•œ ๊ณ„๋‹จ์”ฉ ์„ฑ์žฅํ•˜๋ฉฐ ์„ฑ์ทจ๊ฐ์„ ๋Š๋ผ๋Š”๊ฒŒ ์ค‘์š”
      • ๊พธ์ค€ํ•œ ์„ฑ์žฅ๋„ ๊ฐ€๋Šฅํ•˜๊ฒ ์ง€๋งŒ ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ๋…ธ๋ ฅ์— ๋Œ€ํ•œ ๋ณด์ƒ์€ ๊ณ„๋‹จ์‹์œผ๋กœ ์˜จ๋‹ค.
    • ์Šคํ„ฐ๋””

      • ๋น„ํšจ์œจ์ ์ผ์ˆ˜๋Š” ์žˆ์ง€๋งŒ ๋ณธ์ธ์˜ ๋…ธ๋ ฅ ์—ฌํ•˜์— ๋”ฐ๋ผ ๊ฐ€์žฅ ๋งŽ์ด ์ฝ”๋“œ์™€ ์ง€์‹์„ ์Œ“์„ ์ˆ˜ ์žˆ๋‹ค.

      • ์ฑ…์œผ๋กœ ๋๋‚˜๋Š” ์Šคํ„ฐ๋””๋ณด๋‹ค๋Š” ์ฝ”๋“œ์˜ ๊ตฌํ˜„๊ณผ ๊ธฐ์ˆ  ์Šต๋“์— ์ค‘์ 

      • โ€œ์šฐ๋ฆฌ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ๋‹ˆ๊นŒ ์ฝ”๋“œ๋ฅผ ๋Œ๋ ค๋ด์•ผ ํ•˜์ง€ ์•Š๊ฒ ์–ด?โ€

        • ๋™์ž‘ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์™œ? ๋ผ๋Š” ์งˆ๋ฌธ์œผ๋กœ ์ดํ•ดํ•˜๊ธฐ

        แ„’แ…งแ†ซแ„‰แ…ตแ†ฏ4.jpeg

        แ„€แ…ขแ„‡แ…กแ†ฏแ„Œแ…กแ„Œแ…ฅแ†ฏแ„€แ…ฒ.jpeg

        • ์™œ ์ด ๊ธฐ์ˆ ์„ ์ ์šฉํ–ˆ๋Š”๊ฐ€?์— ๋Œ€ํ•œ ๋‹ต๋ณ€์„ ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.
      • ์Šคํ„ฐ๋””๋ฅผ ํ†ตํ•ด ์–ป์„ ์ˆ˜ ์žˆ๋Š” ๋‘๊ฐ€์ง€

        • ๋๊นŒ์ง€ ์™„์ฃผํ•˜๋Š” ์ธ๋‚ด์‹ฌ๊ณผ ์„ฑ์‹คํ•จ (๊พธ์ค€ํ•จ)
        • ๊ณต๋ถ€ํ•œ ๊ฒƒ์„ ์ •๋ฆฌํ•˜๋Š” ๋…ธํ•˜์šฐ ํ„ฐ๋“ (์ง€์‹ ์ •๋ฆฌ)
          • ๋ฌธ์„œ๋Š” ๋‚จ์ด ์•Œ์•„๋ณผ ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.
        • ์Šคํ„ฐ๋”” ์˜ˆ์‹œ
          • ๋ชฝ๊ณ DB ํŒŒํ—ค์น˜๊ธฐ (๋„์„œ ใ€ŽReal MongoDBใ€ ์™„๋… ๋ฐ ๋ฐœํ‘œ ์ž๋ฃŒ ์ •๋ฆฌ)
          • ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ Go ์Šคํ„ฐ๋”” (Go๋ฅผ ์ด์šฉํ•œ ๊ธฐ์ดˆ ๋ฌธ๋ฒ•๊ณผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœํ•ด๋ณด๊ธฐ)
          • AWS+Spring Boot 3.0 ํ™œ์šฉ (์ž๋ฐ” ์–ธ์–ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์Šคํ”„๋ง ๋ถ€ํŠธ ํ™œ์šฉํ•˜๊ธฐ, AWS ๊ธฐ๋ฐ˜์˜ ๋ฐฑ์—”๋“œ ์„œ๋ฒ„ ๊ตฌ์ถ•ํ•ด๋ณด๊ธฐ)
          • Docker์™€ Kubernetes ํŒŒํ—ค์น˜๊ธฐ (์ปจํ…Œ์ด๋„ˆ ์ธํ”„๋ผ ํ™˜๊ฒฝ ๊ตฌ์ถ•๊ณผ ๋ฐฐํฌ, ์šด์˜)
        • ์‹ ์ž…์œผ๋กœ ์ง€์›ํ•œ๋‹ค๋ฉด ์•„๋ž˜์˜ ์ฃผ์ œ๊ฐ€ ์Šคํ„ฐ๋””๋กœ ์ ํ•ฉํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.
          • CS ๊ธฐ๋ณธ ์ง€์‹
          • ์ž๋ฃŒ๊ตฌ์กฐ์™€ ์•Œ๊ณ ๋ฆฌ์ฆ˜
            • ํ€ด์ฆˆ ํ’€๊ธฐ ๋ฐ ์˜จ๋ผ์ธ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ์ดˆ๊ธ‰๋ ˆ๋ฒจ ๋„์žฅ๊นจ๊ธฐ
          • ์–ธ์–ด ์ŠคํŽ™ ๊ณต๋ถ€ (๋ฌธ๋ฒ•๊ณผ ์ฝ”๋“œ ํ™œ์šฉ ์Šค๋‹ˆํŽซ ์ •๋ฆฌ)
          • ํ”„๋ ˆ์ž„์›Œํฌ ๋œฏ์–ด๋ณด๊ธฐ or ํ™œ์šฉํ•ด์„œ ํ”„๋กœ์ ํŠธ ๋งŒ๋“ค๊ธฐ
      • ๋‚ด ๊ธฐ์ˆ ์  ์‹œ์•ผ๋ฅผ ๋„“ํ˜€์ค„ ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ์ ํŠธ๋กœ ์‹œ๋„ํ•˜์ž

        • ๋™์ž‘ ์›๋ฆฌ์™€ ๊ธฐ์ˆ ์  ๊ฐœ๋…์„ ํ›ˆ๋ จํ•  ์ˆ˜ ์žˆ๋Š” ์ฃผ์ œ๋ฉด ๋”์šฑ ์ข‹๋‹ค.

          - ์†Œ์…œ ๋กœ๊ทธ์ธ
          - ๋ฏธ๋‹ˆ WAS
          - ๋ฏธ๋‹ˆ HTTP ์„œ๋ฒ„
          - ๊ฐ„๋‹จํ•œ ์ฑ„ํŒ…
          - ์•Œ๋ฆผ ์‹œ์Šคํ…œ
          - ShortenURL
          - ๊ฐ„๋‹จํ•œ REST API ํ˜ธ์ถœ๊ธฐ
          - ๊ณต๊ณต์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•ด์„œ ๊ฐ€๊ณต
          

        ๋ฌด์—‡์ธ๊ฐ€ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•˜๋Š” ์‚ฌ๋žŒ์ด๋ผ๋ฉด ๋ฐ˜๋“œ์‹œ ์–ดํ•„ํ•ด์•ผ ํ•œ๋‹ค.

    • ํŒ€ํ”„๋กœ์ ํŠธ

      • ๊ฐœ์ธ ๋ณด๋‹ค๋Š” ์—ฌ๋Ÿฌ๋ช…์ด ์ง„ํ–‰ํ•˜๋Š”๊ฒŒ ํ”„๋กœ์ ํŠธ ์™„์„ฑ๋„๋ฅผ ๋†’ํž ์ˆ˜ ์žˆ๋‹ค.
      • ๊ฐœ์ธ์ ์ธ ์‚ฌ์ด๋“œ ํ”„๋กœ์ ํŠธ๋ณด๋‹ค ํŒ€์„ ๊พธ๋ ค๋ณด๊ณ  ์–ด๋–ค ๋ถ€๋ถ„์— ๊ธฐ์—ฌ ํ•˜์˜€๋Š”์ง€ ์ฐธ์—ฌํ•œ ๊ฒƒ์„ ์–ดํ•„ํ•˜๋Š” ๊ฒƒ์ด ์œ ๋ฆฌ
      • ํŒ€์›์ด๋ž€? ํ˜‘์—…์ด๋ž€? - ๊ฐœ์ธ ํ”„๋กœ์ ํŠธ๋ณด๋‹ค ํŒ€ ํ”„๋กœ์ ํŠธ๊ฐ€ ๋” ์–ดํ•„ํ•˜๊ธฐ ์ข‹๋‹ค.

์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ด€๋ จ ๊ณต๋ถ€๋ฅผ ์‹œ์ž‘ํ•˜๊ธฐ ์œ„ํ•œ ๋‹จ๊ณ„๋ณ„ ํ•™์Šต ๋กœ๋“œ๋งต.
๊ฒฐ๊ตญ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๋ฅผ ํ†ตํ•ด 1์ฐจ ํ•„ํ„ฐ๋ง์„ ํ•˜๊ฒ ๋‹ค๋Š” ์˜๋„๊ฐ€ ๊ฐ•ํ•˜๊ฒŒ ์ž‘์šฉํ•˜๋Š” ๊ด€๋ฌธ์œผ๋กœ 3๊ฐœ์›” ์ •๋„๋Š” ์ง‘์ค‘์ ์œผ๋กœ ๊ณต๋ถ€ํ•ด์•ผ ํ•œ๋‹ค.

์ฑ…์— ์ž์„ธํ•œ ๊ณต๋ถ€ ๋ฐฉ์‹๊ณผ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ์˜ˆ์ œ๋“ค์ด ์ˆ˜๋ก๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ๋ฉด์ ‘์„ ์œ„ํ•œ ์ฒซ ๊ด€๋ฌธ, ์ฑ„์šฉ์˜ ์ฒซ ํ—ˆ๋“ค๋กœ ์ œ์ผ ๋งŽ์€ ์ง€์›์ž๋“ค์ด ํƒˆ๋ฝํ•œ๋‹ค. ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์— ๋ถ€๋‹ด์„ ๋งŽ์ด ๋Š๋‚€๋‹ค๋ฉด ์•„๋ž˜์˜ ๋กœ๋“œ๋งต์„ ํ†ตํ•ด ์ ‘๊ทผํ•ด๋ณด์ž.

  • ํ”„๋กœ์ ํŠธ ์˜ค์ผ๋Ÿฌ (https://euler.synap.co.kr)

  • ๊ฐ„๋‹จํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ€ด์ฆˆ

  • ์ •๋ ฌ๊ณผ ์ž๋ฃŒ๊ตฌ์กฐ

  • ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ „๋ฌธ ์‚ฌ์ดํŠธ๋ฅผ ํ†ตํ•œ ์ง€์‹ ์Šต๋“

  • ์‹ ์ž… / ์ €์—ฐ์ฐจ์ฃผ๋‹ˆ์–ด๊ฐ€ ์•Œ์•„์•ผ ํ•  CS ์ง€์‹

    • ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ (ํ•˜๋“œ์›จ์–ด, ์†Œํ”„ํŠธ์›จ์–ด) : https://product.kyobobook.co.kr/detail/S000212650856
    • OS (์œ ๋‹‰์Šค, ๋ฆฌ๋ˆ…์Šค)
    • ๋„คํŠธ์›Œํฌ์™€ ์ธํ”„๋ผ (์„œ๋ฒ„์™€ ๋„คํŠธ์›Œํฌ, ํ†ต์‹ )
    • ์ž๋ฃŒ๊ตฌ์กฐ์™€ ์•Œ๊ณ ๋ฆฌ์ฆ˜
      • Merge Sort, Bubble Sort, Quick Sort, Heap Sort, Insertion Sort
      • Linear Search, Binary Search, DFS(Depth-First Search), BFS(Breadth-First Search)
      • Stack, Queue, Priority Queue, LinkedList, LinkedHashMap, List, Set
      • LRU (Least Recently Used), LFU (Least Frequently Used)
      • โ€ฆ ์ž๋ฃŒ๊ตฌ์กฐ ์ž๋ฃŒ๊ตฌ์กฐ
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค (SQL์„ ๊ธฐ๋ณธ์œผ๋กœ ํ•œ RDBMS์˜ ๊ตฌ์กฐ์™€ ํ™œ์šฉ)
    • ๊ธฐ์ดˆ ์ˆ˜์ค€์˜ ์‹œ์Šคํ…œ ๋””์ž์ธ
    • ER ๋‹ค์ด์–ด๊ทธ๋žจ์„ ํฌํ•จํ•œ ๊ธฐ๋ณธ ๋‹ค์ด์–ด๊ทธ๋žจ (Sequence Diagram)
  • ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ๋Œ€๋น„

  • ์‹ค์ œ ๊ธฐ์ˆ  ๋ฉด์ ‘์—์„œ ์•Œ์•„๋‘์–ด์•ผ ํ•  ์ง€์‹ (์•„๋ž˜๋กœ ๋‚ด๋ ค ๊ฐˆ์ˆ˜๋ก ์—ฐ์ฐจ๊ฐ€ ์Œ“์ด๋ฉด ์•Œ์•„๋‘์–ด์•ผ ํ•  ์ง€์‹)

    • CS, ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ž๋ฃŒ๊ตฌ์กฐ
    • CPU์™€ ๋ฉ”๋ชจ๋ฆฌ
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ํŠธ๋žœ์žญ์…˜
    • ์„œ๋น„์Šค๋ฅผ ์šด์˜ํ•˜๊ธฐ ์œ„ํ•œ ๋„คํŠธ์›Œํฌ์™€ ์ธํ”„๋ผ
    • ๋ฌธ์ œ ํ•ด๊ฒฐ (Problem Solving)
    • ๊ฐœ๋ฐœ ์–ธ์–ด (Python, Go, Java, Kotlin๋“ฑ)
    • ํ”„๋ ˆ์ž„์›Œํฌ (Spring, Django, Gin๋“ฑ)
    • ์‹œ์Šคํ…œ ๋””์ž์ธ, ์—”ํ‹ฐํ‹ฐ ์„ค๊ณ„
    • OOP์™€ ๋Œ€ํ‘œ์ ์ธ ๋””์ž์ธ ํŒจํ„ด
    • ๊ฐœ๋ฐœ ์ „๋ฐ˜์— ๊ฑธ์นœ Software Engineering
    • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์žฅ์•  ํŠธ๋ž˜ํ‚น๊ณผ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•
    • ์„ฑ๋Šฅ ๊ฐœ์„ , ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํŠœ๋‹, SQL ํŠœ๋‹
    • ๋น„๋™๊ธฐ ์•„ํ‚คํ…์ฒ˜์— ๋Œ€ํ•œ ์ดํ•ด
    • Microservices architecture (MSA)
    • ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์˜ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์ดํ•ด
    • ์ปจํ…Œ์ด๋„ˆ ํ”Œ๋žซํผ ํ™˜๊ฒฝ์˜ ์ดํ•ด

ํšŒ์‚ฌ๊ฐ€ ์„ ํƒํ•˜๋Š” ์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž์˜ ๊ธฐ์ค€

์ฑ„์šฉ์€ ๊ฒฐ๊ตญ ๊ฐ™์ด ์ผํ•  ์‚ฌ๋žŒ์„ ๋ฝ‘๋Š” ํ™œ๋™

โ€˜๊ฐ™์ด ์ผํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ๋žŒโ€™์˜ ๊ธฐ์ค€

  • ์ž˜ ํ˜‘์—…ํ•  ์ˆ˜ ์žˆ๋Š” ๋™๋ฃŒ์ธ๊ฐ€?
  • ๊ทธ๋ผ์šด๋“œ ๋ฃฐ์„ ์ง€ํ‚ฌ ๋งŒํ•œ ์‚ฌ๋žŒ์ธ๊ฐ€?
  • ๋ณดํŽธ ํƒ€๋‹นํ•œ ์‚ฌ๊ณ  ๋ฐฉ์‹์„ ์ง€ํ–ฅํ•˜๋Š” ์‚ฌ๋žŒ์ธ๊ฐ€?
  • ๋„ˆ๋ฌด ๊ณ ์ง‘์„ผ ์‚ฌ๋žŒ์€ ์•„๋‹Œ๊ฐ€?
  • ๋„ˆ๋ฌด ๊ฐ•ํ•œ ํ™”๋ฒ•์„ ๊ฐ€์ง„ ์‚ฌ๋žŒ์€ ์•„๋‹Œ๊ฐ€?
  • ํ˜ผ์ž ์ผํ•˜๋Š” ๊ฒƒ๋งŒ ์ข‹์•„ํ•˜๋Š” ์‚ฌ๋žŒ์€ ์•„๋‹Œ๊ฐ€?
  • ๊ฐœ์ธ ํ”Œ๋ ˆ์ด๋ฅผ ๋„˜์–ด ์ด๊ธฐ์ ์ธ ๋™๋ฃŒ๋Š” ์•„๋‹Œ๊ฐ€?

์ฑ„์šฉ ๊ณต๊ณ ๋ฅผ ๋ถ„์„ํ•ด๋ณด์ž.

๋„ค์ด๋ฒ„

์ฑ„์šฉ ์‚ฌ์ดํŠธ์—์„œ ๋ณธ์ธ์˜ ๊ธฐ์ˆ  ์Šคํƒ์ด๋ž‘ ์ผ์น˜ํ•˜๋Š” ํšŒ์‚ฌ๋กœ ๊ฒ€์ฆํ•ด๋ณด์ž. https://www.wanted.co.kr/wdlist/518?country=kr&job_sort=job.recommend_order&years=-1&locations=all

์•„๋ž˜๋Š” ๊ฐ€์ƒ์˜ ์ฑ„์šฉ ๊ณต๊ณ ๋ฅผ ๋ถ„์„ํ•ด๋ณธ ์‚ฌ๋ก€์ด๋‹ค.

์ฑ„์šฉ ๊ธฐ์ค€

  1. 3๋…„ ์ด์ƒ์˜ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ ๊ฒฝ๋ ฅ ๋˜๋Š” ์ด์— ์ค€ํ•˜๋Š” ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„
  2. ํŒŒ์ด์ฌ, ์ž๋ฐ”, ์ฝ”ํ‹€๋ฆฐ ์ค‘ ํ•œ ๊ฐœ ์ด์ƒ์˜ ์ถฉ๋ถ„ํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„
  3. Distributed Version Control System์„ ์ดํ•ดํ•˜๊ณ  ์žˆ๋Š” ๋ถ„
  4. MSA์— ๋Œ€ํ•œ ์ดํ•ด์™€ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„
  5. ๋น„๋™๊ธฐ ์•„ํ‚คํ…์ฒ˜์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ์žˆ๋Š” ๋ถ„
  6. AWS ๊ธฐ๋ฐ˜ ํ•˜์—์„œ ๊ฐœ๋ฐœ ๋ฐ ์šด์˜ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„
  7. ๊ฐœ๋ฐœ ์œ ๊ด€ ๋ถ€์„œ์™€ ์›ํ™œํ•œ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์ด ๊ฐ€๋Šฅํ•˜๊ณ  ๊ธ์ •์ ์ธ ์‚ฌ๊ณ ๋ฅผ ์ง€๋‹Œ ๋ถ„ |

์šฐ๋Œ€์‚ฌํ•ญ - ๊ธฐ์กด ์„œ๋น„์Šค๋ฅผ ์Šคํ”„๋ง๋ถ€ํŠธ ๊ธฐ๋ฐ˜ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ ์ „ํ™˜ํ•ด๋ณธ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

  1. Git-Flow, Gitlab-Flow ๋“ฑ์˜ ์›Œํฌํ”Œ๋กœ ๋ฐฉ์‹์„ ํ™œ์šฉํ•œ ํ˜‘์—… ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„
  2. ๋‹ค์–‘ํ•œ ์ธํ„ฐ๋„ท ํ™˜๊ฒฝ์—์„œ์˜ failover ์ฒ˜๋ฆฌ ๋ฐ ๊ฐ์ข… ์žฅ์•  ๊ทน๋ณต ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„
  3. ๋Œ€๊ทœ๋ชจ ํŠธ๋ž˜ํ”ฝ์ด๋‚˜ ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ์‹œ์Šคํ…œ ์„ค๊ณ„ ๋ฐ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„
  4. ์–ธ์–ด์™€ ํ™˜๊ฒฝ์— ๊ตฌ์•  ๋ฐ›์ง€ ์•Š๊ณ  ์„œ๋น„์Šค๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ์ด ์žˆ๋Š” ๋ถ„
  5. ์˜คํ”ˆ ์†Œ์Šค ํ˜น์€ ๊ฐœ๋ฐœ ์ปค๋ฎค๋‹ˆํ‹ฐ ํ™œ๋™ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„
  6. ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๊ธฐ๋ฐ˜์˜ ๊ฐœ๋ฐœ ๋ฐ ์šด์˜ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„
  7. ์ฃผ์š”ํšŒ์‚ฌ์—์„œ ์š”๊ตฌํ•˜๋Š” ๊ธฐ์ˆ  ์Šคํƒ์— ๋Œ€ํ•ด์„œ ์•Œ์ˆ˜ ์žˆ๋‹ค.

ํ•ด๋‹น ์กฐ๊ฑด์— ๋‚˜๋Š” ์–ผ๋งˆ๋‚˜ (๊ธฐ์ˆ ์ ์œผ๋กœ) ๋ถ€ํ•ฉํ•˜๋Š”๊ฐ€?๋ฅผ ํŒ๋‹จํ•ด๋ณด์ž. ์ฑ„์šฉ๊ธฐ์ค€์˜ 4, 5๋ฒˆ์œผ๋กœ ๋ณผ ๋•Œ MSA์™€ ๋น„๋™๊ธฐ ๊ด€๋ จ ๊ธฐ์ˆ ์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ์ฑ…์— ๋” ์ž์„ธํ•œ ๋‚ด์šฉ์ด ๊ธฐ์ˆ ๋˜์–ด ์žˆ๋‹ค.

๋‚ด ๋™๋ฃŒ๋ฅผ ๋‚ด๊ฐ€ ์ง์ ‘ ๋ฝ‘์•„์•ผ ํ•œ๋‹ค๊ณ  ์ƒ์ƒํ•ด๋ณด์ž.

  • ํ‰ํŒ ๊ด€๋ฆฌ - ์˜†๋ถ€์„œ์—์„œ ๋‚˜๋ฅผ ๋ฐ๋ ค๊ฐˆ๊นŒ? ๋‚˜๋Š” ์ฃผ๋ณ€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๊ธ์ •์ ์ธ ํ‰๊ฐ€๋ฅผ ๋ฐ›๊ณ  ์žˆ๋Š” ์‚ฌ๋žŒ์ธ๊ฐ€?
  • ์ž๊ธฐ๊ฐ๊ด€ํ™” - ๋‚ด๊ฐ€ ๋™๋ฃŒ๋“ค์—๊ฒŒ ๊ธฐ๋Œ€ํ•˜๋Š” ๊ธฐ์ˆ ์  ์ˆ˜์ค€์€ ์–ด๋Š ์ •๋„์ธ๊ฐ€? ๋™๋ฃŒ๋“ค์ด ๋‚˜์—๊ฒŒ ๊ธฐ๋Œ€ํ•˜๋Š” ๊ธฐ์ˆ ์ ์ธ ์ˆ˜์ค€์€ ์–ด๋Š ์ •๋„์ธ๊ฐ€?
  • ๋‚ด๊ฐ€ ์ž์‹ ์žˆ๋Š” ์˜์—ญ์€ ๋ฌด์—‡์ธ๊ฐ€? ๋‚จ์—๊ฒŒ ์„ค๋ช…ํ•  ๋•Œ ๋ง‰ํž˜์—†์ด ๋‚˜์˜ค๋Š” ์ˆ˜์ค€์ธ๊ฐ€?
  • ๋‚ด๊ฐ€ ๋ถ€์กฑํ•œ ์˜์—ญ์€ ๋ฌด์—‡์ธ๊ฐ€?
  • ๋‚ด๊ฐ€ ๋ฉด์ ‘๊ด€์ด๋ฉด ๋‚˜์˜ ์–ด๋–ค ๋ฉด์„ ๋ณด๊ณ  ๊ธ์ •์ ์œผ๋กœ ํ‰๊ฐ€ํ• ๊นŒ? ๋‚˜๋Š” ๋‚˜๋ฅผ ๋ฝ‘์„์ˆ˜ ์žˆ์„๊นŒ?

๋‚ด ์ด๋ ฅ์„œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ชจ์˜ ๋ฉด์ ‘์„ ์ง„ํ–‰ํ•ด๋ณด์ž.

  • ๋‚ด๊ฐ€ ํ•œ ์ผ, ๋‚ด๊ฐ€ ํ•˜์ง€ ์•Š์€ ์ผ
  • ๋‚ด๊ฐ€ ์ถ”๊ตฌํ•˜๋Š” ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•๋ก , ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์€ ๊ฐœ๋ฐœ ๋ฐฉ์‹
  • ๋ถ€ํ’€๋ฆฌ๊ธฐ ๊ธˆ์ง€
  • ๋ณดํ†ต์˜ ๋…ธ๋ จํ•œ ๋ฉด์ ‘๊ด€๋“ค์€ ์ง€์›์„œ์— ์ž‘์„ฑํ•œ ์—…๋ฌด๊ฐ€ ๊ฑฐ์ง“์ธ์ง€ ์•„๋‹Œ์ง€ ํŒ๋‹จํ•˜๋Š”๋ฐ ํฐ ์–ด๋ ค์›€์ด ์—†๋‹ค.
    • OOM๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐ ํ–ˆ๋‹ค โ†’ ์™œ ๋ฐœ์ƒ ํ–ˆ๋Š”๊ฐ€? ์–ด๋–ค ์กฐ์น˜๋“ค์„ ํ•ด๋ณด์•˜๋Š”๊ฐ€? ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ํ•ด๊ฒฐํ–ˆ๋Š”๊ฐ€?
    • OOM์€ ๊ฒฐ๊ณผ์ ์œผ๋กœ ํž™ ๊ณต๊ฐ„ ๋ถ€์กฑ์œผ๋กœ ์ธํ•œ JVM์˜ ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น ์ด์Šˆ์ธ๋ฐ? ์˜ฌ๋ฐ”๋ฅธ ๋Œ€๋‹ต๊ณผ ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์€ ๋Œ€๋‹ต์€?

์—ญ๋Ÿ‰์ด๋ž€ ๋ฌด์—‡์ผ๊นŒ?

์—ญ๋Ÿ‰ - ์‚ฌ์ „์  ์˜๋ฏธ๋กœ ์–ด๋–ค ์ผ์„ ํ•ด๋‚ผ ์ˆ˜ ์žˆ๋Š” ํž˜, ์„ฑ๊ณผ๋ฅผ ๋‚ด๋Š” ๋Šฅ๋ ฅ, ๊ธฐ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๋Šฅ๋ ฅ

๊ฒฐ๊ณผ์ ์œผ๋กœ ์ผ์ด ๋˜๊ฒŒ ํ•˜๋Š”(์ด๋Œ์–ด ๊ฐ€๊ฑฐ๋‚˜ ๋งŒ๋“ค์–ด ๋‚ด๋Š”) ๋Šฅ๋ ฅ

  • ๊ฒฝํ—˜
  • ๊ธฐ์ˆ ์ง€์‹
  • ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜

์„ธ๋ถ€์ ์œผ๋กœ๋Š”

- ์—…๋ฌด ๋ถ„์„ ๋Šฅ๋ ฅ
- ๋ฐ์ดํ„ฐ์˜ ํ๋ฆ„
- ํ˜ธ์ถœ ์—ฐ๊ด€ ๊ด€๊ณ„
- ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„
    - ์—…๋ฌด์˜ ์ •์ฑ…๊ณผ ๊ด€๋ จ๋œ ์ฝ”๋“œ ๋ถ„์„
- ํฐ ๊ทธ๋ฆผ์„ ๊ทธ๋ฆฌ๋Š” ๋Šฅ๋ ฅ๊ณผ ๊ทธ ์•ˆ์—์„œ ๋””ํ…Œ์ผ์„ ์ฑ™๊ธฐ๋Š” ์˜์—ญ
- ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ตฌํ˜„ ๋Šฅ๋ ฅ
- ๋ฌธ์ œ ํ•ด๊ฒฐ ๋Šฅ๋ ฅ
- ๋„๋ฉ”์ธ์˜ ์ดํ•ด
- ์„ค๋“ํ•˜๊ณ  ์ดํ•ด์‹œํ‚ค๋Š” ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ๋Šฅ๋ ฅ
- ๊ธฐ์ˆ  ์ง€์‹์„ ์ •๋ฆฌํ•˜๊ณ  ์ „ํŒŒํ•˜๋Š” ๋Šฅ๋ ฅ

์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž๋Š” ๋ฌด์—‡์„ ๊ฐ–์ถ”์–ด์•ผ ํ• ๊นŒ?

ํ•™์Šต ์†๋„๊ฐ€ ๋น ๋ฅด๊ณ  ๊ณ ์ฐฉํ™”๋œ ์Šต๊ด€์ด ์—†์–ด์„œ ๋ฌด์—‡์ด๋“  ํก์ˆ˜ํ•˜๊ณ  ๋ฐ›์•„๋“ค์ด๊ธฐ ์ข‹์€ ์‹œ๊ธฐ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๋•๋ชฉ : ํƒœ๋„, ์„ฑ์žฅ์— ๋Œ€ํ•œ ์š•๊ตฌ

ํ•˜๋“œ์Šคํ‚ฌ

  • ํ•œ๊ฐ€์ง€ ์ด์ƒ ์–ธ์–ด์— ๋Œ€ํ•œ ๊ณต๊ณ ํ•œ ์ดํ•ด (์˜ˆ, Javascript, Java, Go, Python)
  • ์ž๋ฃŒ๊ตฌ์กฐ/์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํฌํ•จํ•œ ์ „๋ฐ˜์ ์ธ CS ์ง€์‹ (์ „๊ณต์ž ์ˆ˜์ค€์˜ ์ง€์‹)
  • ์„œ๋ฒ„ ๋ฐ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์ดํ•ด
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ์ดํ•ด
  • ํด๋ผ์šฐ๋“œ ํ˜น์€ ์ปจํ…Œ์ด๋„ˆ ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ์ดํ•ด (Optional)
  • Git
  • CI/CD

์†Œํ”„ํŠธ์Šคํ‚ฌ

  • ๋ฌธ์ œ ์ธ์‹๊ณผ ํ•ด๊ฒฐ ๋Šฅ๋ ฅ
  • ํ•™์Šต ๋Šฅ๋ ฅ, ๊ธฐ์ˆ ์  ์„ฑ์žฅ์— ๋Œ€ํ•œ ์˜์ง€
  • ์˜์‚ฌ ์†Œํ†ต
  • ํŒ€ ์›Œํฌ, ํ˜‘์—…์— ์ค‘์ ์„ ๋‘” ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜

์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž์˜ ์Šคํ‚ฌ์…‹ ์˜ˆ์‹œ

์˜ˆ์‹œ) ์ž๋ฐ” ๊ธฐ๋ฐ˜์˜ ๋ฐฑ์—”๋“œ ์ฃผ๋‹ˆ์–ด๋ผ๊ณ  ๊ฐ€์ •

  • Java, Spring, JPA (์ƒ)
  • JavaScript, Handlebars (์ƒ)
  • DBMS (MySQL, Oracle ์ƒ), NoSQL (MongoDB ์ค‘)
  • Python, Node.js (ํ•˜)
  • ๊ธฐํƒ€ ๊ฐœ๋ฐœ ํˆด ๋ฐ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ
    • IntelliJ, Git, Jenkins, AWS (๋‹จ๋…์œผ๋กœ ์„œ๋ฒ„ ์„ค์ • ๋ฐ ๋ฐฐํฌ ๊ฐ€๋Šฅ)
    • RESTful API ์„ค๊ณ„ ๋ฐ ๊ฐœ๋ฐœ ์šด์˜ (3๋…„ ์ด์ƒ ๊ฒฝํ—˜)
    • MSA ์„ค๊ณ„ ๋ฐ ๊ฐœ๋ฐœ ๊ฒฝํ—˜ (1๋…„ ์ด์ƒ ๊ฒฝํ—˜)

์˜ˆ์‹œ) ํ”„๋ŸฐํŠธ์—”๋“œ ์ฃผ๋‹ˆ์–ด๋ผ๊ณ  ๊ฐ€์ •

  • JavaScript , TypeScript
  • Node.js, Next.js, React, Vue.js
  • Webpack, Babel, Vite
  • ๊ธฐํƒ€ ์ฐธ๊ณ  ์‚ฌํ•ญ
    • MFA(Micro Frontend Architecture) ๊ฐœ๋ฐœ ๊ฒฝํ—˜,
    • ํ”„๋ŸฐํŠธ์—”๋“œ ์„ฑ๋Šฅ ๊ฐœ์„  ๊ฒฝํ—˜
    • ํ…Œ์ŠคํŠธ ์ž๋™ํ™” ๋„๊ตฌ ํ™œ์šฉ ๊ฒฝํ—˜

ํšŒ์‚ฌ๊ฐ€ ๊ธฐ๋Œ€ํ•˜๋Š” ์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž์˜ ์ž์งˆ์€?

[1์ˆœ์œ„] ๊ฐœ๋ฐœ์— ๋Œ€ํ•œ ํ˜ธ๊ธฐ์‹ฌ

  • ๊ฐœ๋ฐœ์— ํฅ๋ฏธ๊ฐ€ ์žˆ๊ณ  ์—ด์ •์ด ์žˆ๋Š” ์ง€์›์ž์ธ๊ฐ€?
  • ๊ธฐ๋ณธ์ ์ธ ์–ธ์–ด ํ•˜๋‚˜ ์ •๋„์˜ ์ŠคํŽ™์„ ์ž˜ ์ดํ•ดํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ํฐ ์–ด๋ ค์›€ ์—†์ด ๊ตฌ์‚ฌํ•  ์ˆ˜ ์žˆ๋Š”๊ฐ€?

[2์ˆœ์œ„] ์„ฑ์žฅ ์š•๊ตฌ

  • ์„ฑ์žฅ์— ๋Œ€ํ•œ ์š•๊ตฌ๊ฐ€ ํ™•์‹คํ•˜๊ณ  ์ž๊ธฐ ๊ณ„๋ฐœ ์˜์ง€๊ฐ€ ์žˆ๋Š”๊ฐ€?

[3์ˆœ์œ„] ์ „๊ณต ์ดํ•ด๋„

  • ์ „๊ณต ์ง€์‹์— ๋Œ€ํ•œ ๊ณต๊ณ ํ•œ ์ดํ•ด, ํ•™์—… ์ด์™ธ์— ๋ณธ์ธ์ด ๊ด€์‹ฌ ๊ฐ–๋Š” ๋ถ„์•ผ์— ์ง€์‹์„ ๊พธ์ค€ํžˆ ์Œ“๊ณ  ์žˆ๋Š”๊ฐ€?

๊ฒฝ๋ ฅ์ง์ด๋ผ๋ฉด?

[1์ˆœ์œ„] ์œ ์‚ฌํ•œ ์—…๋ฌด ๊ฒฝํ—˜๊ณผ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋Šฅ๋ ฅ

  • ๊ธฐ๋ณธ๊ธฐ๊ฐ€ ํƒ„ํƒ„ํ•˜์—ฌ ๊ฒฝํ—˜์น˜๋งŒ ์Œ“์ด๋ฉด ์ถฉ๋ถ„ํžˆ ํŒ€์— ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ๋Š”๊ฐ€?
  • ํ•ด๋‹น ์—…๋ฌด์— ๊ฒฝํ—˜์„ ์Œ“์•˜๋Š”๊ฐ€?
  • ์—…๋ฌด์— ๋ชฐ์ž…ํ•˜๊ณ  ์ฃผ์–ด์ง„ ์—…๋ฌด์— ์ตœ์„ ์„ ๋‹คํ•  ์ˆ˜ ์žˆ๋Š”๊ฐ€?
  • ์—ฐ์ฐจ์— ๋น„๋ก€ํ•œ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋Šฅ๋ ฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”๊ฐ€?

[2์ˆœ์œ„] ํ˜„์žฌ ๋ณด์œ ํ•œ ์‹ค๋ ฅ๊ณผ ์„ฑ์žฅ ๊ฐ€๋Šฅ์„ฑ

  • ์—ฐ์ฐจ๊ฐ€ ๋†’์„ ๊ฒฝ์šฐ ํŒ€ ๋‚ด์— ํˆฌ์ž…ํ–ˆ์„ ๋•Œ ์ฆ‰์‹œ ์ „๋ ฅ ๊ฐ์ธ๊ฐ€? ์ฆ‰, ๋ฐ”๋กœ ํผํฌ๋จผ์Šค๋ฅผ ๋‚ผ ์ˆ˜ ์žˆ๋Š” ์‚ฌ๋žŒ์ธ๊ฐ€?
  • ์—ฐ์ฐจ๊ฐ€ ๋‚ฎ์„ ๊ฒฝ์šฐ ์ž˜ ๋ฆฌ๋”ฉํ•ด์ฃผ๋ฉด ๋”ฐ๋ผ์˜ฌ ๋งŒํ•œ ํƒ„ํƒ„ํ•œ ๊ธฐ๋ณธ ์ง€์‹์„ ๊ฐ–์ถ”์—ˆ๋Š”๊ฐ€?

[3์ˆœ์œ„] ์ ๊ทน์ ์ธ ์ž๊ธฐ ๊ณ„๋ฐœ ์˜์ง€, ๊พธ์ค€ํ•œ ๋…ธ๋ ฅ ๋ฐ ๋„์ „

  • ํ˜„์žฌ ๊ณต๋ถ€ํ•˜๊ณ  ์žˆ๋Š” ๋ถ„์•ผ๊ฐ€ ํšŒ์‚ฌ๊ฐ€ ๋ฐฉํ–ฅ๊ณผ ์ผ์น˜ํ•˜๋Š”๊ฐ€? ์ฆ‰, ๋ชฉํ‘œ๋กœ ํ•œ ํšŒ์‚ฌ์˜ ๊ธฐ์ˆ  ์Šคํƒ์„ ๋ฏธ๋ฆฌ ๊ณต๋ถ€ํ•˜๊ณ  ๊ฒฝํ—˜ํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•˜์˜€๋Š”๊ฐ€?
  • ๊พธ์ค€ํžˆ ํ•™์Šต์„ ํ†ตํ•ด ์„ฑ์žฅํ•˜๊ณ ์ž ํ•˜๋Š”๊ฐ€?
  • ๋ณธ์ธ์ด ์ข‹์•˜๋‹ค๊ณ  ๋Š๋‚€ ๊ฐœ๋ฐœ ๊ด€๋ จ ์„œ์ ์ด๋‚˜ ๊ธฐ์ˆ , ๋ณธ์ธ์˜ ๊ณต๋ถ€์— ๋„์›€์ด ๋œ ์†Œ์Šค ๋“ฑ ์ž์‹ ์˜ ๋…ธ๋ ฅ์— ๋Œ€ํ•ด์„œ ๋ฉด์ ‘๊ด€๊ณผ ๋Œ€ํ™”๊ฐ€ ๊ฐ€๋Šฅํ•œ๊ฐ€?
  • ๋น„๊ต์  ์ผ๊ด€์„ฑ ์žˆ๋Š” ์ปค๋ฆฌ์–ด ๊ด€๋ฆฌ๊ฐ€ ํ•„์š”ํ•˜๊ณ  ํŒ€๋‚ด ์ฃผ๋‹ˆ์–ด๋“ค์˜ ์„ฑ์žฅ์— ๊ธ์ •์ ์ธ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ์—ญ๋Ÿ‰์„ ๋ณด์œ ํ•ด์•ผ ํ•จ.

์‹ ์ž…๊ณผ ๊ฒฝ๋ ฅ ๋ชจ๋‘ ์ฃผ์˜๊นŠ๊ฒŒ ๋ด์•ผ ํ•  ์ฑ„์šฉ ๊ณต๊ณ 

  • ํŠน์ • ์ œํ’ˆ๊ตฐ์— ๊ตญํ•œ๋œ ๊ธฐ์ˆ ์ธ๊ฐ€?
  • ์„œ๋“œํŒŒํ‹ฐ์˜ ์ˆ˜๋ช…๊ณผ ์—ฐ๊ด€๋˜์–ด ์žˆ๋Š”๊ฐ€?
  • ์ด์ œ ๋” ์ด์ƒ IT ์ธก๋ฉด์˜ ๋‚ด์žฌํ™”๋ฅผ ๊ธฐ๋Œ€ํ•˜๊ธฐ ํž˜๋“  ์‚ฐ์—…์ธ๊ฐ€?
  • ์˜ฌ๋ผ์šด๋“œ ํ”Œ๋ ˆ์ด์–ด

์‹ค์ œ ํ‰๊ฐ€ํ‘œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๊ณ ๋ฏผํ•ด๋ณด์ž.

ํšŒ์‚ฌ๋งˆ๋‹ค ๋ฉด์ ‘์ž๋ฅผ ํ‰๊ฐ€ํ•˜๋Š” ํ•ญ๋ชฉ๋“ค์ด ์กด์žฌํ•œ๋‹ค.

  • ๋ฝ‘์•„์•ผ ํ•œ๋‹ค๋ฉด ์ด์œ ๋Š” ๋ฌด์—‡์ธ๊ฐ€?
  • ๋ฝ‘์ง€ ๋ง์•„์•ผ ํ•œ๋‹ค๋ฉด ์ด์œ ๋Š” ๋ฌด์—‡์ธ๊ฐ€?
  • ๊ตฌ์ฒด์ ์ธ ํ–‰๋™ ์–‘์‹ ๊ธฐ๋ฐ˜ ํ‰๊ฐ€์™€ ์งˆ๋ฌธ๋“ค (Behavioral Interviewing Technique)
    • ์ง€์›์ž์˜ ๊ณผ๊ฑฐ ๊ฒฝํ—˜์„ ๋ฐ”ํƒ•์œผ๋กœ ๋ฏธ๋ž˜์˜ ํ–‰๋™์„ ์˜ˆ์ธกํ•˜๋Š” ๋ฉด์ ‘ ๊ธฐ๋ฒ•
    • ๊ฐœ์ธ์˜ ์„ฑ๊ฒฉ์ด๋‚˜ ๊ฐ€์น˜๊ด€๊ณผ ๊ฐ™์€ ์˜์—ญ์„ ๊ธฐ์ค€์œผ๋กœ ํŠน์ • ์ƒํ™ฉ์—์„œ ์–ด๋–ค ํ–‰๋™๋“ค์„ ํ•˜๋Š”๊ฐ€๋ฅผ ํ‰๊ฐ€ํ•˜๋Š” ๋ฐฉ์‹, ์กฐ์ง ์ ์‘๋ ฅ์ด๋‚˜ ํŒ€์›Œํฌ, ์ปฌ์ฒ˜ํ•๋“ฑ์„ ์•Œ์•„๋ณด๊ธฐ ์œ„ํ•จ
      • ๋ฒ„๊ทธ(์žฅ์• )๋ฅผ ์–ด๋–ป๊ฒŒ ๋””๋ฒ„๊น…ํ•˜๊ณ  ์ถ”์ ํ•˜๋Š”์ง€?
      • ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž์™€ ์ผํ•˜๋ฉด์„œ ๊ฒช์€ ๋ฌธ์ œ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•˜์˜€๋Š”์ง€?
      • ํšŒ์‚ฌ์˜ ์ž…์žฅ๊ณผ ๊ฐœ์ธ์˜ ์ž…์žฅ
      • ํšŒ์‚ฌ๋‚˜ ๋™๋ฃŒ์—๊ฒŒ ์˜ํ–ฅ์„ ๋ฏธ์นœ ๊ฒฝํ—˜ (๊ธ์ •์ด๋“  ๋ถ€์ •์ด๋“  ํ˜น์€ ๋ฐ˜๋Œ€์˜ ์ƒํ™ฉ์—์„œ ๋Œ€์ฒ˜๋ฒ•)
      • ์„ฑ์ทจ๊ฐ์ด ๋†’์•˜๋˜ ์ˆœ๊ฐ„์€?
      • ๋ฌด๋ฆฌํ•œ ์š”๊ตฌ์‚ฌํ•ญ์ด ์ „๋‹ฌ๋˜์—ˆ์„๋•Œ ๋ณธ์ธ์ด ์ทจํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ์„ ์˜ ๋ฐฉ๋ฒ•์€?

STAR ์งˆ๋ฌธ ์ž‘์„ฑ๋ฒ•

    Situation:๊ณผ๊ฑฐ ์ƒํ™ฉ์„ ์„ค๋ช…
    Task:๋‹น์‹œ ์ˆ˜ํ–‰ํ•ด์•ผ ํ–ˆ๋˜ ์—…๋ฌด๋ฅผ ์„ค๋ช…
    Action:๋‹น์‹œ ์ทจํ–ˆ๋˜ ํ–‰๋™์„ ์„ค๋ช…
    Result:ํ–‰๋™์˜ ๊ฒฐ๊ณผ๋ฅผ ์„ค๋ช…

ํ‰๊ฐ€์„œ ๊ธฐ๋ฐ˜ ์‚ดํŽด๋ณด๊ธฐ

๐Ÿ’ก ์ •๋ฆฌํ•˜์ž๋ฉด

- ๊พธ์ค€ํ•œ ์„ฑ์žฅ, ๊ณ„๋‹จ์‹ ์„ฑ์žฅ์„ ์œ„ํ•œ ๋‚˜์˜ ๋…ธ๋ ฅ์„ ์ž˜ ํฌ์žฅํ•ด์„œ ์ด๋ ฅ์„œ๋ฅผ ์ œ์ถœํ•˜์ž.
- ๊พธ์ค€ํ•œ ๋…ธ๋ ฅ์€ ๊ฒฐ๊ตญ ์ž‘์€ ์„ฑ์ทจ๊ฐ๋“ค์„ ํ†ตํ•ด์„œ ๋ณด์ƒ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.
- ์„ฑ์ทจ๊ฐ = ๊พธ์ค€ํ•ด์•ผ ๋‚˜์˜ค๋Š” ๊ฒฐ๊ณผ๋ฌผ = ์ž๊ทธ๋งˆํ•œ ์„ฑ์ทจ๊ฐ€ ๋ชจ์—ฌ ํฐ ์„ฑ์ทจ๋ฅผ ๋งŒ๋“ ๋‹ค.
- ์พŒ๊ฐ ๋ณด์ˆ˜ ์‹œ์Šคํ…œ

ํ•ด๊ฒฐํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ๋ช…ํ™•ํ•˜๊ฒŒ ์ •๋ฆฌํ•˜์ž.

  • ํ•ด๊ฒฐํ•˜๊ธฐ ์–ด๋ ค์› ๋˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ๋Š”๊ฐ€?
  • ํ•ด๊ฒฐ๊นŒ์ง€๋Š” ์™„๋ฒฝํ•˜๊ฒŒ ๋ชปํ–ˆ์ง€๋งŒ ๋ฐฉํ–ฅ์„ฑ์„ ํ™•์ธํ–ˆ๋Š”๊ฐ€? ๋ฐฉ๋ฒ•์„ ์œ ์ถ”ํ• ์ˆ˜ ์žˆ๋Š”๊ฐ€?
  • ํ•ฉ๋ฆฌ์ ์œผ๋กœ ํŒ๋‹จํ•˜์—ฌ ์ž‘์€ ํ•ด๋ฒ•(์‹ค๋งˆ๋ฆฌ ๋ฐœ๊ฒฌ)๋ถ€ํ„ฐ ํ™•์žฅ๋œ ํ•ด๋ฒ•(์†”๋ฃจ์…˜ ๋ฐœ๊ฒฌ)๊นŒ์ง€ ์ œ์‹œํ•˜์˜€๋Š”๊ฐ€?
  • ๊ฐœ๋ฐœํ•˜๋ฉด์„œ ๋Œ€๋ถ€๋ถ„์€ ์ƒ๊ธฐ๊ธฐ ๋งˆ๋ จ์ด๊ณ , ์ด๋ฅผ ์ž˜ ์ •๋ฆฌํ•ด๋‘๊ณ  ๊นŠ๊ฒŒ ํŒŒ๋ด์•ผ ํ•œ๋‹ค.

์ฃผ๋‹ˆ์–ด ๋ ˆ๋ฒจ์—์„œ ๊ฐ–์ถ”์–ด์•ผ ํ•  ๊ฒƒ

  • CS๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ํ•˜๋“œ์Šคํ‚ฌ, ์†Œํ”„ํŠธ ์Šคํ‚ฌ์„ ๋‚ด๊ฒƒ์œผ๋กœ ๋งŒ๋“œ๋Š” ๋…ธ๋ ฅ
  • ์„ฑ์žฅ์„ ์œ„ํ•œ ์š•๊ตฌ, ๊ฐœ๋ฐœ์— ๋Œ€ํ•œ ํ˜ธ๊ธฐ์‹ฌ๊ณผ ์—ด์ •

์ข‹์€ ์ฝ”๋“œ, ๊ฒฌ๊ณ ํ•œ ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ๋ฌด์—‡์ธ์ง€ ๊พธ์ค€ํžˆ ๊ด€์‹ฌ์„ ๊ฐ€์ง€๊ณ  ๋ณธ์ธ์˜ ์ƒ๊ฐ์„ ์ •๋ฆฝํ•ด์•ผ ํ•œ๋‹ค.

  • ์ข‹์€ ์ฝ”๋“œ๋ž€?
  • ์‚ฌ๋žŒ๋งˆ๋‹ค ๋‹ค๋ฅด๊ฒŒ ์ •์˜ํ•˜๋Š” ์˜์—ญ

์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ๊ธฐ์ˆ  ๋กœ๋“œ๋งต

์‹ ์ž…์‚ฌ์› ๊ธฐ๋ณธ ์—ญ๋Ÿ‰ ๋กœ๋“œ๋งต

https://github.com/villainscode

๊ธฐ์ˆ  ๋ชฉ๋ก ์ฒซ๋ฒˆ์งธ - ์ „๋ฐ˜์ ์ธ ๋ฐฑ์—”๋“œ ๊ธฐ์ˆ  ๋กœ๋“œ๋งต

https://roadmap.sh

๋กœ๋“œ๋งต ๋‹ค์šด๋กœ๋“œ ๋ฐ›๊ธฐ

์‹ ์ž…์‚ฌ์›๊ธฐ์ˆ ๋กœ๋“œ๋งต๋‹ค์šด๋ฐ›๊ธฐ

๋ฐฑ์—”๋“œ๊ธฐ์ˆ ๋กœ๋“œ๋งต๋‹ค์šด๋ฐ›๊ธฐ

๊ธฐ์ˆ  ๋ชฉ๋ก ๋‘๋ฒˆ์งธ - ์ž๋ฐ” ํ•™์Šต ๋กœ๋“œ๋งต

https://github.com/devoxx/JavaRoadmap/blob/main/JavaRoadmap2024.jpg

๊ธฐ์ˆ  ๋ชฉ๋ก ์„ธ๋ฒˆ์งธ - ์‹œ๋‹ˆ์–ด๊ฐ€ ๋˜์–ด ๊ฐ€๋Š” ๊ธธ๋ชฉ์—์„œ ์•Œ์•„์•ผ ํ•  ๊ฒƒ๋“ค

  • ์กฐ์ง์˜ ๋ฆฌ๋“œ, ์—…๋ฌด ๊ด€๋ฆฌ, ์ผ์ • ๊ด€๋ฆฌ, ์ฃผ๋‹ˆ์–ด ์„ฑ์žฅ
  • ์ฝ”๋“œ์˜ ํ’ˆ์งˆ, ์žฅ์• ์˜ ๊ฐœ์„ ๊ณผ ๋ฐฉ์ง€
  • ์•„ํ‚คํ…์ฒ˜์— ๋Œ€ํ•œ ์ดํ•ด์™€ ์Šค์ผ€์ผ๋ง
  • ๋น„์ฆˆ๋‹ˆ์Šค ๋„๋ฉ”์ธ์— ๋Œ€ํ•œ ์„ค๊ณ„ ๋Šฅ๋ ฅ
  • ๋น„ ๊ธฐ๋Šฅ์  (NFR) ์š”๊ตฌ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ• (ํ™•์žฅ์„ฑ, ์•ˆ์ •์„ฑ, ๊ฐ€์šฉ์„ฑ, ๋ชจ๋‹ˆํ„ฐ๋ง)
  • ๋Œ€๋Ÿ‰์˜ ํŠธ๋ž˜ํ”ฝ, ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ๋ถ„์‚ฐ ์ฒ˜๋ฆฌ์— ๋Œ€ํ•œ ํ•™์Šต
  • ๊ธฐ์ˆ  ๋ถ€์ฑ„ ๊ด€๋ฆฌ
    • ๊ธฐ์ˆ  ๋ถ€์ฑ„๋กœ ์ธํ•œ ์—…๋ฌด ์†๋„์˜ ์ €ํ•˜, ์†Œ์Šคํฌ๋น„์•„๋กœ ์ธํ•œ ๋ถ€์ž‘์šฉ๋“ค๋กœ ์ธํ•ด ๊ด€๋ จ ๊ฐœ๋ฐœ ์กฐ์ง์˜ ๋ฒˆ์•„์›ƒ์ด ์˜จ๋‹ค.
    • ๊ฒฐํ•จ/๋ฒ„๊ทธ ์ถ”์ , ๊ด€๋ฆฌ
    • ๋ฌธ์„œํ™”
    • ํ…Œ์ŠคํŠธ ๋ฐ ์ž๋™ํ™”
    • ์•„ํ‚คํ…์ฒ˜ ๊ฐœ์„ 
    • ์ฝ”๋”ฉ ๊ฐ€์ด๋“œ, ์ฝ”๋“œ ๋ฆฌ๋ทฐ ๊ฐ€์ด๋“œ ๋ฐฐํฌ

๊ธฐ์ˆ  ๋ชฉ๋ก ๋„ค๋ฒˆ์งธ - ์‹œ๋‹ˆ์–ด๋กœ์จ ์„ค๊ณ„ ๊ฒฝํ—˜์„ ์Œ“์„ ๋ฌด๋ ต ์•Œ์•„๋‘ฌ์•ผ ํ•  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ™•์žฅ ์ฒ˜๋ฆฌ ์ „๋žต

์ƒค๋”ฉ๊ณผ ํŒŒํ‹ฐ์…”๋‹

  • ๋Œ€ํ‘œ์ ์ธ ๋ถ„์‚ฐ ์ €์žฅ ์ฒ˜๋ฆฌ ๋ฐฉ์‹ - ์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„์— ๋ถ„ํ• ํ•˜์—ฌ ์ €์žฅํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•จ.
    • ๊ทธ๋Ÿฌ๋‚˜ ์šด์˜ ๋ฐ ์ธํ”„๋ผ ๋ณต์žก๋„๊ฐ€ ๊ต‰์žฅํžˆ ์ปค์ง€๋ฏ€๋กœ ๊ฐ€๊ธ‰์  ์ตœ๋Œ€ํ•œ ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์ฐพ์•„๋ณธ ๋’ค์— ์ ์šฉ.
    • ๋ถˆ๊ฐ€ํ”ผํ• ๋•Œ๋‚˜ ์ ์šฉํ•ด์•ผํ•œ๋‹ค.

์ƒค๋”ฉ์„ ํ”ผํ•˜๊ณ  ์‹ถ์–ด์„œโ€ฆ

  • ์บ์‹ฑ
  • ์ˆ˜์ง ์Šค์ผ€์ผ๋ง
  • SQL ์ตœ์ ํ™”
  • ์ฝ๊ธฐ Replication
  • ๊ตฌ์กฐ๊ฐœ์„ 
  • ํŒŒํ‹ฐ์…”๋‹ - ๋‹จ์ผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋‚ด์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„ํ• 

์ดˆ๋Œ€์šฉ๋Ÿ‰ - ์ฟผ๋ฆฌํŠœ๋‹, ์บ์‹ฑ, ๋ฐ์ดํ„ฐ ๋ถ„ํ•  ์ €์žฅ์œผ๋กœ๋„ ํ•ด๊ฒฐ์ด ์•ˆ๋œ๋‹ค๋ฉด?

  • ์Šค์ผ€์ผ์—…-ํ•˜๋“œ์›จ์–ด ๊ฐœ์„ , NoSQL ๊ฒ€ํ†  (Cassandra, CouchDB, HBase, ๊ทธ๋ž˜ํ”„ ๋””๋น„ ๋“ฑ), MemSQL(SingleStore)

์ฐธ๊ณ ์ด๋ฏธ์ง€ (์‹œ๊ฐํ™”ํ•˜๋ฉด ๋” ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์›Œ์š”)

์•„๋ž˜์˜ ํ•œ์žฅ์ด๋ฏธ์ง€๋Š” ๊ตฌ๊ธ€์—์„œ db sharding ์œผ๋กœ ๊ฒ€์ƒ‰ํ•œ ํ›„ ์ด๋ฏธ์ง€ ํƒญ(์˜› ํŠธ์œ„ํ„ฐ Alex Xu ๊ธ€)์—์„œ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜๋Š” https://architecturenotes.co/database-sharding-explained/ ๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

DB.jpeg

์ธ๊ธฐ์žˆ๋Š” ์งˆ๋ฌธ๋“ค

์–ธ์–ด๋‚˜ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์Šค์Šค๋กœ ์ŠคํŽ™์„ ๋ช…ํ™•ํžˆ ํŒŒ์•…ํ•˜์…”์•ผ ํ•ฉ๋‹ˆ๋‹ค.
์ฑ…์— ๋” ์ž์„ธํ•œ ๋‚ด์šฉ์ด ๊ธฐ์ˆ ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์™ธ์šฐ์ง€ ๋งˆ์‹œ๊ณ  ์ดํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ๋กœ ๊ตฌํ˜„ํ•ด์„œ ํ…Œ์ŠคํŠธ๋ฅผ ํ•ด๋ณด๊ณ  ์–ด๋–ค ์ฐจ์ด์ ์ด ์žˆ๋Š”์ง€, ์–ด๋–ค ํŠน์ง•์ด ์žˆ๋Š”์ง€ ์‹คํ—˜ํ•˜์„ธ์š”.

  • ํ”„๋กœ์„ธ์Šค์™€ ์Šค๋ ˆ๋“œ
  • ๋™์‹œ์„ฑ๊ณผ ๋ณ‘๋ ฌ์„ฑ
  • Dead Lock, Transaction ๊ฒฉ๋ฆฌ๋ ˆ๋ฒจ, ํŠธ๋žœ์žญ์…˜ ๋ฝ
  • DROP, TRUNCATE ์ฐจ์ด์ 
  • JPA 1์ฐจ ์บ์‹œ, 2์ฐจ ์บ์‹œ, OSIV, N+1 ๋ฌธ์ œ
  • JPQL๊ณผ QueryDSL
  • ๋ธŒ๋ผ์šฐ์ €์—์„œ domain์„ ํ˜ธ์ถœํ•œ ๋’ค ํŽ˜์ด์ง€๊ฐ€ ๋žœ๋”ฉ๋˜๊ธฐ ๊นŒ์ง€์˜ ์•„ํ‚คํ…์ฒ˜์™€ ํ๋ฆ„
  • Map, Set, List
  • Stack๊ณผ Queue
  • Tree์™€ Heap
  • HashMap๊ณผ HashTable
  • http์™€ https
  • CORS
  • ๊ธฐ๋ณธํ‚ค(Primary key), ์™ธ๋ž˜ํ‚ค(Foreign key), ๋ณตํ•ฉํ‚ค(Composite key)
  • ํ…Œ์ด๋ธ”๊ณผ ์ธ๋ฑ์Šค, ์ธ๋ฑ์Šค์˜ ํ™œ์šฉ
  • Mutable๊ณผ Immutable
  • Session๊ณผ Cookie, Session Storage
  • IoC์™€ DI
  • Filter์™€ Interceptor
  • ํ”„๋ ˆ์ž„์›Œํฌ์™€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ
  • RESTFul Architecture
  • Proxy์™€ Reverse Proxy
  • SQL Injection๊ณผ XSS,
  • OAuth, JWT, Token
  • MicroServices Architecture

์‚ฌ์ „ ์งˆ๋ฌธ ๋ฐ Q&A

๊ฒฝํ—˜์ด ๋ถ€์กฑํ•œ ์˜์—ญ์€ ๊ฐ„์ ‘ํ•™์Šต(์ฑ…, ์˜จ๋ผ์ธ ์ปค๋ฎค๋‹ˆํ‹ฐ, ๋ฉ˜ํ† ๋ง, ๋™์˜์ƒ)์„ ๊พธ์ค€ํžˆ ์ฐพ์•„์„œ ๋ณด์„ธ์š”.

๋ฉด์ ‘๋„ ๊ฒฝํ—˜์น˜์˜ ์˜์—ญ์ด๋‹ค. ํƒˆ๋ฝ์„ ๋‘๋ ค์›Œํ•˜์ง€ ๋ง์ž.

  • ์„œ๋ฅ˜๋งŒ ๊ณ„์† ํƒˆ๋ฝํ•œ ๊ฒฝ์šฐ ์ด๋ ฅ์„œ ๋ฆฌ๋ทฐ, ์ฒจ์‚ญ์„ ๋ฐ›์•„๋ณด๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•œ๋‹ค.

    • ์—ฌ๋Ÿฌ ๋ฒ„์ „์˜ ์ด๋ ฅ์„œ ๋ฐ ์ž๊ธฐ์†Œ๊ฐœ์„œ๋ฅผ ๊ฐ€์ง€๊ณ  ABํ…Œ์ŠคํŠธ๋ฅผ ํ•ด๋ณด์ž.
  • ํƒ€์ธ์˜ ํ‰๊ฐ€๋ฅผ ๋ฐ›์•„๋“œ๋ ค์•ผ ํ•œ๋‹ค.

  • ์ •๋ง ์ค€๋น„๊ฐ€ ๋ง‰๋ง‰ํ•˜๋‹ค๋ฉด ๋ฉ˜ํ† ๋ง์„ ๋ฐ›์ž.

    • ๊ธฐ์ˆ ๋ฉด์ ‘, ์ธ์„ฑ๋ฉด์ ‘, ์—ฐ๋ด‰ ํ˜‘์ƒ ๋“ฑ ๋‹ค ๊ฒฝํ—˜์น˜์˜ ์˜์—ญ์ด๋‹ค.
  • ์ธํ„ฐ๋„ท์— ์žˆ๋Š” ์งˆ๋ฌธ ๋ชฉ๋ก์„ ์™ธ์›Œ์„œ ๋‹ต๋ณ€ํ•ด๋ด๋„ ์‚ฌ์‹ค ํฐ ๋„์›€์€ ์•ˆ๋  ์ˆ˜ ์žˆ๋‹ค.

    • ๋ฉ”ํƒ€์ธ์ง€

    • 2์ฐจ ๊ณต๊ฒฉ๊ณผ ๋‚ด ์˜ˆ์ƒ ๋ณด๋‹ค ๋” ๊นŠ์€ ์งˆ๋ฌธ๋“คโ€ฆ

    • 1 Depth ์งˆ๋ฌธ๊ณผ 2 Depth ์งˆ๋ฌธ, ๊ทธ๋ฆฌ๊ณ  ์ด์–ด์ง€๋Š” 3 Depth ์งˆ๋ฌธ์„ ๊ณ ๋ฏผํ•ด์•ผ ํ•œ๋‹ค.

      • ์„ฑ๊ฒฉ์˜ ์žฅ์ ์— ๋ฌธ์ œํ•ด๊ฒฐ ์ค‘์‹ฌ์ ์œผ๋กœ ์‚ฌ๊ณ ํ•œ๋‹ค๊ณ  ์ ์—ˆ๋Š”๋ฐ, ๋Œ€ํ‘œ์ ์ธ ์‚ฌ๋ก€๋Š”?
        • ๊ทธ ์‚ฌ๋ก€๋กœ ์‚ฌ์šฉ์ž ํ˜น์€ ํšŒ์‚ฌ๊ฐ€ ์–ป์€ ์ด์ต์€?
          • ๊ทธ ๋ฐฉ๋ฒ• ๋ง๊ณ  ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์€ ๋ญ๊ฐ€ ์žˆ์„๊นŒ?
    • ์ž˜ ์„ค๋ช…ํ•˜๊ธฐ์™€ ์ž˜ ์งˆ๋ฌธํ•˜๊ธฐ

      • ์ƒ๊ฐ๋ณด๋‹ค ๋งŽ์€ ์ดˆ๋ณด์ž๋“ค์ด ์Šค์Šค๋กœ ๋ญ˜ ๋ชจ๋ฅด๋Š”์ง€ ๋ชจ๋ฆ„(์ž˜ ์•Œ๊ณ  ์งˆ๋ฌธํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ํ˜„์ €ํžˆ ์ ์Œ)
        • ์ž˜ ๋ชจ๋ฅด๋‹ค๋ณด๋‹ˆ ์งˆ๋ฌธ ์ž์ฒด๋„ ๊ต‰์žฅํžˆ ๋ง‰์—ฐํ•จ
          • ์งˆ๋ฌธ์ด ๋ชจํ˜ธํ•˜๋‹ค๋ณด๋‹ˆ ๋‹ต๋ณ€์ด ๋ถˆ๊ฐ€๋Šฅ
          • ๊ธ€์€ ๋‚ด๊ฐ€ ์ฝ๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ ํƒ€์ธ์ด ์ฝ๋Š” ๊ฒƒ, ๋‚จ์„ ์ดํ•ด์‹œํ‚ค๋Š” ํ–‰์œ„, ๋ฌธ์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€
      • https://stackoverflow.com/help/how-to-ask
      • RTFM (https://namu.wiki/w/RTFM)
        • ์„  ๊ฒ€์ƒ‰, ํ›„ ์งˆ๋ฌธ
      • ๋‚จ์—๊ฒŒ ์„ค๋ช…ํ•˜๋‹ค๋ณด๋‹ˆ ๋‚˜์˜ ์ง€์‹์ด ๋” ์ž˜ ์ดํ•ด(์žฌ์ •๋ฆฌ)๊ฐ€ ๋˜์—ˆ๋‹ค.
    • ์•Œ๊ณ ๋Š” ์žˆ๋Š”๋ฐ, ์„ค๋ช…์„ ์ž˜ ๋ชปํ•˜๊ฒ ๋‹ค โ†’ ์™„๋ฒฝํ•˜๊ฒŒ ์ดํ•ดํ•˜์ง€ ๋ชปํ•œ ๊ฒฝ์šฐ, ์ ˆ๋ฐ˜๋งŒ ์ดํ•ดํ•œ ๊ฒฝ์šฐ

    • ๋‚ด๊ฐ€ ์•Œ๊ฒŒ๋œ ๋‚ด์šฉ์„ ์ง€์†์ ์œผ๋กœ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์—๊ฒŒ ์ „๋‹ฌํ•˜๋Š”๊ฒŒ ์ค‘์š”

    • ์ •๋ฆฌํ•˜๋Š” ์Šต๊ด€์ด ์ค‘์š”

      • ๋ฌธ์ œ๋ฅผ ์‹๋ณ„ํ•˜์ž
      • ๋‚ด ๊ฒฝํ—˜์„ ๊นŒ๋จน์ง€ ๋ง๊ณ  ๊ธฐ๋กํ•˜์ž. ๊ธฐ๋ก์ด ์ž์‚ฐ์ด๋‹ค.
      • ์˜ˆ์‹œ) ๋ฌธ์ œ์˜ ์ธ์‹๊ณผ ํ•ด๊ฒฐ ๊ณผ์ •์„ ๊ธฐ๋ก

      แ„†แ…ฎแ†ซแ„Œแ…ฆแ„‹แ…ตแ†ซแ„‰แ…ตแ†จแ„€แ…ชแ„’แ…ขแ„€แ…งแ†ฏ.jpeg

    • โ€œํ•™์ฐฝ์‹œ์ ˆ ๊ณต๋ถ€ ์ž˜ํ•˜๋Š” ์นœ๊ตฌ์—๊ฒŒ๋Š” ์ฃผ๋ณ€์˜ ๋‹ค๋ฅธ ์นœ๊ตฌ๋“ค์ด ๋‹ค์–‘ํ•œ ์งˆ๋ฌธ๋“ค์„ ํ•ด๋Œ„๋‹ค. ๊ทธ ์งˆ๋ฌธ์— ์„ค๋ช…ํ•˜๋Š” ํ›ˆ๋ จ์„ ํ•˜๋ฉด์„œ ์ง€์‹์ด ๋”์šฑ ๊ณต๊ณ ํ•ด์ง„๋‹คโ€

  • ์—ฐ๋ด‰ ํ˜‘์ƒ๋„ ๊ฒฝํ—˜์ด๋‹ค.

    • ์ž๊ธฐ๊ณ„๋ฐœ, ์—ฐ๋ด‰์„ ์˜ฌ๋ฆฌ๋Š” ํ–‰์œ„์™€ ์ง๊ฒฐ๋œ ๊ฒƒ๋“ค์—๋Š” ๋ˆ(์‹œ๊ฐ„, ๊ฒฝํ—˜, ๋„์›€)์„ ํˆฌ์žํ•ด์•ผ ํ•œ๋‹ค.

๋๋งบ์Œ

  • ์š”์ฆ˜ ์ฑ„์šฉ์‹œ์žฅ ์ƒํ™ฉ์ดโ€ฆ
  • ๊ธˆ๋ฆฌ๊ฐ€...

About

The technical interview knowledge that a junior backend developer should possess.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published