[๋„ค์ด๋ฒ„ํŒŒ์ด๋‚ธ์…œ] 2023 ๋„ค์ด๋ฒ„ํŒŒ์ด๋‚ธ์…œ Winter Dev Internship (์ฑ„์šฉ์—ฐ๊ณ„ํ˜•)

โ›”๏ธ ์ด ๊ณต๊ณ ๋Š” ๋งˆ๊ฐ๋œ ๊ณต๊ณ  ํ˜น์€ ๋น„๊ณต๊ฐœ์ž…๋‹ˆ๋‹ค


2023 ๋„ค์ด๋ฒ„ํŒŒ์ด๋‚ธ์…œ ๊ฐœ๋ฐœ ์ธํ„ด์‹ญ

๊ฐ„ํŽธ๊ฒฐ์ œ ์„œ๋น„์Šค 1์œ„ ๋„ค์ด๋ฒ„ํŽ˜์ด๋ถ€ํ„ฐ ํ˜์‹ ์ ์ธ ๊ธˆ์œต ์„œ๋น„์Šค๊นŒ์ง€, ํ•€ํ…Œํฌ์˜ ์ƒˆ๋กœ์šด ์žฅ์„ ์—ด์–ด๊ฐ€๋Š” ๋„ค์ด๋ฒ„ํŒŒ์ด๋‚ธ์…œ๊ณผ ํ•จ๊ป˜ ์„ฑ์žฅํ•  ์‹ ์ž… ๊ฐœ๋ฐœ์ž๋ฅผ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค.

๊ณตํ†ต ์ž๊ฒฉ์š”๊ฑด

โ€ข ๋Œ€ํ•™๊ต(ํ•™์‚ฌ) ๊ธฐ ์กธ์—…์ž ๋˜๋Š” 23๋…„ 2์›”, 8์›” ์กธ์—…์˜ˆ์ •์ž

โ€ข ๊ธˆ์œต, ํ•€ํ…Œํฌ ๋ถ„์•ผ์— ๊ด€์‹ฌ์ด ์žˆ๊ณ  ๊ฐœ๋ฐœ์„ ์ข‹์•„ํ•˜๋Š” ๋ถ„


๋ชจ์ง‘๋ถ€๋ฌธ ๋ฐ ๋‚ด์šฉ

Back-End ๊ฐœ๋ฐœ

์—…๋ฌด๋‚ด์šฉ

โ€ข ๋„ค์ด๋ฒ„ํŽ˜์ด์˜ ๊ฒฐ์ œ, ์ปค๋จธ์Šค(์ฃผ๋ฌธ), ์†ก๊ธˆ, ๊ธˆ์œต ์ œํœด, ์˜คํ”„๋ผ์ธ ๋ฐ ๊ธ€๋กœ๋ฒŒ ๊ฒฐ์ œ ํ”Œ๋žซํผ์˜ ๋ฐฑ์—”๋“œ ๋ฐ API ๋“ฑ ๊ฐœ๋ฐœ

โ€ข ๋Œ€์šฉ๋Ÿ‰ ํŠธ๋žœ์žญ์…˜ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ํ”Œ๋žซํผ ์„ค๊ณ„ ๋ฐ ๊ตฌํ˜„ ์—…๋ฌด

โ€ข ์•ˆ์ •์ ์ด๊ณ  ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ํ”Œ๋žซํผ ์„ค๊ณ„ ๋ฐ

์ž๊ฒฉ์š”๊ฑด

โ€ข Java ์–ธ์–ด ํ•™์Šต ๊ฒฝํ—˜์ด ์žˆ๊ฑฐ๋‚˜ ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข ์ž๋ฃŒ๊ตฌ์กฐ, ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฐ ํ”„๋กœ๊ทธ๋žจ ์„ค๊ณ„ ์ˆ˜์—…์ด๋‚˜ ์™ธ๋ถ€ ๊ต์œก์„ ์ด์ˆ˜ํ•œ ๋ถ„

โ€ข web ์„œ๋น„์Šค์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ์— ๋Œ€ํ•ด ์ดํ•ดํ•˜๊ณ  ๊ณ„์‹  ๋ถ„

์šฐ๋Œ€์‚ฌํ•ญ

โ€ข Spring Boot ๋ฐ Spring Cloud ๋ฅผ ํ™œ์šฉํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข Kafka, MQ ๋“ฑ ๋ฉ”์„ธ์ง€ ํ”Œ๋žซํผ์„ ํ™œ์šฉํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข Kotlin ๋ฐ coroutine ํ•™์Šต ๋˜๋Š” ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

๊ฐœ๋ฐœํ™˜๊ฒฝ

โ€ข ์ฃผ์š”๊ธฐ์ˆ  : Spring, Kafka, Kubernetes, Docker

โ€ข ์‚ฌ์šฉ์–ธ์–ด : Java, Kotlin

โ€ข ์—…๋ฌด๋„๊ตฌ : Github Enterprise, Confluence(wiki)


Front-End ๊ฐœ๋ฐœ

์—…๋ฌด๋‚ด์šฉ

โ€ข ๋„ค์ด๋ฒ„ํŽ˜์ด์˜ ์ฃผ๋ฌธ/๊ฒฐ์ œ/ํฌ์ธํŠธ/ํ˜œํƒ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ

โ€ข ๋‚ด์ž์‚ฐ/์ˆ˜์ž…์ง€์ถœ/์†ก๊ธˆ/์‹ ์šฉ๊ด€๋ฆฌ/๋Œ€์ถœ/๋ณดํ—˜/์ฆ๊ถŒ/๋ถ€๋™์‚ฐ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ

์ž๊ฒฉ์š”๊ฑด

โ€ข Javascript(์ตœ์†Œ ES5 ์ด์ƒ) ๊ธฐ๋ณธ ์ง€์‹์„ ๋ณด์œ ํ•œ ๋ถ„

โ€ข CS ๊ธฐ๋ณธ ์ง€์‹์„ ๋ณด์œ ํ•œ ๋ถ„

โ€ข HTML/CSS๋ฅผ ์ดํ•ดํ•˜์—ฌ ์—…๋ฌด์—์„œ ํ™œ์šฉ์ด ๊ฐ€๋Šฅํ•œ ๋ถ„

์šฐ๋Œ€์‚ฌํ•ญ

โ€ข React, Vue ๋“ฑ ์ตœ์‹  Framework๋ฅผ ์‚ฌ์šฉํ•œ SPA ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข MobX ๋“ฑ State ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข NodeJS ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข TypeScript ๋ฅผ ์ด์šฉํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

๊ฐœ๋ฐœํ™˜๊ฒฝ

โ€ข ์ฃผ์š”๊ธฐ์ˆ  : React.js, Next.js, MobX, Recoil, Redux

โ€ข ์‚ฌ์šฉ์–ธ์–ด : Javascript, TypeScript

โ€ข ์—…๋ฌด๋„๊ตฌ : Github Enterprise, Confluence(wiki)


Android ์•ฑ ๊ฐœ๋ฐœ

์—…๋ฌด๋‚ด์šฉ

โ€ข ๋„ค์ด๋ฒ„ํŽ˜์ด Android ์•ฑ ๊ฐœ๋ฐœ

โ€ข ํŽ˜์ด ์„œ๋น„์Šค ๊ด€๋ จ Android ์•ฑ SDK ๊ฐœ๋ฐœ

์ž๊ฒฉ์š”๊ฑด

โ€ข Java/Kotlin ์–ธ์–ด ๊ธฐ๋ณธ ์ง€์‹์„ ๋ณด์œ ํ•œ ๋ถ„

โ€ข Android ํ”„๋ ˆ์ž„์›Œํฌ์— ๋Œ€ํ•œ ์ดํ•ด์™€ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

์šฐ๋Œ€์‚ฌํ•ญ

โ€ข Kotlin Coroutines ์ด์šฉํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข Webview ๊ธฐ๋ฐ˜์˜ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข Android ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(SDK) ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

๊ฐœ๋ฐœํ™˜๊ฒฝ

โ€ข ์ฃผ์š” ๊ธฐ์ˆ  : Kotlin Coroutines, Retrofit, Room, Coil

โ€ข ์‚ฌ์šฉ ์–ธ์–ด : Kotlin, Java

โ€ข ์—…๋ฌด ๋„๊ตฌ : Github, Confluence(wiki)


iOS ์•ฑ ๊ฐœ๋ฐœ

์—…๋ฌด๋‚ด์šฉ

โ€ข ๋„ค์ด๋ฒ„ํŽ˜์ด iOS ์•ฑ ๊ฐœ๋ฐœ

โ€ข ํŽ˜์ด ์„œ๋น„์Šค ๊ด€๋ จ iOS ์•ฑ SDK ๊ฐœ๋ฐœ

์ž๊ฒฉ์š”๊ฑด

โ€ข Swift๋ฅผ ์ด์šฉํ•œ iOS ์•ฑ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข Autolayout, Storyboard ํ™œ์šฉ์ด ๊ฐ€๋Šฅํ•œ ๋ถ„

์šฐ๋Œ€์‚ฌํ•ญ

โ€ข ์ฝ”๋“œ ๋ฆฌ๋ทฐ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข iOS ์•ฑ ์„œ๋น„์Šค ๊ฐœ๋ฐœ/์šด์˜ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข RxSwift/Combine, MVVM, SwiftUI ํ™œ์šฉ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋”ฉ/GCD ํ™œ์šฉ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

๊ฐœ๋ฐœํ™˜๊ฒฝ

โ€ข ์ฃผ์š”๊ธฐ์ˆ  : Swift, Combine, SwiftUI, async/await

โ€ข ์‚ฌ์šฉ์–ธ์–ด : Swift

โ€ข ์—…๋ฌด๋„๊ตฌ : Github, Confluence(wiki)


์ „ํ˜• ์ ˆ์ฐจ

์„œ๋ฅ˜์ „ํ˜• > ์˜จ๋ผ์ธ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ > 1์ฐจ๋ฉด์ ‘ > ์ธํ„ด์‹ญ(2๊ฐœ์›”) > ์ตœ์ข…๋ฉด์ ‘ > ์ •๊ทœ์ง ์ „ํ™˜

*์ตœ์ข…๋ฉด์ ‘์€ ์ธํ„ด์‹ญ ์šฐ์ˆ˜ ์ˆ˜๋ฃŒ์ž์— ํ•œํ•ด ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

ํ˜„์ง์ž Comment

“ํ›Œ๋ฅญํ•œ ๋™๋ฃŒ๋“ค๊ณผ ํ•จ๊ป˜ ํ•œ๋‹ค๋Š” ๊ฒƒ”

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

“๋ˆ„๊ตฌ๋‚˜ ์˜๊ฒฌ์„ ๋‚ด๋Š” ์ˆ˜ํ‰์ ์ธ ์กฐ์ง๋ฌธํ™””

์„œ๋กœ์—๊ฒŒ ๊ท€ ๊ธฐ์šธ์—ฌ์ฃผ๊ณ  ๋ˆ„๊ตฌ๋‚˜ ํ‰๋“ฑํ•˜๊ฒŒ ์˜๊ฒฌ์„ ์ œ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ํ‰์  ์กฐ์ง๋ฌธํ™”๊ฐ€ ๊ฐ€์žฅ ํฐ ์žฅ์ ์ด์—์š”. ์‹œ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž๋ถ„๋“ค๋„ ์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž๋ถ„๋“ค์˜ ์˜๊ฒฌ์— ๋Œ€ํ•ด ํ•จ๊ป˜ ๊ณ ๋ฏผํ•ด์ฃผ์‹œ๊ณ , ์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž์˜ ์˜๊ฒฌ๋„ ์ถฉ๋ถ„ํžˆ ์‹ค์ œ ์„œ๋น„์Šค์— ๋ฐ˜์˜๋  ์ˆ˜ ์žˆ๋Š” ์ž์œ ๋กœ์šด ๋ถ„์œ„๊ธฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์–ด์š”.

“๊ธˆ์œต ํ˜์‹ ์„ ์ด๋ฃจ๋Š” ๊ฐœ๋ฐœ์ž”

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

์ง€์›ํ•˜๋Ÿฌ ๊ฐ€๊ธฐ


2023 ๋„ค์ด๋ฒ„ํŒŒ์ด๋‚ธ์…œ ๊ฐœ๋ฐœ ์ธํ„ด์‹ญ

๊ฐ„ํŽธ๊ฒฐ์ œ ์„œ๋น„์Šค 1์œ„ ๋„ค์ด๋ฒ„ํŽ˜์ด๋ถ€ํ„ฐ ํ˜์‹ ์ ์ธ ๊ธˆ์œต ์„œ๋น„์Šค๊นŒ์ง€, ํ•€ํ…Œํฌ์˜ ์ƒˆ๋กœ์šด ์žฅ์„ ์—ด์–ด๊ฐ€๋Š” ๋„ค์ด๋ฒ„ํŒŒ์ด๋‚ธ์…œ๊ณผ ํ•จ๊ป˜ ์„ฑ์žฅํ•  ์‹ ์ž… ๊ฐœ๋ฐœ์ž๋ฅผ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค.

๊ณตํ†ต ์ž๊ฒฉ์š”๊ฑด

โ€ข ๋Œ€ํ•™๊ต(ํ•™์‚ฌ) ๊ธฐ ์กธ์—…์ž ๋˜๋Š” 23๋…„ 2์›”, 8์›” ์กธ์—…์˜ˆ์ •์ž

โ€ข ๊ธˆ์œต, ํ•€ํ…Œํฌ ๋ถ„์•ผ์— ๊ด€์‹ฌ์ด ์žˆ๊ณ  ๊ฐœ๋ฐœ์„ ์ข‹์•„ํ•˜๋Š” ๋ถ„


๋ชจ์ง‘๋ถ€๋ฌธ ๋ฐ ๋‚ด์šฉ

Back-End ๊ฐœ๋ฐœ

์—…๋ฌด๋‚ด์šฉ

โ€ข ๋„ค์ด๋ฒ„ํŽ˜์ด์˜ ๊ฒฐ์ œ, ์ปค๋จธ์Šค(์ฃผ๋ฌธ), ์†ก๊ธˆ, ๊ธˆ์œต ์ œํœด, ์˜คํ”„๋ผ์ธ ๋ฐ ๊ธ€๋กœ๋ฒŒ ๊ฒฐ์ œ ํ”Œ๋žซํผ์˜ ๋ฐฑ์—”๋“œ ๋ฐ API ๋“ฑ ๊ฐœ๋ฐœ

โ€ข ๋Œ€์šฉ๋Ÿ‰ ํŠธ๋žœ์žญ์…˜ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ํ”Œ๋žซํผ ์„ค๊ณ„ ๋ฐ ๊ตฌํ˜„ ์—…๋ฌด

โ€ข ์•ˆ์ •์ ์ด๊ณ  ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ํ”Œ๋žซํผ ์„ค๊ณ„ ๋ฐ

์ž๊ฒฉ์š”๊ฑด

โ€ข Java ์–ธ์–ด ํ•™์Šต ๊ฒฝํ—˜์ด ์žˆ๊ฑฐ๋‚˜ ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข ์ž๋ฃŒ๊ตฌ์กฐ, ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฐ ํ”„๋กœ๊ทธ๋žจ ์„ค๊ณ„ ์ˆ˜์—…์ด๋‚˜ ์™ธ๋ถ€ ๊ต์œก์„ ์ด์ˆ˜ํ•œ ๋ถ„

โ€ข web ์„œ๋น„์Šค์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ์— ๋Œ€ํ•ด ์ดํ•ดํ•˜๊ณ  ๊ณ„์‹  ๋ถ„

์šฐ๋Œ€์‚ฌํ•ญ

โ€ข Spring Boot ๋ฐ Spring Cloud ๋ฅผ ํ™œ์šฉํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข Kafka, MQ ๋“ฑ ๋ฉ”์„ธ์ง€ ํ”Œ๋žซํผ์„ ํ™œ์šฉํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข Kotlin ๋ฐ coroutine ํ•™์Šต ๋˜๋Š” ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

๊ฐœ๋ฐœํ™˜๊ฒฝ

โ€ข ์ฃผ์š”๊ธฐ์ˆ  : Spring, Kafka, Kubernetes, Docker

โ€ข ์‚ฌ์šฉ์–ธ์–ด : Java, Kotlin

โ€ข ์—…๋ฌด๋„๊ตฌ : Github Enterprise, Confluence(wiki)


Front-End ๊ฐœ๋ฐœ

์—…๋ฌด๋‚ด์šฉ

โ€ข ๋„ค์ด๋ฒ„ํŽ˜์ด์˜ ์ฃผ๋ฌธ/๊ฒฐ์ œ/ํฌ์ธํŠธ/ํ˜œํƒ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ

โ€ข ๋‚ด์ž์‚ฐ/์ˆ˜์ž…์ง€์ถœ/์†ก๊ธˆ/์‹ ์šฉ๊ด€๋ฆฌ/๋Œ€์ถœ/๋ณดํ—˜/์ฆ๊ถŒ/๋ถ€๋™์‚ฐ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ

์ž๊ฒฉ์š”๊ฑด

โ€ข Javascript(์ตœ์†Œ ES5 ์ด์ƒ) ๊ธฐ๋ณธ ์ง€์‹์„ ๋ณด์œ ํ•œ ๋ถ„

โ€ข CS ๊ธฐ๋ณธ ์ง€์‹์„ ๋ณด์œ ํ•œ ๋ถ„

โ€ข HTML/CSS๋ฅผ ์ดํ•ดํ•˜์—ฌ ์—…๋ฌด์—์„œ ํ™œ์šฉ์ด ๊ฐ€๋Šฅํ•œ ๋ถ„

์šฐ๋Œ€์‚ฌํ•ญ

โ€ข React, Vue ๋“ฑ ์ตœ์‹  Framework๋ฅผ ์‚ฌ์šฉํ•œ SPA ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข MobX ๋“ฑ State ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข NodeJS ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข TypeScript ๋ฅผ ์ด์šฉํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

๊ฐœ๋ฐœํ™˜๊ฒฝ

โ€ข ์ฃผ์š”๊ธฐ์ˆ  : React.js, Next.js, MobX, Recoil, Redux

โ€ข ์‚ฌ์šฉ์–ธ์–ด : Javascript, TypeScript

โ€ข ์—…๋ฌด๋„๊ตฌ : Github Enterprise, Confluence(wiki)


Android ์•ฑ ๊ฐœ๋ฐœ

์—…๋ฌด๋‚ด์šฉ

โ€ข ๋„ค์ด๋ฒ„ํŽ˜์ด Android ์•ฑ ๊ฐœ๋ฐœ

โ€ข ํŽ˜์ด ์„œ๋น„์Šค ๊ด€๋ จ Android ์•ฑ SDK ๊ฐœ๋ฐœ

์ž๊ฒฉ์š”๊ฑด

โ€ข Java/Kotlin ์–ธ์–ด ๊ธฐ๋ณธ ์ง€์‹์„ ๋ณด์œ ํ•œ ๋ถ„

โ€ข Android ํ”„๋ ˆ์ž„์›Œํฌ์— ๋Œ€ํ•œ ์ดํ•ด์™€ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

์šฐ๋Œ€์‚ฌํ•ญ

โ€ข Kotlin Coroutines ์ด์šฉํ•œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข Webview ๊ธฐ๋ฐ˜์˜ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข Android ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(SDK) ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

๊ฐœ๋ฐœํ™˜๊ฒฝ

โ€ข ์ฃผ์š” ๊ธฐ์ˆ  : Kotlin Coroutines, Retrofit, Room, Coil

โ€ข ์‚ฌ์šฉ ์–ธ์–ด : Kotlin, Java

โ€ข ์—…๋ฌด ๋„๊ตฌ : Github, Confluence(wiki)


iOS ์•ฑ ๊ฐœ๋ฐœ

์—…๋ฌด๋‚ด์šฉ

โ€ข ๋„ค์ด๋ฒ„ํŽ˜์ด iOS ์•ฑ ๊ฐœ๋ฐœ

โ€ข ํŽ˜์ด ์„œ๋น„์Šค ๊ด€๋ จ iOS ์•ฑ SDK ๊ฐœ๋ฐœ

์ž๊ฒฉ์š”๊ฑด

โ€ข Swift๋ฅผ ์ด์šฉํ•œ iOS ์•ฑ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข Autolayout, Storyboard ํ™œ์šฉ์ด ๊ฐ€๋Šฅํ•œ ๋ถ„

์šฐ๋Œ€์‚ฌํ•ญ

โ€ข ์ฝ”๋“œ ๋ฆฌ๋ทฐ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข iOS ์•ฑ ์„œ๋น„์Šค ๊ฐœ๋ฐœ/์šด์˜ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข RxSwift/Combine, MVVM, SwiftUI ํ™œ์šฉ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

โ€ข ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋”ฉ/GCD ํ™œ์šฉ ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„

๊ฐœ๋ฐœํ™˜๊ฒฝ

โ€ข ์ฃผ์š”๊ธฐ์ˆ  : Swift, Combine, SwiftUI, async/await

โ€ข ์‚ฌ์šฉ์–ธ์–ด : Swift

โ€ข ์—…๋ฌด๋„๊ตฌ : Github, Confluence(wiki)


์ „ํ˜• ์ ˆ์ฐจ

์„œ๋ฅ˜์ „ํ˜• > ์˜จ๋ผ์ธ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ > 1์ฐจ๋ฉด์ ‘ > ์ธํ„ด์‹ญ(2๊ฐœ์›”) > ์ตœ์ข…๋ฉด์ ‘ > ์ •๊ทœ์ง ์ „ํ™˜

*์ตœ์ข…๋ฉด์ ‘์€ ์ธํ„ด์‹ญ ์šฐ์ˆ˜ ์ˆ˜๋ฃŒ์ž์— ํ•œํ•ด ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

ํ˜„์ง์ž Comment

“ํ›Œ๋ฅญํ•œ ๋™๋ฃŒ๋“ค๊ณผ ํ•จ๊ป˜ ํ•œ๋‹ค๋Š” ๊ฒƒ”

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

“๋ˆ„๊ตฌ๋‚˜ ์˜๊ฒฌ์„ ๋‚ด๋Š” ์ˆ˜ํ‰์ ์ธ ์กฐ์ง๋ฌธํ™””

์„œ๋กœ์—๊ฒŒ ๊ท€ ๊ธฐ์šธ์—ฌ์ฃผ๊ณ  ๋ˆ„๊ตฌ๋‚˜ ํ‰๋“ฑํ•˜๊ฒŒ ์˜๊ฒฌ์„ ์ œ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜ํ‰์  ์กฐ์ง๋ฌธํ™”๊ฐ€ ๊ฐ€์žฅ ํฐ ์žฅ์ ์ด์—์š”. ์‹œ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž๋ถ„๋“ค๋„ ์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž๋ถ„๋“ค์˜ ์˜๊ฒฌ์— ๋Œ€ํ•ด ํ•จ๊ป˜ ๊ณ ๋ฏผํ•ด์ฃผ์‹œ๊ณ , ์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž์˜ ์˜๊ฒฌ๋„ ์ถฉ๋ถ„ํžˆ ์‹ค์ œ ์„œ๋น„์Šค์— ๋ฐ˜์˜๋  ์ˆ˜ ์žˆ๋Š” ์ž์œ ๋กœ์šด ๋ถ„์œ„๊ธฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์–ด์š”.

“๊ธˆ์œต ํ˜์‹ ์„ ์ด๋ฃจ๋Š” ๊ฐœ๋ฐœ์ž”

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

์ง€์›ํ•˜๋Ÿฌ ๊ฐ€๊ธฐ

โ›”๏ธ ์ด ๊ณต๊ณ ๋Š” ๋งˆ๊ฐ๋œ ๊ณต๊ณ  ํ˜น์€ ๋น„๊ณต๊ฐœ์ž…๋‹ˆ๋‹ค