๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์นดํ…Œ๊ณ ๋ฆฌ ์—†์Œ

์™œ ์„ฑ๊ณตํ•œ ๊ฐœ๋ฐœ์ž๋“ค์€ ์ด 5๊ฐ€์ง€ ์˜คํ”ˆ์†Œ์Šค ํ˜‘์—… ํˆด๋งŒ ๊ณ ์ง‘ํ• ๊นŒ?

by ์—์ด์—์Šค๋น„ํƒ€ 2025. 3. 19.
๋ฐ˜์‘ํ˜•

์„ฑ๊ณตํ•œ ๊ฐœ๋ฐœ์ž๋“ค์ด ์„ ํƒํ•œ ์˜คํ”ˆ์†Œ์Šค ํ˜‘์—… ํˆด

์˜คํ”ˆ์†Œ์Šค ํ˜‘์—… ํˆด์€ ํ˜„๋Œ€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์˜ ํ•ต์‹ฌ ์š”์†Œ๋กœ ์ž๋ฆฌ ์žก์•˜์Šต๋‹ˆ๋‹ค. ๋งŽ์€ ๊ฐœ๋ฐœ์ž๋“ค์ด ํŠน์ • ๋„๊ตฌ๋“ค์— ํŽธํ–ฅ๋˜์–ด ์žˆ๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ผ๊นŒ์š”? ์ด ๊ธ€์—์„œ๋Š” ์„ฑ๊ณตํ•œ ๊ฐœ๋ฐœ์ž๋“ค์ด ๊ณ ์ง‘ํ•˜๋Š” ๋‹ค์„ฏ ๊ฐ€์ง€ ์˜คํ”ˆ์†Œ์Šค ํ˜‘์—… ํˆด์— ๋Œ€ํ•ด ๊นŠ์ด ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

1. Git: ๋ฒ„์ „ ๊ด€๋ฆฌ์˜ ๊ธฐ๋ณธ

Git์€ ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๋ถ„์‚ฐ ๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(DVCS)์œผ๋กœ, ์†Œ์Šค ์ฝ”๋“œ ๋ณ€๊ฒฝ ์ด๋ ฅ์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ ๋›ฐ์–ด๋‚œ ์„ฑ๋Šฅ์„ ๋ฐœํœ˜ํ•ฉ๋‹ˆ๋‹ค. Git์˜ ํ•ต์‹ฌ ์žฅ์ ์€ ๋ถ„์‚ฐํ˜• ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค. ๊ฐ ๊ฐœ๋ฐœ์ž๋Š” ๋กœ์ปฌ์— ์ „์ฒด ํžˆ์Šคํ† ๋ฆฌ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ์–ด, ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ ์—†์ด๋„ ์ž‘์—…์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํŒ€์›๋“ค์ด ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๊ณต์œ ํ•˜๊ณ  ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ์ธ Linux ์ปค๋„์€ Git์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์šด์˜๋ฉ๋‹ˆ๋‹ค. Linus Torvalds๊ฐ€ ๊ฐœ๋ฐœํ•œ Git์€ ์ฝ”๋“œ์˜ ๋ณ€ํ™”๋ฅผ ์ถ”์ ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋ฉฐ, ์ด๋Š” ์ฝ”๋“œ ํ’ˆ์งˆ์„ ๋†’์ด๋Š” ๋ฐ ํฐ ๋„์›€์„ ์ค๋‹ˆ๋‹ค. Git์˜ ๋ธŒ๋žœ์น˜ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•˜๋ฉด ์—ฌ๋Ÿฌ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋™์‹œ์— ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๊ณ , ์ดํ›„ ์ด๋ฅผ ์‰ฝ๊ฒŒ ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

๋˜ํ•œ Git์€ ํ”Œ๋žซํผ ๊ฐ„์˜ ํ˜ธํ™˜์„ฑ ๋•๋ถ„์— Windows, macOS, Linux ๋“ฑ ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ๊ฐœ๋ฐœ์ž๋“ค์€ ์ตœ์ ์˜ ์ž‘์—… ํ™˜๊ฒฝ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. GitHub, GitLab๊ณผ ๊ฐ™์€ ์›๊ฒฉ ์ €์žฅ์†Œ ์„œ๋น„์Šค์™€ ๊ฒฐํ•ฉํ•˜๋ฉด ์ถ”๊ฐ€์ ์ธ ํ˜‘์—… ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํŒ€์›๋“ค๊ณผ์˜ ์‹œ๋„ˆ์ง€๋ฅผ ๊ทน๋Œ€ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

2. Jira: ํšจ์œจ์ ์ธ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ๋„๊ตฌ

Jira๋Š” Atlassian์—์„œ ๊ฐœ๋ฐœํ•œ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ ๋ฐ ์ด์Šˆ ์ถ”์  ๋„๊ตฌ๋กœ, Agile ๋ฐฉ๋ฒ•๋ก ์„ ์ง€์›ํ•˜๋ฉฐ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์˜ ๋ชจ๋“  ๋‹จ๊ณ„์—์„œ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด ๋„๊ตฌ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋ชจ๋“  ์ž‘์—…์„ ์ฒด๊ณ„์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค. Jira๋ฅผ ํ†ตํ•ด ์šฐ๋ฆฌ๋Š” ํ”„๋กœ์ ํŠธ์˜ ์ง„ํ–‰ ์ƒํ™ฉ์„ ์‰ฝ๊ฒŒ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํŒ€์›๋“ค๊ณผ์˜ ํ˜‘์—…์„ ์›ํ™œํ•˜๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

Jira์˜ ๊ฐ•๋ ฅํ•œ ๋ฆฌํฌํŠธ ๊ธฐ๋Šฅ์€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฒฝ์šฐ ์ด๋ฅผ ์‹ ์†ํ•˜๊ฒŒ ์ง„๋‹จํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฒ„๊ทธ ๋ฆฌํฌํŠธ, ์‚ฌ์šฉ์ž ์š”์ฒญ ๋“ฑ์„ ๋ถ„์„ํ•จ์œผ๋กœ์จ ์ด์Šˆ์˜ ์šฐ์„ ์ˆœ์œ„๋ฅผ ์ •ํ•˜๊ณ , ๋” ๋‚˜์€ ๊ฒฐ์ •์„ ๋‚ด๋ฆฌ๋Š” ๋ฐ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๊ด€๋ฆฌ์ž๊ฐ€ ํ”„๋กœ์ ํŠธ๋ฅผ ์ „๋ฐ˜์ ์œผ๋กœ ํ†ต์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

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

3. Slack: ์‹ค์‹œ๊ฐ„ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์˜ ์ตœ์ „์„ 

Slack์€ ํŒ€ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์˜ ํ˜์‹ ์„ ๊ฐ€์ ธ์˜จ ํ”Œ๋žซํผ์œผ๋กœ, ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ…, ํŒŒ์ผ ๊ณต์œ  ๋ฐ ํ†ตํ•ฉ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋งŽ์€ ๊ฐœ๋ฐœ์ž๋“ค์ด Slack์„ ์‚ฌ์šฉํ•˜์—ฌ ํŒ€์› ๊ฐ„์˜ ์›ํ™œํ•œ ์†Œํ†ต์„ ์ด๋Œ์–ด๋‚ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ์›๊ฒฉ ๊ทผ๋ฌด๊ฐ€ ๋ณดํŽธํ™”๋œ ์š”์ฆ˜, Slack์€ ํ•„์ˆ˜์ ์ธ ๋„๊ตฌ๋กœ ์ž๋ฆฌ ์žก๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํ”Œ๋žซํผ์˜ ๊ฐ•๋ ฅํ•œ ์ ์€ ๋‹ค์–‘ํ•œ ์ฑ„๋„์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์—ฐ์„ฑ์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ์™€ ๊ด€๋ จ๋œ ์ฑ„๋„์„ ์ƒ์„ฑํ•˜์—ฌ ๊ฐœ๋ฐœ์ž๋“ค ๊ฐ„์— ์ฃผ์ œ๋ณ„๋กœ ์†Œํ†ตํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋น„๊ณต์‹์ ์ธ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์„ ์œ„ํ•œ ์ฑ„๋„๋„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์–ด ํŒ€ ๊ตฌ์„ฑ์› ๊ฐ„์˜ ์œ ๋Œ€๊ฐ์„ ๊ฐ•ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ํŠนํžˆ ์ฐฝ์˜๋ ฅ์„ ๋ฐœํœ˜ํ•ด์•ผ ํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ์ค‘์š”ํ•œ ์š”์†Œ์ž…๋‹ˆ๋‹ค.

Slack์˜ ํ†ตํ•ฉ ๊ธฐ๋Šฅ ๋˜ํ•œ ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. GitHub, Trello, Google Drive ๋“ฑ ๋‹ค์–‘ํ•œ ๋„๊ตฌ์™€ ์—ฐ๋™ํ•  ์ˆ˜ ์žˆ์–ด ์ •๋ณด์˜ ํ๋ฆ„์„ ์›ํ™œํ•˜๊ฒŒ ํ•˜๊ณ , ๋ชจ๋“  ์ž‘์—…์„ ํ•œ๋ˆˆ์— ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ค๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, GitHub์˜ ์ปค๋ฐ‹ ์•Œ๋ฆผ์„ Slack ์ฑ„๋„์—์„œ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ฐ›์„ ์ˆ˜ ์žˆ์–ด ํŒ€์›๋“ค์€ ์„œ๋กœ์˜ ์ž‘์—…์„ ์ฆ‰๊ฐ์ ์œผ๋กœ ํ™•์ธํ•˜๊ณ  ํ”ผ๋“œ๋ฐฑ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

๊ฒฐ๊ตญ Slack์€ ํŒ€์›Œํฌ์™€ ์†Œํ†ต์„ ํ˜์‹ ์ ์ธ ๋ฐฉ์‹์œผ๋กœ ์žฌํŽธ์„ฑํ•˜์˜€์œผ๋ฉฐ, ๋งŽ์€ ๊ฐœ๋ฐœ์ž๋“ค์ด ์ด๋ฅผ ํ†ตํ•ด ์ƒ์‚ฐ์„ฑ์„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œํ‚ค๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์ฃผ ์‚ฌ์šฉํ• ์ˆ˜๋ก ํŒ€ ๋‚ด ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์„ ํšจ๊ณผ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ณ  ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ๊ฐ€ ๋Š˜์–ด๋‚ฉ๋‹ˆ๋‹ค.

4. Docker: ์ผ๊ด€๋œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ

Docker๋Š” ์ด์‹์„ฑ๊ณผ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๋ฉฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ์ปจํ…Œ์ด๋„ˆ ๊ฐ€์ƒํ™” ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. Docker์˜ ๊ฐ€์žฅ ํฐ ์žฅ์ ์€ ์–ด๋””์„œ๋‚˜ ๋™์ผํ•œ ํ™˜๊ฒฝ์œผ๋กœ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ๊ฐœ๋ฐœ์ž๋“ค์€ 'ํ™˜๊ฒฝ ๋ฌธ์ œ'๋ผ๋Š” ๊ณ ์งˆ์ ์ธ ๋ฌธ์ œ์—์„œ ๋ฒ—์–ด๋‚  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ ์šฉ ์‚ฌ๋ก€๋กœ๋Š”, ๋‹ค์–‘ํ•œ ์šด์˜ ์ฒด์ œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์„œ๋ฒ„ ํ™˜๊ฒฝ์—์„œ ๊ฐœ๋ฐœํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ Docker๋ฅผ ํ†ตํ•ด ์†์‰ฝ๊ฒŒ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ฐœ๋ฐœ์ž๊ฐ€ ๋กœ์ปฌ์—์„œ Ubuntu ํ™˜๊ฒฝ์—์„œ ์šด์˜๋˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•  ๋•Œ, Docker๋Š” ์ด๋ฅผ Windows ์„œ๋ฒ„์—์„œ๋„ ๋™์ผํ•˜๊ฒŒ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ผ๊ด€์„ฑ์€ ๊ฐœ๋ฐœ๊ณผ ์šด์˜ ๊ฐ„์˜ ๊ฒฉ์ฐจ๋ฅผ ์ค„์ด๋Š” ๋ฐ ๊ธฐ์—ฌํ•ฉ๋‹ˆ๋‹ค.

Docker๋Š” ๋˜ํ•œ ๋Šฅ๋ฅ ์ ์ธ ์ž์› ๊ด€๋ฆฌ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ•˜๋‚˜์˜ ์„œ๋ฒ„์—์„œ ์ปจํ…Œ์ด๋„ˆ ํ˜•ํƒœ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฌผ๋ฆฌ์  ์ž์›์˜ ํšจ์œจ์„ฑ์ด ํฌ๊ฒŒ ํ–ฅ์ƒ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์„œ๋ฒ„ ์ˆ˜๋ฅผ ์ค„์ด๊ณ  ์šด์˜ ๋น„์šฉ์„ ์ ˆ๊ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ์ž๋Š” Docker๋ฅผ ์‚ฌ์šฉํ•ด CI/CD(Continuous Integration/Continuous Delivery) ํ”„๋กœ์„ธ์Šค์—์„œ๋„ ์žฅ์ ์„ ๋ˆ„๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ๋•Œ๋งˆ๋‹ค Docker ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ์–ด ์•ˆ์ •์ ์ธ ์ฝ”๋“œ ๋ฐฐํฌ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋ฉด์„œ ์œ„ํ—˜๋„๋ฅผ ํฌ๊ฒŒ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

5. Visual Studio Code: ํŽธ๋ฆฌํ•œ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ

Visual Studio Code(VS Code)๋Š” ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์—์„œ ๊ฐœ๋ฐœํ•œ ๊ฒฝ๋Ÿ‰์˜ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ๋กœ, ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ์ง€์›ํ•˜๋ฉฐ ๋งŽ์€ ๊ฐœ๋ฐœ์ž๋“ค์ด ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค. ํŽธ๋ฆฌํ•œ ์ธํ„ฐํŽ˜์ด์Šค์™€ ํ’๋ถ€ํ•œ ํ™•์žฅ์„ฑ ๋•๋ถ„์— ๋งค์šฐ ์ธ๊ธฐ ์žˆ๋Š” ๋„๊ตฌ๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

VS Code์˜ ๊ฐ€์žฅ ํฐ ํŠน์ง• ์ค‘ ํ•˜๋‚˜๋Š” ๋‹ค์–‘ํ•œ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์„ ์‰ฝ๊ฒŒ ์„ค์น˜ํ•˜์—ฌ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, Python ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์‰ฝ๊ฒŒ ์„ค์น˜ํ•˜์—ฌ ํ™˜๊ฒฝ์„ ์ตœ์ ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋“ค์€ ์ž์‹ ์—๊ฒŒ ๋งž๋Š” ์ตœ์ƒ์˜ ์ž‘์—… ํ™˜๊ฒฝ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

VS Code์˜ IntelliSense ๊ธฐ๋Šฅ์€ ์ฝ”๋“œ ์ž๋™ ์™„์„ฑ๊ณผ ์˜ค๋ฅ˜ ๊ฐ์ง€๋ฅผ ์ง€์›ํ•˜์—ฌ ์ƒ์‚ฐ์„ฑ์„ ๋†’์ด๋Š” ๋ฐ ๋„์›€์„ ์ค๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ์ฝ”๋“œ๋ฅผ ๋น ๋ฅด๊ณ  ์ •ํ™•ํ•˜๊ฒŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ํŒ€์› ๊ฐ„์˜ ์ฝ”๋“œ ํ’ˆ์งˆ์„ ์‰ฝ๊ฒŒ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ฝ”๋“œ ๋ฆฌ๋ทฐ ์‹œ VS Code์˜ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๋‹ค๋ฅธ ํŒ€์›์˜ ์ฝ”๋“œ๋ฅผ ์ฆ‰์‹œ ์ดํ•ดํ•˜๊ณ , ํ”ผ๋“œ๋ฐฑ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ์†Œ์Šค ์ฝ”๋“œ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ์ด ๋‚ด์žฅ๋˜์–ด ์žˆ์–ด Git๊ณผ์˜ ํ†ตํ•ฉ์ด ๋งค์šฐ ๋งค๋„๋Ÿฝ์Šต๋‹ˆ๋‹ค. VS Code ๋‚ด์—์„œ ๋ฐ”๋กœ Git ์ปค๋ฐ‹์„ ํ•˜๊ณ , ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๊ฒ€ํ† ํ•˜๋ฉฐ, ๋ธŒ๋žœ์น˜ ๊ฐ„ ์ „ํ™˜์„ ์‰ฝ๊ฒŒ ํ•  ์ˆ˜ ์žˆ์–ด ๊ฐœ๋ฐœ๊ณผ ํ˜‘์—…์— ๋งค์šฐ ์œ ๋ฆฌํ•œ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ด ์™ธ์—๋„ ๋‹ค์–‘ํ•œ ํ…Œ๋งˆ์™€ ์‚ฌ์šฉ์ž ๋งž์ถคํ˜• ์„ค์ •์„ ํ†ตํ•ด ๊ฐœ์ธํ™”๋œ ํŽธ์ง‘ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๋ฏ€๋กœ ๋งŽ์€ ๊ฐœ๋ฐœ์ž๋“ค์ด ์ด๋ฅผ ์„ ํƒํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์œ ์—ฐ์„ฑ๊ณผ ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ ๋•๋ถ„์— VS Code๋Š” ๊ฐœ๋ฐœ์ž๋“ค ์‚ฌ์ด์—์„œ 'ํ‘œ์ค€'์œผ๋กœ ์ธ์ •๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฐ๋ก 

์ด๋ฒˆ ๊ธ€์—์„œ๋Š” ์„ฑ๊ณตํ•œ ๊ฐœ๋ฐœ์ž๋“ค์ด ์„ ํ˜ธํ•˜๋Š” ๋‹ค์„ฏ ๊ฐ€์ง€ ์˜คํ”ˆ์†Œ์Šค ํ˜‘์—… ํˆด์ธ Git, Jira, Slack, Docker, VS Code์— ๋Œ€ํ•ด ์‹ฌ์ธต์ ์œผ๋กœ ์‚ดํŽด๋ณด์•˜์Šต๋‹ˆ๋‹ค. ์ด ๋„๊ตฌ๋“ค์€ ๊ฐ๊ฐ์˜ ํšจ์œจ์„ฑ์„ ๊ทน๋Œ€ํ™”ํ•˜๋ฉฐ, ๊ฐœ๋ฐœ์ž๋“ค ๊ฐ„์˜ ํ˜‘์—…์„ ์›ํ™œํ•˜๊ฒŒ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ๋„๊ตฌ์˜ ํŠน์ง•๊ณผ ์žฅ์ ์„ ์ œ๋Œ€๋กœ ์ดํ•ดํ•˜๊ณ  ํ™œ์šฉํ•œ๋‹ค๋ฉด, ๊ฐœ๋ฐœ ๊ณผ์ •์—์„œ์˜ ์ƒ์‚ฐ์„ฑ์„ ํ•œ์ธต ๋” ๋†’์ผ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

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

์ž, ์ด์ œ ์ž์‹ ์—๊ฒŒ ๋งž๋Š” ๋„๊ตฌ๋ฅผ ์„ ํƒํ•˜๊ณ  ์ง„์ •ํ•œ ํ˜‘์—…์˜ ์„ธ๊ณ„๋กœ ๋‚˜์•„๊ฐ€ ๋ณด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค!

๋ฉ”ํƒ€ ์„ค๋ช…: ์„ฑ๊ณตํ•œ ๊ฐœ๋ฐœ์ž๋“ค์ด ์„ ํƒํ•œ 5๊ฐ€์ง€ ์˜คํ”ˆ์†Œ์Šค ํ˜‘์—… ํˆด์˜ ํ•ต์‹ฌ ํŠน์ง•๊ณผ ์žฅ์ ์„ ์‹ฌ์ธต์ ์œผ๋กœ ํƒ๊ตฌํ•˜๊ณ , ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํšจ์œจ์„ฑ์„ ๋†’์ด๋Š” ํŒ์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค.

#Git, #Jira, #Slack, #Docker, #VSCode, #ํ˜‘์—…ํˆด, #์†Œํ”„ํŠธ์›จ์–ด๊ฐœ๋ฐœ, #์˜คํ”ˆ์†Œ์Šค, #ํ”„๋กœ์ ํŠธ๊ด€๋ฆฌ, #๊ฐœ๋ฐœ์ž

๋ฐ˜์‘ํ˜•