์๋ ํ์ธ์, ๋ณํ์ ๋ฌผ๊ฒฐ๐ ์์์ ์ฌ๋ฌ๋ถ์ ๋น์ฆ๋์ค๊ฐ ์ด๋ป๊ฒ ์์กดํ๊ณ ์ง์ ์ฑ์ฅํ ์ ์์์ง ํจ๊ป ๊ณ ๋ฏผํ๋ ‘ci2u’์ ๋๋ค. ์ต๊ทผ IT ์ ๊ณ๋ฟ๋ง ์๋๋ผ ์ ์ฐ์ ๋ถ์ผ์์ ์ผํ๋ ๋ฐฉ์์ ๋ณํ์ ๋ํ ์ด์ผ๊ธฐ๊ฐ ๋จ๊ฒ์ต๋๋ค. ํนํ, ๋ง์ดํฌ๋ก์๋น์ค, ๋ฐ๋ธ์ต์ค, ์ ์์ผ, ๊ทธ๋ฆฌ๊ณ ํด๋ผ์ฐ๋์ ๊ฐ์ ํค์๋๋ค์ ์ด์ ์ ํ์ด ์๋ ํ์๊ฐ ๋์ด๊ฐ๊ณ ์์ฃ .
์ด ๋ชจ๋ ๋ณํ์ ํต์ฌ์ ๋จ ํ๋, ๋ฐ๋ก โ์์กด๊ณผ ์ง์ ์ฑ์ฅโ์ ๋๋ค. ์์ธกํ๊ธฐ ์ด๋ ค์ด ์์ฅ์์ ๋ ๋น ๋ฅด๊ณ ๋ฏผ์ฒฉํ๊ฒ ๊ณ ๊ฐ์ ์๊ตฌ์ ๋์ํ๊ณ , ํ์ ์ ์ธ ์ ํ๊ณผ ์๋น์ค๋ฅผ ์์ ์ ์ผ๋ก ์ ๊ณตํ๋ ๊ฒ. ์ด๊ฒ์ด ๋ฐ๋ก ์ฐ๋ฆฌ๊ฐ ์ด ๋ณต์กํ ๊ฐ๋ ๋ค์ ์ดํดํด์ผ ํ๋ ๊ทผ๋ณธ์ ์ธ ์ด์ ์ ๋๋ค.
์ด ๊ธ์์๋ ์ ์ผํ๋ ๋ฐฉ์์ ๋ณํ๊ฐ ํ์ํ์ง ์ญ์ฌ์ ๊ด์ ์์ ์ดํด๋ณด๊ณ , ์ด ๋ณํ๋ฅผ ์ด๋๋ ๋ค ๊ฐ์ง ํต์ฌ ์ถ์ธ ์ ์์ผ, ๋ง์ดํฌ๋ก์๋น์ค, ๋ฐ๋ธ์ต์ค, ํด๋ผ์ฐ๋์ ๋ณธ์ง๊ณผ ์ํธ ๊ด๊ณ๋ฅผ ๊น์ด ์๊ฒ ํํค์ณ ๋ณด๊ฒ ์ต๋๋ค. ์ด ๊ธด ๊ธ์ ๋ค ์ฝ๊ณ ๋๋ฉด, ์ด ๋ค ๊ฐ์ง ํค์๋๊ฐ ์ด๋ป๊ฒ ์ ๊ธฐ์ ์ผ๋ก ์ฐ๊ฒฐ๋์ด ๊ธฐ์ ์ ํ์ ์ ์ด๋์ด๋ด๋์ง ๋ช ํํ๊ฒ ์ดํดํ์ค ์ ์์ ๊ฒ๋๋ค.
1. ์ ์ผํ๋ ๋ฐฉ์์ ๋ณํ๊ฐ ํ์ํ๊ฐ? (WHY)
์ฐ๋ฆฌ๊ฐ ์ฌ๋ ํ๋ ์ฌํ์ ํน์ง์ ๋ ๊ฐ์ง๋ก ์์ฝํ ์ ์์ต๋๋ค. ๋ฐ๋ก ๋น ๋ฅธ ์๋์ ๋ถํ์ค์ฑ์ ๋๋ค.
1.1. ๋ฉ์ถ ์ ์๋ ๋ฐ์ ์ ๊ฐ์๋
์ธ๋ฅ ๋ฌธ๋ช ์ ๋ฐ์ ์๋๋ ์ฐ์ ํ๋ช ๊ณผ ์ปดํจํฐ ํ๋ช ์ ๊ฑฐ์น๋ฉฐ ๊ธฐํ๊ธ์์ ์ผ๋ก ๋นจ๋ผ์ก์ต๋๋ค. 1943๋ ์ต์ด์ ์ปดํจํฐ ‘์๋์ ’์ด ๋ฑ์ฅํ ์ดํ, ๋ถ๊ณผ ๋ช ์ญ ๋ ๋ง์ ์ธ์์ ์ด์ ๊ณผ๋ ๋น๊ตํ ์ ์์ ๋งํผ ๋ณํํ์ฃ . ๋ณํ์ ์๋๋ ๋ฉ์ถ์ง ์๊ณ ๋์ฑ ๊ฐ์ํ๋ ๊ฒ์ ๋๋ค. ์ด ์๋์ ์ ์ํ์ง ๋ชปํ๋ ์กฐ์ง์ด๋ ๊ธฐ์ ์ ํ์ฐ์ ์ผ๋ก ๋ํ๋ ์๋ฐ์ ์์ต๋๋ค.
1.2. ์์ธก ๋ถ๊ฐ๋ฅํ ์ธ์, ๋ถํ์ค์ฑ์ ์๋
20์ธ๊ธฐ ์ด, ์๋์ฑ ์ด๋ก ๊ณผ ์์์ญํ์ด ๋ฑ์ฅํ๊ธฐ ์ ๊น์ง ์ฌ๋๋ค์ ์ธ์์ ๋ชจ๋ ๊ฒ์ด ์ด๊ธฐ ์ ๋ณด์ ๋ฐฉ์ ์๋ง ์๋ค๋ฉด ์์ธก ๊ฐ๋ฅํ๋ค๊ณ ๋ฏฟ์์ต๋๋ค. ํ์ง๋ง ํ์ด์ ๋ฒ ๋ฅดํฌ์ ๋ถํ์ ์ฑ์ ์๋ฆฌ๋ ์ด ๋ฏฟ์์ ๊นจ๋จ๋ ธ์ต๋๋ค. ์ธ์์ ๋ ์ด์ ๊ฒฐ์ ๋ก ์ ์ธ๊ณ๊ฐ ์๋๋ฉฐ, ์ฐ๋ฆฌ๋ ๋จ์ง ํ๋ฅ ๋ก๋ง ๊ฐ๋ฅ์ฑ์ ์์ธกํ ์ ์๋ค๋ ๊ฒ์ ๊นจ๋ซ๊ฒ ๋์์ฃ .
๋น์ฆ๋์ค ์ธ๊ณ๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค. ๊ณผ๊ฑฐ์ฒ๋ผ 5๋ , 10๋ ์ง๋ฆฌ ์ฅ๊ธฐ ๊ณํ์ ์ฒ ์ ํ ์ธ์ฐ๋ ๊ฒ๋ง์ผ๋ก๋ ์์กดํ๊ธฐ ์ด๋ ต์ต๋๋ค. ์์ฅ๊ณผ ๊ณ ๊ฐ์ ์๊ตฌ๊ฐ ์ธ์ ์ด๋ป๊ฒ ๋ณํ ์ง ์ ์ ์๋ ๋ถํ์คํ ์ธ์์์๋, ๊ฐ์ฅ ์ฑ๊ณต ํ๋ฅ ์ด ๋์ ๋ฐฉ๋ฒ์ ๋์์์ด ์คํํ๊ณ ์ฐพ์๋ด๋ ๊ธฐ์ ๋ง์ด ์ด์๋จ์ ์ ์์ต๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, ๊ธ๋ณํ๊ณ ๋ถํ์คํ ์ธ์์์ ๊ธฐ์ ์ด ์์กดํ๊ณ ์ง์ ์ฑ์ฅํ๊ธฐ ์ํด์๋ ๋ณํ์ ๋ฏผ์ฒฉํ๊ฒ ์ ์ํ๊ณ ์ฑ๊ณต ํ๋ฅ ์ ๋์ผ ์ ์๋ ๋ฐฉ๋ฒ์ ์ฐพ์์ผ ํ๋ฉฐ, ์ด๋ ๊ณง ๊ทผ๋ณธ์ ์ธ ์ผํ๋ ๋ฐฉ์์ ๋ณํ๋ฅผ ์๊ตฌํฉ๋๋ค. ์ด ๋ณํ์ ํต์ฌ ๋๋ ฅ์ด ๋ฐ๋ก ์ ์์ผ, ๋ง์ดํฌ๋ก์๋น์ค, ๋ฐ๋ธ์ต์ค, ํด๋ผ์ฐ๋์ธ ๊ฒ์ ๋๋ค.
2. ๋ณํํ๋ ๊ธฐ์ ์ ๋ชจ์ต: ์กฐ์ง, ์๋ฒ, ์ฑ, ํ๋ซํผ ํธ๋ ๋
์ผํ๋ ๋ฐฉ์์ ๋ณํ๋ ๊ธฐ์ ์ ๋ค์ํ ์ธก๋ฉด์์ ๋์๋ค๋ฐ์ ์ผ๋ก ์ผ์ด๋๊ณ ์์ต๋๋ค. ์ต๊ทผ์ ๋ณํ ํธ๋ ๋๋ฅผ ๋ค ๊ฐ์ง ์ธก๋ฉด์์ ์ดํด๋ณด๋ฉด, ์ ๋ง์ดํฌ๋ก์๋น์ค๊ฐ ์ฃผ๋ชฉ๋ฐ๋์ง๋ฅผ ๋ ๋ช ํํ ์ ์ ์์ต๋๋ค.
2.1. ์กฐ์ง ๊ตฌ์กฐ์ ๋ณํ: ์ฌ์ผ๋ก(Silo)์์ ์ค์ฟผ๋(Squad)๋ก
๊ณผ๊ฑฐ์๋ ๋ง์ผํ , R&D, IT ๋ฑ ๊ธฐ๋ฅ๋ณ๋ก ๋๋ ๋๊ท๋ชจ ์ฌ์ผ๋ก(Silo) ์กฐ์ง์ด ์ผ๋ฐ์ ์ด์์ต๋๋ค. ํ์ง๋ง ์ด๋ ์ํต๊ณผ ํ์ ์ ํ๊ณ๊ฐ ์์๊ณ , ๋น์ทํ ์ ํ/์๋น์ค์ ์ค๋ณต ํฌ์ํ๋ ๋นํจ์จ์ ๋ณ์์ต๋๋ค.
์ด์ ๊ธฐ์ ๋ค์ ์ ํ/์๋น์ค ์ค์ฌ์ผ๋ก ๊ธฐํ์, ๊ฐ๋ฐ์, ์ด์์, ๋์์ด๋ ๋ฑ์ด 8~10๋ช ๊ท๋ชจ๋ก ๋ญ์น ๋ค๊ธฐ๋ฅ ์๊ท๋ชจ ์ค์ฟผ๋(Squad) ์กฐ์ง์ผ๋ก ๋ณํํ๊ณ ์์ต๋๋ค. ์ด ์ค์ฟผ๋๋ ์ ํ์ ๊ธฐํ๋ถํฐ ๊ฐ๋ฐ, ์ด์๊น์ง ๋ชจ๋ ๊ฒ์ ์ฑ ์์ง๋ฉฐ ๋ฏผ์ฒฉํ๊ฒ ์ ํ์ ๋ฐ์ ์์ผ ๋๊ฐ๋๋ค. ๊ตญ๋ด์ธ ๋น ํ ํฌ ๊ธฐ์ ๊ณผ ๊ธ์ต๊ถ์ ์ค์ฌ์ผ๋ก ํ๋ฐํ๊ฒ ์งํ๋๋ ๋ณํ์ ๋๋ค.
2.2. ์๋ฒ ๋จ์์ ๋ณํ: ๋ฌผ๋ฆฌ ๋จธ์ ์์ ์ปจํ ์ด๋(Container)๋ก
์๋ฒ ๋จ์๋ ์ ์ ๋ ์์์ง๊ณ ์์ต๋๋ค. ๋ฌผ๋ฆฌ ๋จธ์ โ ๊ฐ์ ๋จธ์ (VM) โ ์ปจํ ์ด๋์ ์์ผ๋ก ๋ง์ด์ฃ . 2013๋ ๋์ปค(Docker) ์ปจํ ์ด๋ ๊ธฐ์ ์ด ๋ฑ์ฅํ๋ฉด์, ์๋น์ค์ ํ์ํ OS, WAS, ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ์์ค๋ฅผ ํ๋์ ์ปจํ ์ด๋ ๋จ์๋ก ๋ฌถ์ด ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐฐํฌ ๋ฐ ์ด์์ด ๊ฐ๋ฅํด์ก์ต๋๋ค. ์ปจํ ์ด๋์ ํต์ฌ ๋ชฉ์ ์ ์์์ ํจ์จ์ ์ธ ์ฌ์ฉ์ ๋์ด, ์๋น์ค ์ํธ ๊ฐ์ ์ํฅ๋๋ฅผ ์์ ๋ ๊ฒ์ ๋๋ค.
2.3. ์ ํ๋ฆฌ์ผ์ด์ ๋จ์์ ๋ณํ: ๋ชจ๋๋ฆฌ์(Monolithic)์์ ๋ง์ดํฌ๋ก์๋น์ค(Microservice)๋ก
๊ณผ๊ฑฐ์ ‘์์คํ ’์ ์ฌ๋ฌ ์๋น์ค๊ฐ ํ๋๋ก ๋ญ์น ๋ชจ๋๋ฆฌ์(Monolithic) ์๋น์ค์์ต๋๋ค. ์ด ๊ตฌ์กฐ๋ ์๋น์ค ๊ฐ ์ํธ ์์กด์ฑ์ด ๋์, ์ฌ์ํ ๊ธฐ๋ฅ ๋ณ๊ฒฝ์๋ ์ ์ฒด ์์คํ ์ ์ฅ์ ๊ฐ ๋ฐ์ํ ์ํ์ด ์ปธ์ต๋๋ค. ๋ฐฐํฌ ์์๋ ์ ๊ธฐ๋ฅ์ ์ฒ ์ ํ ํ ์คํธํด์ผ ํ๋ ๊ธด์ฅ๊ณผ ๋นํจ์จ์ด ๋ฐ๋์ต๋๋ค.
๋ง์ดํฌ๋ก์๋น์ค๋ ์ด๋ฌํ ๋ฌธ์ ํด๊ฒฐ์ ์ํด ๋ฑ์ฅํ์ต๋๋ค. ๊ฑฐ๋ํ ์๋น์ค๋ฅผ ์๊ฒ ๋ถํ ํ๊ณ , ๊ฐ ์๋น์ค๊ฐ ์์ฒด์ ์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ฐ์ง๋ฉฐ API๋ก๋ง ํต์ ํ๊ฒ ํจ์ผ๋ก์จ ์๋น์ค ๊ฐ ์ํฅ๋๋ฅผ ์ต์ํํฉ๋๋ค. ์ด๋ฅผ ํตํด ๊ฐ ๋ง์ดํฌ๋ก์๋น์ค๋ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐฐํฌ, ๋ฒ์ ์ , ์ธ์คํด์ค ์ฆ๊ฐ์ด ๊ฐ๋ฅํด์ ธ ๋น์ฆ๋์ค ์๊ตฌ์ ํจ์ฌ ๋ฏผ์ฒฉํ๊ฒ ๋์ํ ์ ์๊ฒ ๋ฉ๋๋ค. ์ฆ, ๋ง์ดํฌ๋ก์๋น์ค๋ ์ปจํ ์ด๋์ ๋์ผํ๊ฒ ‘์๋น์ค ๊ฐ ์ํฅ๋ ์ต์ํ’๋ผ๋ ๋ชฉ์ ์ ๊ณต์ ํ๋ฉฐ, ์ปจํ ์ด๋ํ ๋์ด ์๋น์ค๋๋ ๊ฒ์ด ์ผ๋ฐ์ ์ ๋๋ค.
2.4. ์๋น์ค ํ๋ซํผ์ ๋ณํ: ์์ฒด ์์ ์์ ํด๋ผ์ฐ๋(Cloud)๋ก
ํด๋ผ์ฐ๋๊ฐ ์๋ ์์ ์๋ ๋ชจ๋ IT ์์(HW, SW, ์ธ๋ ฅ)์ ๊ธฐ์ ์ด ์์ ํด์ผ ํ์ต๋๋ค. ํด๋ผ์ฐ๋๋ ์ด ๋ชจ๋ ์์์ ์๋ํ์ฌ ์ฌ์ฉํ ์ ์๊ฒ ํด์ฃผ์์ต๋๋ค.
ํด๋ผ์ฐ๋์ ์ง์ ํ ๊ฐ์น๋ ๋จ์ํ ๋น์ฉ ์ ๊ฐ์ด๋ ์์ ์๋์ ์์ง ์์ต๋๋ค. ํด๋ผ์ฐ๋๋ ๋น์ฆ๋์ค ์์ด๋์ด๋ฅผ ๊ฒฝ์์ฌ๋ณด๋ค ๋จผ์ ์์ฅ์ ์ถ์ํ ์ ์๋๋ก, ํ๋์จ์ด ๊ตฌ๋งค/์ค์น์ ์์๋๋ ์๊ฐ์ ํ๊ธฐ์ ์ผ๋ก ๋จ์ถ์์ผ์ฃผ๋ ํ์ ํ๋ซํผ์ ๋๋ค. ๋น์ฆ๋์ค ์๊ตฌ์ ๋ฏผ์ฒฉํ๊ฒ ๋์ํ์ฌ ํ์ ์ ์ธ ์๋น์ค๋ฅผ ์ ์ํ๊ฒ ๋ง๋ค๊ณ ๋ฐ์ ์ํฌ ์ ์๋ ๊ฐ๋ ฅํ ๊ธฐ๋ฐ์ธ ๊ฒ์ ๋๋ค.
3. ์ผํ๋ ๋ฐฉ์ ๋ณํ ํ๋ ์์ํฌ์ ๋ค ๊ธฐ๋ฅ (HOW & WHAT)
๊ธฐ์ ์ ์์กด๊ณผ ์ง์ ์ฑ์ฅ์ ์ํด ํ์ํ ์ผํ๋ ๋ฐฉ์ ๋ณํ ํ๋ ์์ํฌ๋ ๋ค ๊ฐ์ง ์ถ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
์ด ๋ค ๊ฐ์ง๋ ์๋ก ๋จ์ด์ ธ ์กด์ฌํ๋ ๊ฐ๋ ์ด ์๋๋ผ, ์ ๊ธฐ์ ์ผ๋ก ์ฐ๊ฒฐ๋์ด์ผ ์๋์ง๋ฅผ ๋ ๋๋ค. ํนํ ๋ง์ดํฌ๋ก์๋น์ค๊ฐ ์ถํํ ๊ทผ๋ณธ์ ์ธ ๋ต์ ‘๊ธฐ์ ๊ณผ ์กฐ์ง์ ์์กด๊ณผ ์ง์ ์ฑ์ฅ’์ ์ํ ์ผํ๋ ๋ฐฉ์ ๋ณํ๋ฅผ ์คํํ๋ ๊ฐ์ฅ ์ฑ๊ณต ํ๋ฅ ์ด ๋์ ์๋จ ์ค ํ๋์ด๊ธฐ ๋๋ฌธ์ ๋๋ค.
4. ์ ์์ผ(Agile): ์ด๋ป๊ฒ ์ด ๊ฒ์ธ๊ฐ? (์ฌ์/์ฒ ํ)
์ ์์ผ์ ๋น๋จ ๊ธฐ์ ์ ์ผํ๋ ๋ฐฉ์๋ฟ๋ง ์๋๋ผ, ๋ถํ์คํ ์ธ์์ ์ด์๊ฐ๋ ์ฐ๋ฆฌ์ ์ถ์ ์์ธ์ด์ ์ฒ ํ์ด๋ผ๊ณ ํ ์ ์์ต๋๋ค.
4.1. ์ ์์ผ ํต์ฌ ์ฌ์: “M” – ๊ฐ์น, ์ํธ ์์ฉ, ๋ฐ๋ณต
์ ์์ผ์ ํต์ฌ์ ์ธ ๊ฐ์ง ์ํ๋ฒณ ‘M’์ผ๋ก ์์ฝํ ์ ์์ต๋๋ค.
- M1: ๋ฐธ๋ฅ ์ค๋ฆฌ์ํฐ๋ (Value-Oriented)
- ์ฐ๋ฆฌ๊ฐ ๋ง๋๋ ์ ํ/์๋น์ค์ ๊ฐ์น๊ฐ ์ ์ผ ์ค์ํ๋ฉฐ, ๊ทธ ๊ฐ์น๋ฅผ ์ ๊ณตํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ด๋ ๊ฒฐ๊ณผ๋ฌผ์ ์ํฉ ๋ณํ์ ๋ฐ๋ผ ์ ์ฐํ๊ฒ ๋ฐ๊ฟ ๋๊ฐ์ผ ํ๋ค๋ ์ฌ์์ ๋๋ค. ์ฐ๋ฆฌ์ ๋น์ ์ ๊ณ ์ํ๋ฉด์ ๋ฐฉ๋ฒ๊ณผ ๊ฒฐ๊ณผ๋ฌผ์ ๊ณผ๊ฐํ ๋ฐ๊พธ๊ฑฐ๋ ๋ฒ๋ฆด ์ ์์ด์ผ ํฉ๋๋ค. (๋๊ตฌ์ ํผ๋ณดํ ์ฒ๋ผ, ๊ฐ์น๋ผ๋ ํ ๋ฐ์ ๊ณ ์ ์ํค๊ณ ๋ฐฉ๋ฒ์ด๋ผ๋ ๋ค๋ฅธ ํ ๋ฐ์ ๊ณ์ ์ ํํ๋ ๊ฒ)
- M2: ์ธํฐ๋ํฐ๋ธ (Interactive)
- ์ ํ๊ณผ ์๋น์ค๋ฅผ ์ค์ฌ์ผ๋ก ๊ด๋ จ๋ ๋ชจ๋ ์ฌ๋(๋น์ฆ๋์ค, IT, ๊ณ ๊ฐ ๋ฑ)๋ค์ด ์ง์์ ์ธ ์๋ฐฉํฅ ์ํต์ ํด์ผ ํ๋ค๋ ์ฌ์์ ๋๋ค. ์ด๋ ‘๊ณตํต์ ๊ณต๊ฐ๊ณผ ์ดํด’๋ฅผ ์ํ ๊ฒ์ด๋ฉฐ, ๋ฐ๋ธ์ต์ค ๋ฌธํ์ ๊ทผ๊ฐ์ด ๋ฉ๋๋ค.
- M3: ์ดํฐ๋ ์ดํฐ๋ธ (Iterative)
- ํ ๋ฒ์ ํฐ ํฌ์๋ฅผ ํ๊ธฐ๋ณด๋ค, **์ต์ํ์ ๊ธฐ๋ฅ(MVP)**์ผ๋ก ์์ํ์ฌ ๋์์๋ ์คํ๊ณผ ํ์ต์ ๋ฐ๋ณตํ๋ฉด์ ์ ์ฐจ ์์ฑ๋๋ฅผ ๋์ฌ ๋๊ฐ์๋ ์ฌ์์ ๋๋ค. ๋ฆฐ์คํํธ์ , ์คํฌ๋ผ, ์นธ๋ฐ ๊ฐ์ ์ ์์ผ ๋ฐฉ๋ฒ๋ก ๋ค์ด ๊ณตํต์ผ๋ก ๊ฐ์กฐํ๋ ์ํ/๋ฐ๋ณต์ ์ผํ๋ ๋ฐฉ์์ ๋๋ค.
4.2. ์ ์์ผ ๋ฐฉ๋ฒ๋ก ๊ณผ ์ค์ง์ ์ธ ํ
์ด๋ฌํ ์ ์์ผ ์ฒ ํ์ ์คํํ๊ธฐ ์ํ ์ฒด๊ณ์ ์ธ ๋ฐฉ๋ฒ๋ก ์ผ๋ก๋ ๋ฆฐ์คํํธ์ (Lean Startup), ์คํฌ๋ผ(Scrum), **์นธ๋ฐ(Kanban)**์ด ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋ฉ๋๋ค.
- ๋ฆฐ์คํํธ์ : “Build Measure Learn”์ ์ฌ์ดํด์ ๋ฐ๋ณต์ ์ผ๋ก ์ํํ์ฌ, ์ด๊ธฐ์ ์ ์ ๋น์ฉ์ผ๋ก ์คํํจ์ผ๋ก์จ ์ ํ/์๋น์ค์ ์ฑ๊ณต ํ๋ฅ ์ ๋์ด๊ณ ๋ญ๋น๋ฅผ ์ค์ด๋ ๋ฐ ์ด์ ์ ๋ง์ถฅ๋๋ค.
- ์คํฌ๋ผ: ์ ํ/์๋น์ค๋ฅผ ๋ง๋ค๊ธฐ ์ํ ํ ์ผ(Product Backlog)์ 1~4์ฃผ ๋จ์์ **์คํ๋ฆฐํธ(Sprint)**๋ก ๋๋์ด ๋ฐ๋ณต ์ํํ๋ฉฐ, ๊ฐ ์คํ๋ฆฐํธ์ ์๊ฐ ์ ์ฝ์ ๋ก๋๋ค.
- ์นธ๋ฐ: ์งํ ์ค์ธ ์ผ(WIP, Work In Progress)์ ์๋ฅผ 3๊ฐ ์ดํ๋ก ์ ์ฝํ์ฌ, ํ์ฌ ํ๋ ์ผ์ ์ง์คํจ์ผ๋ก์จ ๋ ๋น ๋ฅด๊ณ ์์ฑ๋ ๋๊ฒ ์ผํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค. ์คํฌ๋ผ๊ณผ ๋ฌ๋ฆฌ ์๊ฐ ์ ์ฝ์ ์์ต๋๋ค.
๐ก ci2u์ ๊ฟํ: ์ด๋ค ๋ฐฉ๋ฒ๋ก ์ด ์ข์์ง๋ ํ์ ์ญ๋๊ณผ ์ํฉ์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค. ๋๋ ค์ ๋ง๊ณ ์คํฌ๋ผ๊ณผ ์นธ๋ฐ์ ์ฌ๋ฌ๋ถ์ ํ ํ๋ ์ด์ ์ ์ฉํด ๋ณด๊ณ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ํ๊ฐ/ํ์ตํ์ฌ, ํ์ ๊ฐ์ฅ ์ ๋ง๋ ์ต์ ์ ๋ฐฉ๋ฒ์ ์ฐพ์ ๋๊ฐ๋ ๊ฒ์ด ์ง์ง ์ ์์ผ์ ๋๋ค!
5. ๋ง์ดํฌ๋ก์๋น์ค(MSA)์ ๋ฐ๋ธ์ต์ค(DevOps): ์์ ๊ฒ๋ค์ ์ํ ์ (์๋จ/๋๊ตฌ)
๋ง์ดํฌ๋ก์๋น์ค์ ๋ฐ๋ธ์ต์ค๋ ๊ธฐ์ ์ ์์กด๊ณผ ์ง์ ์ฑ์ฅ์ ์คํํ๋ ๊ฐ์ฅ ์ฑ๊ณต ํ๋ฅ ์ด ๋์ ์๋จ๊ณผ ๋ฐฉ๋ฒ์ ๋๋ค.
5.1. ๋ง์ดํฌ๋ก์๋น์ค: 3S๋ฅผ ์ํ ์ํคํ ์ฒ
์ ๋ง์ดํฌ๋ก์๋น์ค๊ฐ ๊ฐ๋ ฅํ ์๋จ์ด ๋ ๊น์? ์ธ๊ณ์ ์ธ ์ ๋ต๊ฐ ์ฌ์ด๋จผ ์ฌ์ด๋ฅ์ ๊ณจ๋ ์ํด์ฒ๋ผ, ์ฐ๋ฆฌ๋ WHY๋ถํฐ ์์ํด์ผ ํฉ๋๋ค.
1) WHY: 3S (Speedy, Service Always, Save Cost)
- Speedy (๋น ๋ฅธ ์ ์ ๋์): ์์ฅ ๋ณํ์ ๋ง์ถฐ ๋จ๋ค๋ณด๋ค ๋จผ์ ์ ํ์ด๋ ์๋น์ค๋ฅผ ์ ๊ณต(Time to market)ํด์ผ ํฉ๋๋ค.
- Service Always (ํญ์ ์์ ์ ): ์ผ์์ ์ธ ์ฅ์ ๊ฐ ๋ฐ์ํด๋ ์๋น์ค๊ฐ ๋ฉ์ถ์ง ์๊ณ ์์ต ๊ธฐํ๋ฅผ ์์ง ์์์ผ ํฉ๋๋ค.
- Save Cost (๋น์ฉ ์ต์ ํ): ์์ ์์ธก์ ๋ฐ๋ผ ์๋ฒ ์์ ์ฌ์ฉ๋์ ์ ์ฐํ๊ฒ ์ฆ๊ฐ์์ผ ๋ถํ์ํ ๋ญ๋น๋ฅผ ์ค์ฌ์ผ ํฉ๋๋ค.
๋ง์ดํฌ๋ก์๋น์ค๋ ์ด 3S๋ฅผ ๋ณด์ฅํ์ฌ ๊ธฐ์ ์ ์ฑ๊ณต ํ๋ฅ ์ ๋์ด๋ ๋ฐ ๊ธฐ์ฌํฉ๋๋ค.
2) HOW: ๋ง์ดํฌ๋กํ, ๋ ๋ฆฝ์ , ์ดํฐ๋ ์ดํฐ๋ธ
- ๋ณต์กํ๊ณ ํฐ ๋ฌธ์ ๋ฅผ ๋๋์ด ํด๊ฒฐํ๋ค๋ ์ฒ ํ์ ๊ธฐ๋ฐํฉ๋๋ค. ํฐ ์๋น์ค๋ฅผ ์๊ฒ ์ชผ๊ฐ(๋ง์ดํฌ๋กํ) ๊ฐ ์๋น์ค๋ณ๋ก ์์ฅ ๋ณํ์ ๋์ํ๊ณ , ์๋ฒ๋ฅผ ์ฆ๊ฐ์ํค๋ฉฐ, ์ฅ์ ์ ํ๋ฅผ ๋ฐฉ์งํฉ๋๋ค.
- ๊ฐ ์๋น์ค๋ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฒ์ ์ /๋ฐฐํฌ/์ค์ผ์ผ๋ง์ด ๊ฐ๋ฅํด์ผ ํฉ๋๋ค.
- ์ต์ํ์ ๊ธฐ๋ฅ(MVP)์ผ๋ก ๋น ๋ฅด๊ฒ ์ถ์ํ๊ณ ์์ฅ ๋ฐ์์ ๋ฐ๋ผ ๊ณ์ ๋ฐ์ ์ํค๋ **์ดํฐ๋ ์ดํฐ๋ธ(๋ฐ๋ณต์ )**ํ ๋ฐฉ์์ผ๋ก ๊ฐ๋ฐ๋์ด์ผ ํฉ๋๋ค.
3) WHAT: MSA์ ๊ตฌ์ฑ ์์์ CCOP ๋ฌธ์ ํด๊ฒฐ
๋ง์ดํฌ๋ก์๋น์ค ๊ตฌํ์ ์ํด์๋ DDD(Domain Driven Design) ๊ฐ์ ์ค๊ณ ๋ฐฉ๋ฒ๋ก , MSA(Micro Service Architecture), ๊ทธ๋ฆฌ๊ณ MSA ํน์ฑ๊ณผ 12 Factors๊ฐ ํ์ํฉ๋๋ค. ํ์ง๋ง ๋ง์ดํฌ๋ก์๋น์ค๋ ํ์ฐ์ ์ผ๋ก 4๊ฐ์ง ํฐ ๋ฌธ์ (CCOP)๋ฅผ ๋ณ์ต๋๋ค.
- Complex (๋ณต์ก์ฑ): ์๋น์ค ๊ฐ์ ์ฆ๊ฐ๋ก ์ฐ๊ฒฐ ๋ฐ ํต์ ๊ฐ ๋ณต์กํด์ง.
- Consistency (์ผ๊ด์ฑ): ์์ฒด DB ๊ฐ ๋ฐ์ดํฐ ๋ถ์ผ์น ๋ฐ์ ๊ฐ๋ฅ์ฑ.
- Operational overhead (์ด์ ๋ถ๋ด): ๋ถ์ฐ๋ ์๋น์ค์ ํ ์คํธ, ๋ฐฐํฌ, ์ฅ์ ๊ด๋ฆฌ๊ฐ ๋ ์ด๋ ค์์ง.
- Performance (์ฑ๋ฅ): ์๋น์ค ๊ฐ ๋คํธ์ํฌ ํธ๋ํฝ ๋ฐ์์ผ๋ก ์ฑ๋ฅ ๊ฐ์.
์ด๋ฌํ CCOP ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด Service Mesh, CI/CD Pipeline, ํ ์คํธ ์๋ํ, ๋ก๊น /๋ชจ๋ํฐ๋ง ๋ฑ์ MSA ๊ธฐ์ ๊ณผ ๋ง์ดํฌ๋ก์๋น์ค ํจํด์ด๋ผ๋ ๋ฒ ์คํธ ํ๋ํฐ์ค๊ฐ ์ ์ฉ๋์ด์ผ ํฉ๋๋ค.
5.2. ๋ฐ๋ธ์ต์ค: ์ง์์ ์ธ ํ์ ์ ์ํ ๋ฌธํ
**๋ฐ๋ธ์ต์ค(DevOps)**์ ์์์ ๊ฐ๋ฐ(Dev) ์กฐ์ง๊ณผ ์ด์(Ops) ์กฐ์ง์ ๋ฒฝ์ ํ๋ฌด๋ ๊ฒ์ด์์ง๋ง, ํ์ฌ์ ์ง์ ํ ์๋ฏธ๋ **๊ณ ๊ฐ๊ณผ ๋น์ฆ๋์ค๋ฅผ ์ํ ์ง์์ ์ธ ํ์ ์ ์คํํ๋ ‘๋ฌธํ’**๋ฅผ ๋ง๋๋ ๊ฒ์ ๋๋ค. ์ฆ, ๋น์ฆ๋์ค ์กฐ์ง๊ณผ IT ์กฐ์ง์ ํ์ ์ ๊ฐํํ๋ ๊ฒ์ด ํต์ฌ์ ๋๋ค.
1) WHY: ๊ณ ๊ฐ๊ณผ ๋น์ฆ๋์ค๋ฅผ ์ํ ์ง์์ ์ธ ํ์ ์๋ํ๋ฅผ ํตํ ํธ์์ฑ์ด๋ ๋น์ฉ ์ ๊ฐ์ ๋ชฉํ๊ฐ ์๋๋ผ ์๋จ์ ๋๋ค. ์ง์ ํ ๋ชฉํ๋ ๊ณ ๊ฐ๊ณผ ๋น์ฆ๋์ค๋ฅผ ์ํ ์ง์์ ์ธ ํ์ ์ ๋๋ค.
2) HOW & WHAT: ์กฐ์ง ๊ตฌ์กฐ์ ์๋ํ
- ์กฐ์ง ๊ตฌ์กฐ ๋ณํ: ์ฝ์จ์ด์ ๋ฒ์น(“๋ชจ๋ ์์คํ ์ ๊ทธ ์กฐ์ง์ ์์ฌ์ํต ๊ตฌ์กฐ์ ๋์ผํ๊ฒ ๋ง๋ค์ด์ง๋ค.”)์ ๋ฐ๋ผ, ์ปค๋ฎค๋์ผ์ด์ ๊ณผ ํ์ ์ ์ ์ฐํ ์ค์ฟผ๋ ๊ธฐ๋ฐ์ ๋ฐ๋ธ์ต์ค ์กฐ์ง์ผ๋ก ๋ณํํฉ๋๋ค. (์: ์คํฌํฐํ์ด์ ์ค์ฟผ๋, ํธ๋ผ์ด๋ธ, ์ฑํฐ, ๊ธธ๋ ๋ชจ๋ธ)
- CI/CD ์๋ํ: ๋ฐ๋ธ์ต์ค ๋ฌธํ์ ์๋ช ์ธ ์คํผ๋์ ์ดํฐ๋ ์ด์ ์ ๊ฐ๋ฅํ๊ฒ ํ๊ธฐ ์ํด, ๊ฐ๋ฐ์์ ๊ฒฐ๊ณผ๋ฌผ์ด ์๋์ผ๋ก ํตํฉ(CI, Continuous Integration)๋๊ณ ๋ฐฐํฌ(CD, Continuous Deployment)๋๋ CI/CD ํ์ดํ๋ผ์ธ์ ๊ตฌ์ถํฉ๋๋ค. ์ด ํ์ดํ๋ผ์ธ์ ์ ํจ์ค, ์๋ฅด๊ณ CD, ๊นํ๋ธ ์ก์ ๋ฑ ๋ค์ํ **ํด์ฒด์ธ(Toolchains)**์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
6. ํด๋ผ์ฐ๋ ํ๋ซํผ: ์์ ์์ ์ด ๋ง๋๋ ๊ณณ (ํ์ ํ๋ซํผ)
์ผํ๋ ๋ฐฉ์ ๋ณํ ํ๋ ์์ํฌ์ ๊ธฐ๋ฐ์ ํด๋ผ์ฐ๋์ ๋๋ค. ํด๋ผ์ฐ๋๋ ํ์ ์ ์ธ ์๋น์ค๋ฅผ ๋น ๋ฅด๊ณ ์ ์ฐํ๊ฒ ๋ง๋ค๊ณ ๋ฐ์ ์์ผ๋๊ฐ๋ ‘๋ง๋จ์ ๊ณต๊ฐ’, ์ฆ ํ์ ํ๋ซํผ์ ๋๋ค.
6.1. ํด๋ผ์ฐ๋ ๋ถ๋ฅ: IaaS, PaaS, SaaS
ํด๋ผ์ฐ๋๋ ์์์ ์๋ ๋ฒ์์ ๋ฐ๋ผ ์ธ ๊ฐ์ง๋ก ๋ถ๋ฅ๋ฉ๋๋ค.
- IaaS (Infrastructure As A Service): H/W, OS ๋ฑ ์ธํ๋ผ ์์๋ง ์๋.
- PaaS (Platform As A Service): IaaS ์์ ๊ฐ๋ฐ/์ด์์ ํ์ํ ๋ฐํ์ ํ๊ฒฝ, CI/CD ํด ๋ฑ ํ๋ซํผ ์ ์ฒด๋ฅผ ์๋. (์ฟ ๋ฒ๋คํฐ์ค๊ฐ ๋ํ์ ์ธ PaaS์ ๋๋ค.)
- SaaS (Software As A Service): ์์ฑ๋ ์ํํธ์จ์ด ์์ฒด๋ฅผ ์๋ (์: ๊ทธ๋ฃน์จ์ด, ERP).
6.2. ์ปจํ ์ด๋์ ์ฟ ๋ฒ๋คํฐ์ค(K8s) ์ดํด
๋ง์ดํฌ๋ก์๋น์ค์ ๋ ๋ฆฝ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด ์ปจํ ์ด๋ ๊ธฐ์ ์ด ํ์์ ๋๋ค.
- ์ปจํ ์ด๋: ์ดํ๋ฆฌ์ผ์ด์ ๊ตฌ๋์ ํ์ํ OS, WAS, ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ์์ค๋ฅผ ํ๋๋ก ๋ฌถ์ด ์ด๋์๋ ๋์ผํ๊ฒ ์คํ๋๋๋ก ๊ฒฉ๋ฆฌํ๋ ๊ธฐ์ ์ ๋๋ค. ์ด ์ผ์ฒด์ฑ๊ณผ ์ด๋์ฑ ๋๋ถ์ ๊ฐ๋ฐ/๊ฒ์ฆ/์ด์ ํ๊ฒฝ ๊ฐ์ ๋ถ์ผ์น ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค. (๋์ปค, ์ปจํ ์ด๋๋, ํฌ๋ผ์ด์ค ๋ฑ์ด ์ปจํ ์ด๋ ์คํ ๊ธฐ์ ์ ๋๋ค.)
- ์ฟ ๋ฒ๋คํฐ์ค(Kubernetes, k8s): ๋์ปค๋ ํฌ๋ผ์ด์ค๊ฐ ํ๋์ ๋จธ์ ์์ ์ปจํ
์ด๋๋ฅผ ๊ด๋ฆฌํ๋ค๋ฉด, ์ฟ ๋ฒ๋คํฐ์ค๋ ์ฌ๋ฌ ๋จธ์ ์์ ์๋ง์ ์ปจํ
์ด๋(ํ๋)๋ฅผ ๊ด๋ฆฌํ๊ณ ํต์ ํ๋ ์ปจํ
์ด๋ ๊ด๋ฆฌ ํ๋ซํผ์
๋๋ค.
- ํต์ฌ ๋ฆฌ์์ค:
- ํ๋(Pod): ์ปจํ ์ด๋๋ค์ ๋ด๊ณ ์๋ ์ต์ ์คํ ๋จ์ (์์ ์๋ฒ).
- ์๋น์ค(Service): ํ๋๋ค์ ์ฌ์ฉ์ ์์ฒญ์ ๋ฐ๋ผ ๋ถ๋ฐฐ(๋ก๋๋ฐธ๋ฐ์ฑ) ํด์ฃผ๋ ๋ฆฌ์์ค.
- ์ธ๊ทธ๋ ์ค(Ingress): ์ธ๋ถ ํด๋ผ์ด์ธํธ์์ ์ฟ ๋ฒ๋คํฐ์ค Service๋ก ์ ๊ทผํ ์ ์๋ ์ฃผ์๋ฅผ ์ ๊ณตํ๊ณ ๊ฒฝ๋ก์ ๋ฐ๋ผ ๋ก๋๋ฐธ๋ฐ์ฑ ํด์ฃผ๋ ๊ฒ์ดํธ์จ์ด ์ญํ .
- ์ปจํผ๊ทธ๋งต(ConfigMap) / ์ํฌ๋ฆฟ(Secret): ์ดํ๋ฆฌ์ผ์ด์ ์ด ์ ์ฐํ๊ฒ ์ฌ์ฉํ ์ ์๋๋ก ํ๊ฒฝ ๋ณ์๋ฅผ ์ ์ํ๋ ๋ฆฌ์์ค (์ํธ๋ ํค ๋ฑ ์ค์ํ ์ ๋ณด๋ Secret ์ฌ์ฉ).
- ๋ํ๋ก์ด๋จผํธ(Deployment): ํ๋๋ฅผ ๋ฐฐํฌํ๊ณ ํต์ ํ๋ ์ํฌ๋ก๋ ์ปจํธ๋กค๋ฌ (์ผ๋ฐ์ ์ธ ์ดํ๋ฆฌ์ผ์ด์ ๋ฐฐํฌ ์ ์ฌ์ฉ).
- ํต์ฌ ๋ฆฌ์์ค:
7. ์์ฃผ ๋ฌป๋ ์ง๋ฌธ (FAQ)
8. ๊ฒฐ๋ก ๋ฐ ๋ค์ ํ๋ (Call to Action)

์ง๊ธ๊น์ง ์ฐ๋ฆฌ๋ ๊ธฐ์ ์ ์์กด๊ณผ ์ง์ ์ฑ์ฅ์ ์ํ ์ผํ๋ ๋ฐฉ์ ๋ณํ์ ๋ค ๊ฐ์ง ํต์ฌ ์ถ, ์ฆ ์ ์์ผ, ๋ง์ดํฌ๋ก์๋น์ค, ๋ฐ๋ธ์ต์ค, ํด๋ผ์ฐ๋๋ฅผ ๊น์ด ์๊ฒ ์ดํด๋ณด์์ต๋๋ค.
ํต์ฌ์ ์ด ๋ค ๊ฐ์ง๊ฐ ๋ชจ๋ ๊ธ๋ณํ๊ณ ๋ถํ์คํ ์ธ์์์ ๋ฏผ์ฒฉํ๊ฒ ๋์ํ๊ณ ์ฑ๊ณต ํ๋ฅ ์ ๋์ด๊ธฐ ์ํ ํ๋์ ์ ๊ธฐ์ ์ธ ํ๋ ์์ํฌ๋ฅผ ์ด๋ฃฌ๋ค๋ ๊ฒ์ ๋๋ค.
- ์ ์์ผ: ๋ณํ๋ฅผ ์์ฉํ๊ณ ๊ฐ์น๋ฅผ ์ค์ฌ์ ๋๋ ์ฌ๊ณ ๋ฐฉ์์ ๋๋ค.
- ๋ง์ดํฌ๋ก์๋น์ค & ๋ฐ๋ธ์ต์ค: ์ด ์ ์์ผ ์ฌ์์ ์ค์ ๋ก ๊ตฌํํ๋ ์๋จ๊ณผ ๋๊ตฌ์ ๋๋ค.
- ํด๋ผ์ฐ๋: ์ด ๋ชจ๋ ํ์ ์ ๋น ๋ฅด๊ณ ์ ์ฐํ๊ฒ ๊ฐ๋ฅํ๊ฒ ํ๋ ํ๋ซํผ ๊ธฐ๋ฐ์ ๋๋ค.
์ฌ๋ฌ๋ถ์ ์กฐ์ง์ด ์ด ์๋ก์ด ๋ณํ์ ๋ฌผ๊ฒฐ์ ๋จ์ํ ๊ธฐ์ ํธ๋ ๋๋ก๋ง ๋ณด์ง ์๊ณ , ์์กด์ ์ํ ๊ทผ๋ณธ์ ์ธ ์ฒด์ง ๊ฐ์ ์ผ๋ก ๋ฐ์๋ค์ด๊ธธ ๋ฐ๋๋๋ค. ์์ ์ค์ฟผ๋๋ฅผ ๋ง๋ค์ด ์ ์์ผํ๊ฒ ์์ง์ด๊ณ , ์๋น์ค๋ฅผ ๋ง์ดํฌ๋ก์๋น์ค๋ก ๋ถ๋ฆฌํ๋ฉฐ, ๋ฐ๋ธ์ต์ค ์๋ํ ํ๊ฒฝ์ ํด๋ผ์ฐ๋ ๊ธฐ๋ฐ ์์ ๊ตฌ์ถํ๋ ๊ฒ. ์ด๊ฒ์ด ๋ฐ๋ก ๋ฏธ๋ ๊ธฐ์ ์ ์์กด ๋ฐฉ์ ์์ ๋๋ค.
์ด ๊ธด ๊ธ์ ์ฝ์ผ์ ์ฌ๋ฌ๋ถ์ ์ด๋ฏธ ๋ณํ์ ์ต์ ์ ์ ์ ์์ต๋๋ค. ์ด์ ๋๋ ค์ํ์ง ๋ง๊ณ , ์ฌ๋ฌ๋ถ์ ๋น์ฆ๋์ค์ ์ด ํ๋ ์์ํฌ๋ฅผ ์ ์ฉํ ์ฒซ๊ฑธ์์ ๋ด๋์ด ๋ณด์ธ์! ์ฌ๋ฌ๋ถ์ด ์๊ฐํ๋ ํ์ ์ ์ฒซ ๋จ๊ณ๋ ๋ฌด์์ธ๊ฐ์? ๋๊ธ๋ก ํจ๊ป ์ด์ผ๊ธฐ ๋๋ ๋ด์!