'A Track'

[TIL/A Track] 2024/07/29

๐Ÿš€ OverviewA Track๊ณผ B Track์„ ๋ฒˆ๊ฐˆ์•„๊ฐ€๋ฉฐ ์ˆ˜ํ–‰A Track: ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ ๋ฐ ๊ฐ์ข… ๊ฐœ๋ฐœ ์„œ์ ์—์„œ ํ•™์Šตํ•œ ํ‚ค์›Œ๋“œ ์ •๋ฆฌB Track: ํ”„๋กœ์ ํŠธ ๊ตฌํ˜„ ๊ณผ์ •์—์„œ ํ•™์Šตํ•œ ํ‚ค์›Œ๋“œ ์ •๋ฆฌ=> (A Track์€ ์ž๋ฃŒ์˜ ์ถœ์ฒ˜๋ฅผ ๋ชฉ์ฐจ๋กœ, B Track์€ ๊ตฌํ˜„ ์ฃผ์ œ๋ฅผ

2024๋…„ 7์›” 29์ผ4min read

๐Ÿš€ Overview

A Track๊ณผ B Track์„ ๋ฒˆ๊ฐˆ์•„๊ฐ€๋ฉฐ ์ˆ˜ํ–‰

A Track: ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ ๋ฐ ๊ฐ์ข… ๊ฐœ๋ฐœ ์„œ์ ์—์„œ ํ•™์Šตํ•œ ํ‚ค์›Œ๋“œ ์ •๋ฆฌ B Track: ํ”„๋กœ์ ํŠธ ๊ตฌํ˜„ ๊ณผ์ •์—์„œ ํ•™์Šตํ•œ ํ‚ค์›Œ๋“œ ์ •๋ฆฌ

=> (A Track์€ ์ž๋ฃŒ์˜ ์ถœ์ฒ˜๋ฅผ ๋ชฉ์ฐจ๋กœ, B Track์€ ๊ตฌํ˜„ ์ฃผ์ œ๋ฅผ ๋ชฉ์ฐจ๋กœ) ํ•™์Šตํ•œ ๋‚ด์šฉ์„ ํ‚ค์›Œ๋“œ ์ค‘์‹ฌ์œผ๋กœ ์ •๋ฆฌํ•  ์˜ˆ์ •

๊ตฌ์Šฌ(๊ฐœ๋… ๋˜๋Š” ํ‚ค์›Œ๋“œ)์ด ์„œ ๋ง์ด๋ผ๋„ ๊ฟฐ์–ด์•ผ(๋ฌธ์„œํ™” ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๊ตฌํ˜„) ๋ณด๋ฐฐ๋ผ๋ฉด, ๊ตฌ์Šฌ๋ถ€ํ„ฐ ๋ชจ์œผ๋Š” ๊ฒŒ ๋งž๊ฒ ๋‹ค๋Š” ํŒ๋‹จ.

โœ… A Track

1. ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ ๐Ÿ“š

์†Œํ”„ํŠธ์›จ์–ด ์ƒ๋ช… ์ฃผ๊ธฐ```: ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•œ ์„ค๊ณ„, ์šด์šฉ, ์œ ์ง€๋ณด์ˆ˜ ๋“ฑ ๊ณผ์ •์„ ๊ฐ ๋‹จ๊ณ„๋ณ„๋กœ ๋‚˜๋ˆˆ ๊ฒƒ
ํ”„๋กœํ† ํƒ€์ž… ๋ชจํ˜•```: ์ดˆ๊ธฐ ๋ฒ„์ „์„ ๋น ๋ฅด๊ฒŒ ๋งŒ๋“ค์–ด ์‚ฌ์šฉ์ž ํ”ผ๋“œ๋ฐฑ์„ ํ†ตํ•ด ๋ฐ˜๋ณต์ ์œผ๋กœ ๊ฐœ์„ ํ•˜๋ฉฐ ์ตœ์ข… ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ฐœ๋ฐœํ•˜๋Š” ๋ฐฉ๋ฒ•๋ก 
์• ์ž์ผ ๋ชจํ˜•```: ์†Œํ”„ํŠธ์›จ์–ด๊ฐœ๋ฐœ์—์„œ ๋น ๋ฅธ ๋ฆด๋ฆฌ์Šค์™€ ์ง€์†์ ์ธ๊ฐœ์„ ์„ ์œ„ํ•ด ์งง์€ ๋ฐ˜๋ณต ์ฃผ๊ธฐ๋ฅผ ํ†ตํ•ด ์œ ์—ฐํ•˜๊ฒŒ ๋ณ€ํ™”์— ๋Œ€์‘ํ•˜๋ฉฐ ํ˜‘๋ ฅ์ ์œผ๋กœ ์ž‘์—…ํ•˜๋Š” ๋ฐฉ๋ฒ•๋ก 
์Šคํฌ๋Ÿผ```: ์• ์ž์ผ ์›์น™์„ ๋”ฐ๋ฅด๋ฉฐ, ์งง์€ ๋ฐ˜๋ณต ์ฃผ๊ธฐ์ธ ์Šคํ”„๋ฆฐํŠธ๋ฅผ ํ†ตํ•ด ํŒ€์ด ์ž์œจ์ ์œผ๋กœ ํ˜‘๋ ฅํ•˜์—ฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ณ , ์ง€์†์ ์ธ ํ”ผ๋“œ๋ฐฑ๊ณผ ๊ฐœ์„ ์„ ํ†ตํ•ด ํ”„๋กœ์ ํŠธ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ธฐ๋ฒ•
SM(Scrum Master)```: ์Šคํฌ๋Ÿผ์„ ์ž˜ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ฐ€์ด๋“œ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์‚ฌ๋žŒ
์Šคํ”„๋ฆฐํŠธ ๊ณ„ํš ํšŒ์˜```: backlog ์ค‘ ์ด๋ฒˆ ์Šคํ”„๋ฆฐํŠธ์—์„œ ์ˆ˜ํ–‰ํ•  ์ž‘์—…์„ ๋„์ถœํ•˜๊ณ  ๋‹จ๊ธฐ ์ผ์ •์„ ์ˆ˜๋ฆฝํ•˜๋Š” ํšŒ์˜, SM์ด ์ฃผ๊ด€
์ผ์ผ ์Šคํฌ๋Ÿผ ํšŒ์˜```: ๋งค์ผ ์•ฝ 15๋ถ„๊ฐ„ ์ง„ํ–‰ ์ƒํ™ฉ์„ ์ ๊ฒ€ํ•˜๊ณ , ๋‚จ์€ ์ž‘์—… ์‹œ๊ฐ„์„ ์†Œ๋ฉธ ์ฐจํŠธ์— ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•œ ํšŒ์˜
์Šคํ”„๋ฆฐํŠธ ํšŒ๊ณ ```: ์ •ํ•ด๋†“์€ ๊ทœ์น™ ์ค€์ˆ˜ ์—ฌ๋ถ€ ๋ฐ ๊ฐœ์„ ์ ์„ ํ™•์ธํ•˜๊ณ  ๊ธฐ๋กํ•˜๋Š” ์ž‘์—…
Pair Programming```: ๋‘ ๋ช…์˜ ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ํ•œ ์ปดํ“จํ„ฐ์—์„œ ํ•จ๊ป˜ ์ž‘์—…ํ•˜๋ฉฐ, ๊ฐœ๋ฐœ์— ๋Œ€ํ•œ ์ฑ…์ž„์„ ๊ณต๋™์œผ๋กœ ๋‚˜๋ˆ  ๊ฐ–๋Š” ํ™˜๊ฒฝ์„ ์กฐ์„ฑํ•˜๋Š” ๋ฐฉ์‹
Test-Driven Development```: ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋ฅผ ๋จผ์ € ์ž‘์„ฑํ•œ ๋’ค, ํ•ด๋‹น ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผ์‹œํ‚ค๊ธฐ ์œ„ํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ์‹
Continuous Integration```: ๋ชจ๋“ˆ ๋‹จ์œ„๋กœ ๊ฐœ๋ฐœ๋œ ์ฝ”๋“œ๋ฅผ ํ•˜๋‚˜์˜ ์ž‘์—…์ด ๋งˆ๋ฌด๋ฆฌ ๋  ๋•Œ๋งˆ๋‹ค ์ง€์†์ ์œผ๋กœ ํ†ตํ•ฉํ•˜๋Š” ๋ฐฉ์‹
Small Releases```: ๋ฆด๋ฆฌ์ฆˆ ๊ธฐ๊ฐ„์„ ์งง๊ฒŒ ๋ฐ˜๋ณตํ•˜์—ฌ, ๊ณ ๊ฐ์˜ ์š”๊ตฌ ๋ณ€ํ™”์— ์‹ ์†ํ•˜๊ฒŒ ๋Œ€์‘ํ•˜๋Š” ๋ฐฉ์‹
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(DBMS)```: ์‚ฌ์šฉ์ž์™€ DB ์‚ฌ์ด์—์„œ ์ •๋ณด ์ƒ์„ฑ๊ณผ DB ๊ด€๋ฆฌ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” SW
์˜คํ”ˆ์†Œ์Šค(Open Source)```: ์†Œ์Šค์ฝ”๋“œ๋ฅผ ๊ณต๊ฐœํ•œ ์†Œํ”„ํŠธ์›จ์–ด



## 2. ๊ทธ๋ฆผ์œผ๋กœ ์ดํ•ดํ•˜๋Š” ์„œ๋ฒ„ ๊ตฌ์กฐ์™€ ๊ธฐ์ˆ  ๐Ÿ“š
ํƒ€์›Œํ˜• ์„œ๋ฒ„```: PC๋ณด๋‹ค ์•ฝ๊ฐ„ ํฌ๋ฉฐ, ๋ฐ”๋‹ฅ์— ์ง์ ‘ ์„ค์น˜ํ•˜๋Š” ํƒ€์ž…์œผ๋กœ ์ž๋ฆฌ๋ฅผ ์ฐจ์ง€ํ•จ. ์†Œ๊ทœ๋ชจ ํ™˜๊ฒฝ์— ์ ํ•ฉ
๋ธ”๋ ˆ์ด๋“œํ˜• ์„œ๋ฒ„```: ๋ž™ ๋งˆ์šดํŠธํ˜• ์„œ๋ฒ„๋ฅผ ๋” ์–‡๊ฒŒ ๋งŒ๋“ค์–ด ์„œ๋ฒ„ ๊ธฐ๋Šฅ์ด ์žˆ๋Š” ๋‹ค์ˆ˜ ๋ธ”๋ ˆ์ด๋“œ๋ฅผ ์ธํด๋กœ์ €๋ผ๋Š” ์ผ€์ด์Šค์— ๋ผ์›Œ ๋„ฃ์€ ํ˜•ํƒœ. ๋Œ€๊ทœ๋ชจ ํ™˜๊ฒฝ์— ์ ํ•ฉ
ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ์‹œ์Šคํ…œ```: ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์„œ๋ฒ„์™€ ์„œ๋น„์Šค๋ฅผ ๋ฐ›๋Š” ํด๋ผ์ด์–ธํŠธ๋กœ ๊ตฌ์„ฑ๋œ ์‹œ์Šคํ…œ์„ ์˜๋ฏธ
OS(์šด์˜์ฒด์ œ)```: ํ•˜๋“œ์›จ์–ด๋ฅผ ์ œ์–ดํ•˜๋Š” ๊ธฐ๋ณธ ์†Œํ”„ํŠธ์›จ์–ด
์• ํ”Œ๋ฆฌ์ผ€์ด์…˜```: ์‚ฌ์šฉ์ž ๋ชฉ์ ์— ๋”ฐ๋ผ ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด
WAN(Wide Area Network)```: ๋„“์€ ์ง€์—ญ์— ๊ฑธ์ณ ๋ถ„์‚ฐ๋œ ๋„คํŠธ์›Œํฌ ์žฅ์น˜๋“ค์„ ์—ฐ๊ฒฐํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๊ณ  ์ž์›์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๋„คํŠธ์›Œํฌ
๋ฐฉํ™”๋ฒฝ```: ์ธํ„ฐ๋„ท์—์„œ ์˜ค๋Š” ๋ถ€์ •ํ•œ ์นจ์ž…์„ ๋ฐฉ์ง€ํ•˜๋Š” ๋„คํŠธ์›Œํฌ ๋ณด์•ˆ ์žฅ์น˜
๋ผ์šฐํ„ฐ```: ๋„คํŠธ์›Œํฌ ๊ฐ„ ๋ฐ์ดํ„ฐ ํŒจํ‚ท์„ ์ „์†กํ•˜๊ณ  ๊ฒฝ๋กœ๋ฅผ ๊ฒฐ์ •ํ•˜์—ฌ ์„œ๋กœ ๋‹ค๋ฅธ ๋„คํŠธ์›Œํฌ ๋˜๋Š” ์„œ๋ธŒ๋„ท ๊ฐ„์˜ ํ†ต์‹ ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ๋„คํŠธ์›Œํฌ ์žฅ์น˜
TCP/IP```: ๋„คํŠธ์›Œํฌ ํ†ต์‹ ์˜ ๊ธฐ๋ณธ ํ”„๋กœํ† ์ฝœ ๋ชจ์Œ. ๋ฐ์ดํ„ฐ ์ „์†ก์„ ์œ„ํ•œ TCP(์ „์†ก ์ œ์–ด ํ”„๋กœํ† ์ฝœ)์™€ IP(์ธํ„ฐ๋„ท ํ”„๋กœํ† ์ฝœ)๋กœ ๊ตฌ์„ฑ
MAC ์ฃผ์†Œ```: ๋„คํŠธ์›Œํฌ ์žฅ์น˜์˜ ๊ณ ์œ  ์‹๋ณ„์ž, ๋ฐ์ดํ„ฐ ๋งํฌ ๊ณ„์ธต์—์„œ ์žฅ์น˜๋ฅผ ์‹๋ณ„ํ•˜๋Š” 48๋น„ํŠธ ์ฃผ์†Œ
L3 ์Šค์œ„์น˜```: TCP/IP ๋„คํŠธ์›Œํฌ ๊ณ„์ธต์—์„œ ์Šค์œ„์นญ์— ์‚ฌ์šฉ๋˜๋Š” ์Šค์œ„์น˜๋ฅผ ์˜๋ฏธ

More to read

REST API

ํ”„๋ก ํŠธ์—”๋“œ์™€ ๋ฐฑ์—”๋“œ ์‚ฌ์ด

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

JWT

ํ† ํฐ ๊ด€๋ฆฌ ๋ฐฉ์‹ ํ†บ์•„๋ณด๊ธฐ

0. ๋“ค์–ด๊ฐ€๋ฉฐ ๐ŸŽฏ ์„œ๋น„์Šค์— ์ ‘๊ทผํ•˜๋ ค๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋ˆ„๊ตฌ์ธ์ง€ ํ™•์ธํ•˜๋Š” ๊ณผ์ •์„ ์‚ฌ์šฉ์ž ์ธ์ฆ์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ฃผ์–ด์ง„ ๊ถŒํ•œ์„ ํ™•์ธํ•˜๋Š” ์ž‘์—…์€ ์ธ๊ฐ€๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค. ์ด๋ฒˆ ๊ธ€์—์„œ๋Š” ์ธ๊ฐ€๋Š” ๋‹ค๋ฃจ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ธ์ฆ์—๋Š” ๋งŽ์€ ๋ฐฉ์‹์ด ์žˆ์ง€๋งŒ, ์˜ค๋Š˜์€ ์„ธ์…˜ ์ธ์ฆ ๋ฐฉ

A2A

A2A / MCP ๋ฉ€ํ‹ฐ ์—์ด์ „ํŠธ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜

0. ๋“ค์–ด๊ฐ€๋ฉฐ โœ๏ธ Google for Developers์—, ๋ ˆ์Šคํ† ๋ž‘ ๊ณต๊ธ‰๋ง ์‹œ๋‚˜๋ฆฌ์˜ค๋กœ ์—ฎ์€ 6๋Œ€ ํ”„๋กœํ† ์ฝœ(MCP, A2A, UCP, AP2, A2UI, AG-UI)์— ๋Œ€ํ•œ ๊ฐ€์ด๋“œ๊ฐ€ ๊ฒŒ์‹œ๋œ ์ดํ›„, MCP์™€ A2A๋ถ€ํ„ฐ ๊ตฌํ˜„ํ•ด ๋ณด๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ์Šต๋‹ˆ