์์ฆ ํ๋ก ํธ์๋ ๊ฐ๋ฐ์๋ค์ ๋ฝ๋ ์คํํธ์
์ด๋ ๊ธฐ์
๋ค์ ์ฑ์ฉ job description์์ ๋น ์ง์ง ์๊ณ ๋ฑ์ฅํ๋ ํ๊ฐ์ง ๋ฌธ๊ตฌ๊ฐ ์๋ค.
๋ฐ๋ก design system
์ ๊ดํ ๋ด์ฉ์ด๋ค. ๋๋ถ๋ถ design system์ ๊ฐ์ง๊ณ ์๊ณ (์๋์๋์๋ค..) ํ๋ก ํธ์๋ ๊ฐ๋ฐ์๊ฐ ๊ตฌ์ถ์ ํ ๊ฒ์ด๋ค.
๋ ๋ํ ํ์ฌ ์ฌ์ง์ค์ธ ํ์ฌ์์ ์์ฒด design system์ ๊ตฌ์ถํด์ ์ฌ์ฉํ๊ณ ์๊ณ ui์ ํต์ผ์ฑ์ ์ ์งํ๊ณ ์๋ค. ์ด๋ฒ ํฌ์คํ
์์๋ design system์ ๊ฐ๋ฐํ๋ฉด์ ๋๊ผ๋ (๊ฐ๋ฐ์์
์ฅ์์์) ๋ช๊ฐ์ง ์๊ฐ์ ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํ๋ค.
์ผ๋จ ๋๋ design system์ ๊ตฌ์ถํ๋ค๋๊ฒ ์์ฒด๊ฐ ์ข์ ์์์ ์ด ๋ ์ ์๋ค๊ณ ์๊ฐํ๋ค. ๊ฐ๋ฐ์์ ์
์ฅ์์ ์๊ฐํด๋ณด์์๋ ํต์ผ๋ ui๋ฅผ ๋ฐ๋ผ๋ณด๋๊ฒ์ด ์ผ๋ง๋ easy on eyes
ํ ๊ฒ์ธ์ง ์๊ฒ์ด๋ค.
ํนํ ์ฝ๋๋ฅผ ์์ฑํ๋ ์คํ์ผ์ด ๊ฐ ๊ฐ๋ฐ์๋ง๋ค ๊ฐ์๊ฐ์์ด๋ฏ๋ก ๋์ผํ ๋ฒํผ์ ๋ง๋ค๋ ๊ตฌํ๋ฐฉ์์ด ๋ฌ๋ผ์ง ์ ์๋ค. ์๋ฅผ๋ค์ด A ๊ฐ๋ฐ์๋ button
์ ์ฌ์ฉํ์ฌ semantic
ํ property๋ฅผ ๊ทธ๋๋ก ๊ฐ์ ธ๊ฐ๋ ค๊ณ ํ๋ ๋ฐ๋ฉด, B ๊ฐ๋ฐ์๋ div
์ :hover
๋ฅผ ์ด์ฉํด ๋ฒํผ ํํ๋ง ๊ตฌํํ๋๋ฐ ์ด์ ์ ๋ง์ถ ์๋ ์๋ค.
์ด๋ฐ ๋ฉด์์ ์ผ๋จ design system์ ๊ตฌ์ถํ๋ฉด ์ฝ๋์ ํต์ผ์ฑ๊ณผ ๊ฐ๊ฒฐ์ฑ์ ์งํฌ ์ ์๋ค. ๋ฌผ๋ก ๊ฐ๋ฐ ์ ์์ฑํ๊ฒ ๋๋ ์ฝ๋์ ์๋ ํ์ ํ๊ฒ ์ค์ด๋ค ๊ฒ์ด๋ค. ์ฐ๋ฆฌ๊ฐ ๋ง์ด ์ฌ์ฉ๋๋ ์ปดํฌ๋ํธ๋ฅผ ๊ณตํต ์ปดํฌ๋ํธ๋ก ๋ง๋ค์ด export
๋ก ์ฌ์ฉํ๋ฏ์ด button design system ์ปดํฌ๋ํธ ํ๋๋ก ์ธํด A์ B ๊ฐ๋ฐ์๋ ๋์ผํ ์คํ์ ๋์ผํ ๋ฒํผ์ ๋ช์ค ์๋๋ ์ฝ๋๋ก ์์ฑํ ์ ์์ ๊ฒ์ด๋ค. ์ฝ๋ ํต์ผ์ฑ์ ํด์น์ง ์์ผ๋ฉด์ ๋ง์ด๋ค.
๊ทธ ๋ค์์ผ๋ก design system์ ๋์
ํ๊ฒ ๋๋ฉด ๋์์ด๋์ ์๊ฐ์ ์ดํดํ๊ฒ ๋๋ค. ์ฌ์ค ํ๋ก ํธ์๋ ๊ฐ๋ฐ์๋ก ์
๋ฌด๋ฅผ ์งํํ๋ฉด์ ui/ux
๋ฅผ ๋ฐฐ์ ํ๊ณ ๊ฐ๋ฐ์ ํ ์๋ ์์ ๊ฒ์ด๋ค. ๊ทธ๋ฌํ ๋ฉด์์ ๋์์ด๋๋ค์ ํ์
ํ๋ ๊ฒ์ด ์ด์ฉ๋ฉด ํจ์จ์ฑ์๋ง ์ง์คํด ์๋ ๊ฐ๋ฐ์๋ค์ ์๊ฐ์ ์๋ก์ด ๊ด์ ์ ์น์ด์ค ์๋ ์๋ค. ์ค์ ๋ก ๋์์ด๋๋ค๊ณผ ํ์
์ ์งํํ๋ฉด์ ์๋๋ฆฌ์ค์ ์์ ๋ถ๋ถ์ด๋ผ๋ ui/ux
์ ์ผ๋ก user friendly
ํ๊ฒ ํ์ด๋ด๋ ๋์์ด๋๋ค์ ์์
๊ฒฐ๊ณผ๋ฌผ์ ๋ณด๋ฉด ๋ด๊ฐ ๊ฐ์ง๊ณ ์๋ ๋์์ธ์ ๊ฐ๋
์ด ์ผ๋ง๋ ๋ถ์กฑํ๋์ง ์์๋ ์ ์ด ๋ง๋ค.
๋์์ด๋๋ค์๊ฒ๋, ๊ฐ๋ฐ์๋ค์๊ฒ๋ ์๋ก ํ์
ํ๋ฉด์ ์๋ก์ ์๋ก์ด ๊ด์ ์ ๋ฐฐ์ธ ์ ์๋ win-win
์์
์ด ๋ ์ ์๋ค.
๋ํ design system ์ปดํฌ๋ํธ๋ฅผ ๊ฐ๋ฐํ๋ฉด์ library
๋ก ์ฝ๊ฒ ์ฝ๊ฒ ๊ฐ์ ธ์์ ์ฌ์ฉํ ์ปดํฌ๋ํธ๋ค์ ๊ตฌํ๋ฐฉ์๊ณผ ๋์์ ์ง์ ๊ตฌํํ ๊ฒฝ์ฐ ๋ง์ ๊ณต๋ถ๊ฐ ๋๊ธฐ๋ ํ์๋ค.
ํนํ modal
์ ์ง์ ๊ตฌํํ๋ฉด์ createPortal
์ด๋ผ๋ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๊ฑฐ๋, group check box
๋ฅผ ๊ตฌํํ๋ฉด์ ์ค์ raw-level
์ react element
๋ฅผ controlํด๋ณด๋ ๋ฑ์ ์์
์ด ๊ทธ๋ ๋ค. ์ด ๋ถ๋ถ์ ํ์ฌ๋ง๋ค, ๊ทธ๋ฆฌ๊ณ ๊ฐ๋ฐ์์ ์คํ์ผ๋ง๋ค ๋ค๋ฅด๊ฒ ์ง๋ง ์ปดํฌ๋ํธ๋ฅผ ๊ฐ๋ฐํ ๋ ๋ค๋ฅธ library
๋ฅผ ๊ฐ์ ธ์ค์ง ์๊ณ ์ง์ ๊ตฌํํด๋ณด๋ฉด์ ๊ฐ๋ฐ ์ค๋ ฅ์ ํฅ์ ์ํฌ ์ ์๋ ๊ณ๊ธฐ๊ฐ ๋๊ธฐ๋ ํ๋ค. ๋ฌผ๋ก ํ์ํ ๋ถ๋ถ์ ๊ฐ์ ธ๋ค ์ฐ๋๊ฒ์ด ๋น์ฉ์ ์ผ๋ก ๋ ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ์ผ์๋ ์์ํ
๋ ์ด๋ ์ํฉ์ ๋ฐ๋ผ ์ ์ ํ๊ฒ ์ ํํ๋ฉด ๋๊ฒ ๋ค. (ํ์ง๋ง ๋๋ ์ง์ ๊ตฌํํด๋ณด๋๊ฒ์ ์ถ์ฒ). ๋น์ทํ ๋งฅ๋ฝ์์ design system์ ๋ง๋ค๋์ ํ์ํ ๋ค์ํ tool
์ ์ ํ ์ ์๋ ๊ธฐํ๋ ๋์๋ค. figma
, framer
, zeplin
, storybook
๋ฑ design system์ ๊ฐ๋ฐํ๋๋ฐ ์ด๋์ ๋ 100%๋ ์๋์ง๋ง ์ ํํ๋ tool
์ด๋ application
๋ค์ด ์๊ธฐ ๋๋ฌธ์ ์ด๋ฅผ ์ฌ์ฉํด๋ณผ ์ ์์๋ค.

๋ ๋ํ design system์ ๊ตฌ์ถํ๋ฉด์ storybook
์ ์ฒ์ ์ฌ์ฉํด๋ณด์๊ณ , ์ง๊ธ๋ ์ฌ์ฉ์ค์ด๋ค.
์ด๋ ๊ฒ ๋ณด๋ฉด ์๋ก์ด๊ฒ์ ๋์
ํ๊ณ ํจ์จ์ ์ผ๋ก ๊ฐ๋ฐํ ์ ์๊ณ , ๊ฐ๋ฐ๋ฅ๋ ฅ ํฅ์์๋ ๋์์ด ๋๋ design system์ ๋์
ํ์ง ์์ ์ด์ ๊ฐ ์๋ค๊ณ ์๊ฐํ์ง๋ง ๊ฒฐ์ฝ ์ฅ์ ๋ง ์๋๊ฒ์ ์๋๋ค.
์ฒซ๋ฒ์งธ๋ก ์ปค๋ฎค๋์ผ์ด์
๋น์ฉ์ด ๊ฝค ๋ง์ด ๋ ๋ค๋ ์ ์ ๋ค์ ์๊ฒ ๋ค. ์์๊ฒ ํ๋๊ฐ ๋ณ๊ฒฝ๋๋๋ผ๋ ๋์์ด๋์ ๊ฐ๋ฐ์ ๋ชจ๋ ํ์๋ฅผ ๊ฑฐ์ณ์ผํ๊ณ (์ถํ align ๋์ง ์์ ์๋ก ์ํ๋ ์ฌํ๋ฅผ ๋ง๊ธฐ์ํด), ๋์์ด๋๋ค์ ์์ฃผ ์์ 1px
์ด๋ผ๋ ๋ณ๊ฒฝ์ด ๋ ๊ฒฝ์ฐ ๊ฐ๋ฐ์๋ค์๊ฒ ์ด๋ฅผ ์์ ํด๋ฌ๋ผ๊ณ ์์ ์์ฒญ์ ํด์ผํ๋ค. ์๊ฐ๋ณด๋ค ์ด๋ ๊ฒ ๋์์ธ๊ณผ ๊ฐ๋ฐํํฉ์ ๊ณต์ ํ๋๊ฒ์ด ์๊ฐ๊ณผ ๋
ธ๋ ฅ์ด ๋ง์ด ๋ค์๋ค. (ํ์ฌ๋ ๋ค๊ณ ์๋ค). ๋ช๋ช
์ฉ ๋ชจ์ฌ์ ์งํ์ ํ๋๋ผ๋ ๊ฒฐ๊ตญ ๋ค๊ฐ์ด ๊ณต์ ๊ฐ ๋์ด์ผํ๊ธฐ ๋๋ฌธ์ ์๊ฐ์ด ๋๋๊ฑด ๋์ผํ๋ค.
์ด๋ฌํ ๋
ธ๋ ฅ์ ๊ณผ์ ์ด ์์ด ์ข์ ๊ฒฐ๊ณผ๋ฌผ์ ๋ฐ๋ผ๋๊ฒ ์์ฒด๊ฐ ์์ด๋ฌ๋์ผ ์ ์์ผ๋ ํจ์จ์ฑ ์ฆ๋๋ฅผ ์ํ ํฌ์๋ฅผ ํ๋๊ฒ์ด๋ผ๊ณ ์๊ฐํ์.
๊ทธ ๋ค์์ ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ํ ๋ ์ ์ํด์ผํ๋ค๋ ๊ฒ์ด๋ค. ์ฌ์ค ์ด๋ถ๋ถ์ ํ์ฌ๋ง๋ค, ์กฐ์ง๋ง๋ค ๋ฌ๋ผ์ง ์ ์์ง๋ง ๋์ ๊ฒฝ์ฐ ํ์ฌ npm
์ ์ด์ฉํด ํจํค์ง ๋ฐฐํฌ๋ฅผ ํ๊ณ ์์ผ๋ฉฐ, local
, pre-release
, live
์ธ๊ฐ์ง ๋ฐฐํฌ ๋จ๊ณ๊ฐ ์กด์ฌํ๋ค (์ฉ์ด๋ ์ํฉ์ ๋ฐ๋ผ ๋ค๋ฅผ ์ ์์ ๊ฒ์ด๋ค).
local
์ ๋ก์ปฌ์์
ํ ๋ฐฐํฌํ๋๊ฒ์ด๋ฉฐ, pre-release
๋ @next
ํ๊ทธ๋ฅผ ๋ถ์ด๋ ๋จ๊ณ์ด๊ณ , live
๊ฐ ์ค์ ์ด์์ด ๋๋ ๋ฐฐํฌ๋จ๊ณ์ด๋ค. ์ด๋ ๊ฒ ๋ง์ ๋จ๊ณ์ ๋ฐฐํฌ๊ฐ ์๊ณ , ์ด์ ๊ฐ๊ฐ ๋ค๋ฅธ feature
๋ค์ด ๊ฐ๋ฐ๋์ด ์๊ธฐ ๋๋ฌธ์ ๋ง์ ๋ฒ์ ์์์ ๊ฐ๋ฐ์๋ค๋ผ๋ฆฌ ์ํตํ๋ ๋ ํ๋์ ๊ด๋ฆฌ ํฌ์ธํธ๊ฐ ๋ฐ์ํ๋ค. ์ต์ ๋ฒ์ ์ด ๋ฐฐํฌ๋์ง ํ์ฐธ ์ง๋ฌ๋๋ฐ ํ๋ฌ ์ ๋ฒ์ ์ ์ฌ์ฉํ ์๋ ์๋ ๊ฒ์ด๋ค.
์ฌ์ค ์ด๋ฐ๋ถ๋ถ์ ๊ตณ์ด design system์ ๊ฐ๋ฐํ๋ ํ๋ก์ ํธ๊ฐ ์๋๊ณ ๋ค๋ฅธ ์ผ๋ฐ์ ์ธ ์๋น์ค๋ฅผ ๊ฐ๋ฐํ ๋์๋ ์ถฉ๋ถํ ๊ณ ๋ คํด์ผํ๋ ํ๋ค์ด๋ฏ๋ก ์ด๊ฒ์ด ๋จ์ ์ด ๋ง๋์ง๋ ๋ชจ๋ฅด๊ฒ ์ง๋ง, design system์ ๊ฐ๋ฐํ๋ฉด์ ๋ด๊ฐ ์ง์ ๋๋ ๋ถ๋ถ์ด๋ผ ์ด๋ ๊ฒ ์ ์ด๋ณธ๋ค.
๊ฒฐ๋ก ์ ๋ด๋ณด์๋ฉด design system์ ๊ฐ๋ฐํ๋๊ฒ์ ๊ฐ์ธ์ ์ผ๋ก ๊ฐ๋ฐ์ ํจ์จ์ฑ์ด๋ ๋์์ด๋์ ํต์ผ๊ฐ, ๊ทธ๋ฆฌ๊ณ ์ฌ๋ฌ ๊ธฐ์ ๋ค์ ๊ฒฝํํด ๋ณผ์ ์๋ ๊ธฐํ๊ฐ ๋๋ค๋ ๊ฒ๊น์ง ํตํ์ด ์ถ์ฒํ ๋งํ ํ๋ก์ ํธ๋ผ๊ณ ์๊ฐํ๋ค. ์ฌ์ค ์์์๋ ๊ฐ๋ฐ๊ณผ ์ปค๋ฎค๋์ผ์ด์
์ ํฌ์ปค์คํ ๋ด์ฉ์ด ๋๋ถ๋ถ์ด์ง๋ง ์ด ์ธ์๋ ์ ์๊ถ์ด๋ผ๋์ง, ์ด์์ด๋ผ๋์ง ๋ฑ์ ๋ถ์์ ์ผ๋ก ๊ณ ๋ คํด์ผํ ์ฌํญ์ด ๋ถ๋ช
ํ ๊ทธ๋ฆฌ๊ณ ๋ง์ด ์กด์ฌํ ๊ฒ์ด๋ค. ์ด๋ฌํ ๋ถ๋ถ์ ๋ค์์ ํ๋ฒ ๋ ํ๋ก์ ํธ์์ ๊ฒช๊ฒ๋๋ฉด ํ๊ณ ํด๋ณด๋๋ก ํ๊ฒ ๋ค. ๊ฐ์ธ์ ์ผ๋ก ๋์์ธ์ ์ํ๋ ๊ฐ๋ฐ์๊ฐ ๋๊ณ ์ถ๊ธฐ ๋๋ฌธ์ ์ด ๋ํ ์ข์ ๊ฒฝํ์ด๋ผ๊ณ ์๊ฐํ๋ค. ์์ผ๋ก๋ ๋ง์ ๋ถ๋ถ์ systemํ ์ํค๋ฉฐ ํจ์จ์ ์ธ ๊ฐ๋ฐ์ ํ๊ณ ์ถ๋ค.