Inflearn brand logo image
Inflearn brand logo image

๋งˆ์ดํฌ๋กœ๋„› ์ž๋ฐ” ํด๋ผ์šฐ๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ œ์ž‘

์ž๋ฐ” ์˜ค๋ผํด ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ œ์ž‘ํ•˜๋ฉด์„œ ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ, I/O ์ฒ˜๋ฆฌ, ๊ณ ์„ฑ๋Šฅ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜, ๊ฒŒ๋‹ค๊ฐ€ JIT ์ปดํŒŒ์ผ๋Ÿฌ ๊ธฐ์ˆ ๋กœ 2๋ฐฐ ์ด์ƒ์˜ ๋น ๋ฅธ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰ ์ฒ˜๋ฆฌ๋กœ ๋„คํŠธ์›Œํฌ ์ž…๋ ฅ์— ๋ถ€ํ•˜ ์—†๋Š” ์ดˆ๊ณ ์† ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ œ์ž‘ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

์ดˆ๊ธ‰์ž๋ฅผ ์œ„ํ•ด ์ค€๋น„ํ•œ
[๋ฐฑ์—”๋“œ, ์›น ๊ฐœ๋ฐœ] ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.

์ด๋Ÿฐ ๊ฑธ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์–ด์š”

  • Micronaut

  • GraalVM

  • Oracle Cloud

  • Micronaut Data

  • Autonomous Database

  • Visual Studio Code

  • Intellij IDEA Community

  • Oracle VirtualBox

  • Ubuntu

  • Java 11

  • REST API

  • SDKman

  • Gradle

  • DTO/POJO

๋งˆ์ดํฌ๋กœ๋„›์œผ๋กœ ๋” ๋น ๋ฅด๊ฒŒ, ๋” ๊ฐ•๋ ฅํ•˜๊ฒŒ!
ํด๋ผ์šฐ๋“œ ๋ฐฑ์—”๋“œ ์›น ๊ฐœ๋ฐœ ์˜ฌ์ธ์› ๐Ÿšฉ

์™œ, ์ง€๊ธˆ ๋งˆ์ดํฌ๋กœ๋„›์„
๋ฐฐ์›Œ์•ผ ํ• ๊นŒ์š”? ๐Ÿ’ก

์ธ๊ฐ„์ด ์‚ฌ์šฉํ•˜๋Š” ๊ฐœ๋ฐœ ์–ธ์–ด์™€ ๊ธฐ๊ณ„๊ฐ€ ์ธ์‹ํ•˜๋Š” ์ปดํ“จํ„ฐ ์–ธ์–ด ์‚ฌ์ด์˜ ๋งค๊ฐœ์ฒด ์—ญํ• ์„ ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ ์–ธ์–ด๋ฅผ ์ธ์‹ํ•˜๊ณ  ์Šต๋“ํ•˜๋Š” ๋ฐ๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ๊ธฐ ๋งˆ๋ จ์ž…๋‹ˆ๋‹ค.

๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์˜คํ”ˆ์†Œ์Šค JVM ๊ธฐ๋ฐ˜ ํ”„๋ ˆ์ž„์›Œํฌ, ๋งˆ์ดํฌ๋กœ๋„›(Micronaut)์„ ํ†ตํ•ด ๋ณด๋‹ค ์†์‰ฝ๊ณ  ๊ฐ•๋ ฅํ•œ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋งˆ์ดํฌ๋กœ๋„› ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๊ด€

JVM-Based Micronaut(๋งˆ์ดํฌ๋กœ๋„›)์€ JVM-Based ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ œ์ž‘์— ์žˆ์–ด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์™€ R, Ruby, Python ์–ธ์–ด๊นŒ์ง€ GraamVM ๊ธฐ์ˆ ๊ณผ ์ ‘๋ชฉ์‹œํ‚จ, ๋งค๋ ฅ์ ์ผ ์ˆ˜๋ฐ–์— ์—†๋Š” ์œ ๋‹ˆํฌํ•œ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. ์ด ๊ฐ•์˜์—์„œ๋Š” ์ด๋Ÿฌํ•œ ๋‹ค์–‘ํ•œ ์–ธ์–ด (All-in-one language)๋“ค์„ ์†Œ๊ฐœํ•˜๋Š” ์ •๋„๋กœ ๊ทธ์น˜์ง€๋งŒ, ๋‹ค์–‘ํ•œ ์–ธ์–ด๋ฅผ ํ•œ ๋ฒˆ์˜ ์„ค์น˜๋กœ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋Š” ์žฅ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋งŒํผ ๋‹ค์–‘ํ•œ ์„œ๋น„์Šค์—์„œ์˜ ์ˆ˜์š”๋ฅผ ๋งŒ์กฑ์‹œํ‚ฌ ๊ฒƒ์ž…๋‹ˆ๋‹ค.


๋งˆ์ดํฌ๋กœ๋„›์œผ๋กœ ๊ฐœ๋ฐœํ•˜๋Š” 
์ž๋ฐ” ํด๋ผ์šฐ๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๐Ÿšฉ

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

JVM-Based Micronaut(๋งˆ์ดํฌ๋กœ๋„›)์€ ์ปดํ“จํ„ฐ ์ง€์นจ์„œ์ธ Computer Instruction ๋ฐ”ํƒ• ์œ„์— ์ œ์ž‘ํ•œ ์ž๋ฐ” ์ธํ„ฐํ”„๋ฆฌํ„ฐ์™€ JavaC ์ปดํŒŒ์ผ๋Ÿฌ์˜ ํ•œ๊ณ„๋ฅผ ๋„˜์–ด ์ตœ๋‹จ ์ปดํŒŒ์ผ๊ณผ ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๊ธฐ์ˆ ์„ ๊ฐ€์ง„ ์ปดํ”Œ๋ ˆ์ด์…˜ ํƒ€์ž„(Compilation Time)์˜ ํ•ต์‹ฌ ํ‚ค๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ฏธ๋ฆฌ ์ •์˜๋œ ์ž๋ฐ” ๋นˆ ํด๋ž˜์Šค๋“ค์„ ์ƒ์‚ฐํ•  ์ˆ˜๋„ ์žˆ์œผ๋ฉฐ, AOT ์ปดํ”Œ๋ ˆ์ด์…˜์„ ํ–ฅํ•˜์—ฌ ์ตœ์ ํ™”๋œ ๋Ÿฐํƒ€์ž„ ๊ธฐ์ˆ ์„ ๊ฒฝํ—˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋งค๋ ฅ์ ์ธ ๋งˆ์ดํฌ๋กœ๋„› ๊ธฐ์ˆ ์„ ๋‚˜๋ˆ„๊ณ ์ž ๊ฐ•์˜๋ฅผ ๊ธฐํšํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๊ตญ๋‚ด์— ์ตœ์ดˆ๋กœ ๋งˆ์ดํฌ๋กœ๋„›์„ ์†Œ๊ฐœํ•˜๋Š” ์งœ๋ฆฟํ•œ ๊ฐ๋™์„ ํ•จ๊ป˜ ๋ˆ„๋ฆฌ์‹œ๊ธธ ๋ฐ”๋ผ๋Š” ๋งˆ์Œ๋„ ์ด ๊ฐ•์˜๋ฅผ ํ†ตํ•ด ํ•จ๊ป˜ ์ „ํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ฐ•์˜์—์„œ๋Š”

์„ธ ๊ฐ€์ง€ ํ”„๋ ˆ์ž„์›Œํฌ ๊ธฐ๋ฐ˜ ๊ณง ๋ชจ๋˜ ๊ธฐ์ˆ (Modern), ์ž๋ฐ” ๋ฒ„์ถ”์–ผ ๊ธฐ๋ฐ˜(JVM-Based), ํ’€์Šคํƒ(Full-Stack) ๊ธฐ๋ฐ˜ ํ”„๋ ˆ์ž„์›Œํฌ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ชจ๋“ˆ๋Ÿฌ ๋นŒ๋”ฉํ•˜๋ฉฐ, ๊ฐ„๊ฒฐํ•œ ํ…Œ์ŠคํŠธ ๊ธฐ๋ฐ˜์˜ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๊ทธ๋ฆฌ๊ณ  ์„œ๋ฒ„๋ฆฌ์Šค ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ œ์ž‘ํ•˜๋Š” ๊ธฐ์ˆ ๋“ค์„ ๋ฐฐ์šธ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. 

๋ชจ๋…ธ๋ฆฌ์Šค ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ์˜ ๋ณ€ํ™”

๋‹ค์Œ ๋‚ด์šฉ์„ 
ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค ๐Ÿ“Œ

Oracle GraalVM Enterprise Edition 21.2.0 and Java,
Javascript, R, Ruby, Python ๊ธฐ์ˆ ์„ ๋™์‹œ์— ์ œ์ž‘ํ•˜๋Š”
All-in-one Technology

  • 1๏ธโƒฃ ์˜ค๋ผํด์—์„œ ์ œ๊ณตํ•˜๋Š” ๋„ค์ดํ‹ฐ๋ธŒ ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ œ์ž‘
  • 2๏ธโƒฃ ๋ฐฑ์—”๋“œ ํด๋ผ์šฐ๋“œ ๋Ÿฐํƒ€์ž„ ๊ธฐ๋ฐ˜ ์œ„์— ์˜ค๋ผํด ์ž์œจ ์šด์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™์œผ๋กœ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ œ์ž‘
  • 3๏ธโƒฃ ๋งˆ์ดํฌ๋กœ๋„› 3.x ๋ฒ„์ „์˜ ๋ชจ๋˜ ํ”„๋ ˆ์ž„์›Œํฌ ์ตœ์‹  ๊ธฐ์ˆ  ์Šต๋“
  • 4๏ธโƒฃ ์œˆ๋„์šฐ ์˜ค๋ผํด ๋ฒ„์ถ”์–ผ๋ฐ•์Šค ์„ค์น˜ ๋ฐ ์šฐ๋ถ„ํˆฌ 20.04 LTS ์šด์˜์ฒด์ œ ๊ธฐ์ˆ  ์Šต๋“
 
๋” ์•Œ์•„๋ณผ๊นŒ์š”?
์˜ค๋ผํด ํด๋ผ์šฐ๋“œ ๊ณ„์ • ์„ธํŒ…์„ ํ†ตํ•œ ์ž๋ฐ” ๊ด€๋ จ ๊ธฐ์ˆ  ์Šต๋“ ์ค€๋น„
์ž๋ฐ” 11 LTS ๋ฒ„์ „ ๋ฐ”ํƒ• ์œ„์— ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌํ˜„ํ•˜๊ณ ์ž ํ•˜๋Š” ์ดํ•ด๋ ฅ ์ฆ๋Œ€
์ƒˆ๋กœ์šด ๋ถ„์•ผ๋กœ ์ง„์ž…ํ•˜๊ณ ์ž ํ•˜๋Š” ๋ถ„๋“ค์„ ์œ„ํ•œ ๋งˆ์ดํฌ๋กœ๋„› 3.x ๊ธฐ์ดˆ ์ดํ•ด
Oracle GraalVM Enterprise Edition 21.2.0 ์œผ๋กœ ์ž๋ฐ” 11 ๋ฒ„์ „ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ python, r, ruby, javascript, nodejs, angularjs ๋™์‹œ์— ๊ฐœ๋ฐœ ๊ธฐ์ˆ  (All-in-one langauges)์„ ๋™์‹œ ๊ฐœ๋ฐœ ์ฐฉ์ˆ˜ํ•˜๊ณ ์ž ํ•˜๋Š” ์—ด์˜์™€ ๊ธฐ์ˆ  ์Šต๋“
๋งˆ์ดํฌ๋กœ๋„› ๋Ÿฐ์น˜ (Micronaut Launch)๋กœ ๊ทธ๋ž˜๋“ค๊ณผ ๋ฉ”์ด๋ธ ์ž๋ฐ” ํด๋ผ์šฐ๋“œ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•
[์ด๋ก ํŽธ] ํ”„๋กœ๊ทธ๋žจ ์–ธ์–ด์™€ ๊ทธ ๋ฒˆ์—ญ ๊ณผ์ •, ์ž๋ฐ” ๋ณ€์—ญ๊ธฐ ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๊ตฌ์กฐ, ์ปดํ“จํ„ฐ ์ง€์ฒจ์„œ, ์ž๋ฐ” ์ปจ๋ฒ„ํŠธ ๋„๊ตฌ์ธ ์ž๋ฐ” ์ปดํŒŒ์ผ๋Ÿฌ์™€ ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๊ทธ๋ฆฌ๊ณ  ๊ทธ ํ•œ๊ณ„
[์‹ค์ŠตํŽธ] ๋น„์ฃผ์–ผ ์†Œ์Šค ์ฝ”๋“œ (VS Code)  IDE ํˆด์„ ๊ฐ€์ง€๊ณ  ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ 2๊ฐœ ( ๋””ํŽœ๋˜์‹œ ์ธ์ ์…˜:DI, ๋””ํŽœ๋˜์‹œ ์—ญ์ œ์–ด ์›๋ฆฌ : DIP) 
์˜ค๋ผํด ์ž์œจ ์šด์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(Oracle Autonomous Database) ์˜ค๋ผํด ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ์ŠคํŠธ๋Ÿญ์ณ (OCI) ๊ธฐ์ˆ  ์Šต๋“ ๋ฐ ๊ฐœ๋ฐœ ์ฒ˜๋ฆฌ
Intellij ํˆด์„ ์ด์šฉํ•œ ์ž๋ฐ” ํด๋ผ์šฐ๋“œ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ œ์ž‘
์œ ๋‹‰์Šค ๋ฐ”ํƒ• ์šด์˜ ์‹œ์Šคํ…œ์—์„œ ๋ฉ€ํ‹ฐ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํˆด ํŒจ๋Ÿด๋ฐฉ์‹์˜ ํˆด Sdkman ๊ณผ์ • ๊ฟ€ํŒ

๊ฐ•์˜ ํ•œ ํŽธ์œผ๋กœ ์™„์„ฑํ•˜๋Š” ์˜ฌ์ธ์› ํ…Œํฌ๋†€๋กœ์ง€ โœ…

  • ๊ทธ๋ž„ VM ๊ณ ์„ฑ๋Šฅ ๋Ÿฐํƒ€์ž„์„ ์„ค์น˜ํ•˜๋ฉด์„œ ์ ์–ด๋„ ์ž๋ฐ”๋ฅผ ํฌํ•จํ•œ 5๊ฐ€์ง€ ๋‹ค์–‘ํ•œ ์–ธ์–ด๋“ค (Java, Javascript, R, Ruby, Python) ์„ ์„ค์น˜ํ•˜๊ณ  ์ œ์ž‘ํ•  ๊ธฐ์ˆ ์„ ์Šต๋“ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
  • ์˜ค๋ผํด ํด๋ผ์šฐ๋“œ ๊ณ„์ •์„ ๋ฌด๋ฃŒ๋กœ 30์ผ ํ˜œํƒ์„ ๋ˆ„๋ฆฌ๋ฉด์„œ ๋™์‹œ์— 30์ผ์ด ๋˜๋ฉด ๋งˆ์ดํฌ๋กœ๋„› ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ œ์ž‘์„ ํ‰์ƒ๋ฌด๋ฃŒ์™€ ํด๋ผ์šฐ๋“œ์—์„œ ์ œ๊ณตํ•˜๋Š” IP๋ฅผ ๋ฌด๋ฃŒ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
  • ๊ทธ๋ž„VM ๋„ค์ดํ‹ฐ๋ธŒ ์ด๋ฏธ์ง€ ๊ธฐ์ˆ ์„ ํ†ตํ•œ ์ž๋ฐ” ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ œ์ž‘์€ ๋ฌผ๋ก , ์ถ”ํ›„ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ œ์ž‘๊นŒ์ง€ ํ•  ์ˆ˜ ์žˆ๋Š” ์ž ์žฌ๋ ฅ์„ ๊ธฐ๋ฅด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
  • ๋งˆ์ดํฌ๋กœ๋„›์—์„œ ์˜ค๋ผํด ์ž์œจ ์šด์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™ ์ฒ˜๋ฆฌ, DB ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ ์„ธํŒ…๊ณผ ์Šคํ‚ค๋งˆ ์ƒ์„ฑ ๊ตฌํ˜„ ๋ฐ ์˜ค๋ผํด ์ „์ž ์ง€๊ฐ‘ (OKV) ์ค‘์•™ ์ง‘์ค‘ํ˜• ํ‚ค ๊ด€๋ฆฌ ํ”Œ๋žซํผ์œผ๋กœ ๊ธˆ๊ณ ์™€ ์•”ํ˜ธํ‚ค ์ƒ์„ฑ ์ฒ˜๋ฆฌ ๊ธฐ์ˆ ์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.
  • ๋งˆ์ดํฌ๋กœ๋„›์—์„œ ์ œ๊ณตํ•˜๋Š” ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ํˆด์ธ ๋งˆ์ดํฌ๋กœ๋„›-ํ”Œ๋ผ์ด์›จ์ด ํˆด์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™ ๋ฐ ๋ฐ์ดํ„ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๋ฐฉ๋ฒ•๊ณผ SQL ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์Šคํฌ๋ฆฝํŠธ ์ƒ์„ฑ ๊ธฐ์ˆ ์„ ์Šต๋“ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ‘‰ ๊ทธ๋ฆฌํ•˜์—ฌ ๋‹ค์ˆ˜ ํ”„๋กœ๊ทธ๋žจ ์–ธ์–ด๋กœ ๊ฐœ๋ฐœ (Ployglot Programming to write ployglot applications as truffle) ๊ฐ€๋Šฅํ•œ ํŠธ๋ฆฌํ”Œ ์–ธ์–ด ๊ตฌํ˜„ ํ”„๋ ˆ์ž„์›Œํฌ ๊ฐœ๋ฐœ์ž๋กœ ํ•œ ๋‹จ๊ณ„ ์ง„๋ณด๋œ ๊ฐœ๋ฐœ ์ˆ˜ํ–‰ ๋Šฅ๋ ฅ์„ ํ„ฐ๋“ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


์ƒ์„ธ ์ปค๋ฆฌํ˜๋Ÿผ ๐Ÿ“š

1~2) ๋งˆ์ดํฌ๋กœ๋„› ์†Œ๊ฐœ์™€ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‚ฌ์ „ ์ž‘์—…
JVM ๊ธฐ๋ฐ˜ ํ”„๋ ˆ์ž„์›Œํฌ์ด์ž ๋ชจ๋˜ ํ”„๋ ˆ์ž„์›Œํฌ ์ค‘ ํ•˜๋‚˜์ธ ๋งˆ์ดํฌ๋กœ๋„›์— ๋Œ€ํ•œ ์ดํ•ด์™€ ์ •์˜ ๊ทธ๋ฆฌ๊ณ  ์„œ๋ฒ„๋ ˆ์Šค ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ (Serverless Application) ๋นŒ๋“œ๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ์†์‰ฝ๊ฒŒ ์ œ์ž‘ํ•˜๋Š” ํ…Œ์ŠคํŠธ์šฉ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค๊ณผ ๋ชจ๋“ˆ ์ œ์ž‘์— ์ž…๋ฌธํ•˜๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

3) ๊ทธ๋ž˜๋“ค ๋นŒ๋“œ ํˆด(Gradle Build Tool)๊ณผ ํ•จ๊ป˜ ํ•˜๋Š” ๋งˆ์ดํฌ๋กœ๋„› ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ - ํ—ฌ๋กœ ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ ์ œ์ž‘ (Back-End)

4) ์˜์กด์„ฑ ์ฃผ์ž…๊ณผ DIP ๊ธฐ์ˆ ๋กœ ๊ตฌํ˜„๋œ ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ ๊ตฌํ˜„
ํ•˜์ด๋ ˆ๋ฒจ ํ”„๋กœ๊ทธ๋žจ ์–ธ์–ด์™€ ๋กœ์šฐ ๋ ˆ๋ฒจ ํ”„๋กœ๊ทธ๋žจ ์–ธ์–ด์™€์˜ ์˜์กด์„ฑ์— ๋Œ€ํ•œ ์ •ํ™•ํ•œ ์˜๋ฏธ๋ฅผ ์ง„๋‹จ ๋ฐ ํ•œ๊ณ„๋ฅผ ์„ค๋ช…ํ•˜๊ณ  ๊ทธ ์˜ˆ์ œ๋ฅผ ํ†ตํ•˜์—ฌ DI, DIP (IoC)์— ๋Œ€ํ•œ ์ดํ•ด๋ ฅ์„ ๊ธธ๋Ÿฌ์ฃผ๋Š” ํ†ต์ฐฐ๋ ฅ์„ ์งš์–ด์ค„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. 

5) ๊ทธ๋ž„VM ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ 21.2.0 ์†Œ๊ฐœ ๋ฐ ์„ค์น˜
๋ฆฌ๋ˆ…์Šค์šฉ ๊ทธ๋ž„VM ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ 21.2.0 ๋ฒ„์ „์ด ๊ฐ€์ง„ JDK ๋ฐ ๋‹ค์–‘ํ•œ ์œ ํ‹ธ๋ฆฌํ‹ฐ์™€ ๋Ÿฐํƒ€์ž„๋“ค์„ ์†Œ๊ฐœํ•˜๋ฉด์„œ ํ•ต์‹ฌ ์ปดํฌ๋„ŒํŠธ๋ฅผ ํ•˜๋‚˜ํ•˜๋‚˜ ๊ฐœ๋žต์ ์œผ๋กœ ์„ค๋ช…ํ•˜๋ฉด์„œ ์šฐ๋ถ„ํˆฌ ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ค์ •๊ณผ ํ•จ๊ป˜ ์„ค์น˜ ๋ฐ ์‹คํ–‰ ๊ณผ์ •์„ ์ž์„ธํžˆ ์„ค๋ช…ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

6) ์˜ค๋ผํด ํด๋ผ์šฐ๋“œ ๊ณ„์ • ์ƒ์„ฑ ๋ฐ ์˜ค๋ผํด ์ž์œจ ์šด์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒ์„ฑ (์Šคํ‚ค๋งˆ ์ƒ์„ฑ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜)

7) ์ž๋ฐ” ํด๋ผ์šฐ๋“œ ๋งˆ์ดํฌ๋กœ๋„› ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ œ์ž‘
REST API ๊ตฌํ˜„ ์ฒ˜๋ฆฌ ๋ฐ”ํƒ•์œผ๋กœ ๋งˆ์ดํฌ๋กœ๋„› ๋ฐ์ดํ„ฐ ๋””ํŒŒ์ง€ํ† ๋ฆฌ ์ฟผ๋ฆฌ ๊ตฌํ˜„์„ ์‹œ์ž‘์œผ๋กœ ๋งˆ์ดํฌ๋กœ๋„› ๋ฐ์ดํ„ฐ ์—”ํ‹ฐํ‹ฐ ์ œ์ž‘ ๋ฐ UUID, Many to one ํ…Œ์ด๋ธ” ๊ตฌ์„ฑ ์ œ์ž‘๊ณผ DTO (Data Transfer Object)๊ธฐ์ˆ  ์ ์šฉํ•˜์—ฌ ๊ฐ„๋‹จํ•œ ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ ๊ตฌํ˜„์„ ์ œ์ž‘ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

8) ๊ทธ๋ž„VM ๋„ค์ดํ‹ฐ๋ธŒ ์ด๋ฏธ์ง€ ๊ธฐ์ˆ  ์ ์šฉ ๋ฐ ์˜ค๋ผํด ํด๋ผ์šฐ๋“œ์— ๋””ํ”Œ๋กœ์ด
์ž๋ฐ” ํด๋ผ์šฐ๋“œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์†Œ์Šค ์ „๋ถ€๋ฅผ ๋งˆ๋ธ์—์„œ ์‚ฌ์šฉํ•˜๋Š” jar file ์••์ถ• ๊ธฐ์ˆ ์„ ํ† ๋Œ€๋กœ ์••์ถ•ํ•˜์—ฌ ์ž๋ฐ” ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ์ŠคํŠธ๋Ÿญ์ณ์— ๋””ํ”Œ๋กœ์ดํ•˜๋Š” ์ž‘์—… ์ œ๋ฐ˜ ์‚ฌํ•ญ์„ ๊ณต์œ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.


Q&A ๐Ÿ’ฌ

Q. ๋งˆ์ดํฌ๋กœ๋„›์€ ๋ฌด์—‡์ธ๊ฐ€์š”? ์˜คํ”ˆ ์†Œ์Šค์ธ ์Šคํ”„๋ง์ด๋‚˜ ๋‹ค๋ฅธ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ”„๋ ˆ์ž„์›Œํฌ์™€ ๋น„์Šทํ•œ๊ฐ€์š”?

๋งˆ์ดํฌ๋กœ๋„›์€ ์ž๋ฐ” ๋ฒ„์ถ”์–ผ ๋จธ์‹  ๊ธฐ๋ฐ˜ ์˜คํ”ˆ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด ํ”„๋ ˆ์ž„์›Œํฌ(JVM-based software framework )์ž…๋‹ˆ๋‹ค. ๋ฌผ๋ก  ๊ฐ€๋ฒผ์šด ๊ฒฝ๋Ÿ‰์˜ ํ”„๋ ˆ์ž„์›Œํฌ(lightweight) ๋นŒ๋“œ๋กœ ๊ตฌ์ถ• ๊ฐ€๋Šฅํ•˜๋ฉฐ ๋ชจ๋“ˆ๋Ÿฌ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜(Modular application) ๋นŒ๋“œ๋˜์–ด, ๋™์‹œ์— ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๊ธฐ๋ฐ˜(Microservices) ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ œ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ์ž๋ฐ” ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค. ์ ์€ ๋ฉ”๋ชจ๋ฆฌ ํ’‹ํ”„๋ฆฐํŠธ์ด๋ฉฐ ๋‹จ์‹œ๊ฐ„ ์Šคํƒ€ํŠธ์—… ํƒ€์ž„์„ ์ž๋ž‘ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฝ์Ÿ์ž ์Šคํ”„๋ง์„ ๋น„๋กฏํ•œ ๋‹ค๋ฅธ ์›น ๊ธฐ๋ฐ˜ ํ”„๋ ˆ์ž„์›Œํฌ๋ณด๋‹ค ๋ฌด๋ ค 2๋ฐฐ๋‚˜ ๋น ๋ฅด๋‹ต๋‹ˆ๋‹ค.

Q. ๋งˆ์ดํฌ๋กœ๋„›์„ ๋ฐฐ์šฐ๋ฉด์„œ JVM์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ํ•„์š”ํ•œ๊ฐ€์š”?

๋„ค, ๋‹น์—ฐํžˆ ๊ธฐ๋ณธ ์ง€์‹์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ž๋ฐ” ๊ธฐ์ˆ ์—์„œ 2000๋…„๋Œ€ ์ฒ˜๋ฆฌ ์†๋„์™€ ์ฒ˜๋ฆฌ๋Ÿ‰์€ ๋ฌด์ฒ™ ํ–ฅ์ƒ๋˜์—ˆ์œผ๋ฉด์„œ๋„ ๋™์‹œ์— ๋ฌด๊ฑฐ์›Œ์ง€๋Š” ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ๊ฒฉ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋”ฐ๋ผ๊ฐ€์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. 1950๋…„๋Œ€๋ถ€ํ„ฐ ๋‚ด๋ ค์˜จ ์ž๋ฐ”์™€ C์–ธ์–ด๋ฅผ ๋น„๋กฏํ•œ ๋‹ค์–‘ํ•œ ์–ธ์–ด๋“ค์€ ์ธ๊ฐ„ ์ฝ”๋“œ์™€ ๋จธ์‹  ์–ธ์–ด ์‚ฌ์ด๋กœ ๋งค๊ฐœ์ฒด, ์ปดํ“จํ„ฐ ์ง€์นจ์„œ์™€ ํ†ต์—ญ(Interpretation)์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉด ์œ ์ตํ•œ ๊ฐ•์˜ ์Šต๋“์ด ๋  ๊ฒƒ์ด๋ฉฐ, ๋™์‹œ์— Converting Process, Compiler, JVM ๊ณผ ๋”๋ถˆ์–ด JIT Compiler ์— ๋Œ€ํ•œ ์šฉ์–ด์™€ ์ •์˜๋Š” ๊ฐœ๋ฐœ์ž๋“ค์—๊ฒŒ๋Š” ์œ ์ตํ•œ ์‹œ๊ฐ„์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋™์‹œ์— ์Šคํ”„๋ง์—์„œ ๋น ์ง€์ง€ ์•Š๋Š” ์˜์กด์„ฑ ๊ธฐ์ˆ ๊ณผ ์˜์กด์„ฑ ์ฃผ์ž… ๊ทธ๋ฆฌ๊ณ  IoC์— ๋Œ€ํ•œ ์ดํ•ด๋ ฅ ์—ญ์‹œ ๊ธฐ์—…์—์„œ ๋‹ค๋ฃจ์–ด์•ผ ํ•  ๊นŠ์€ ์ง€์‹๊ณผ ์ดํ•ด๋Š” ํ•„์ˆ˜ ๋ถˆ๊ฐ€์ž…๋‹ˆ๋‹ค. 

Q. GraalVM ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ 21.2.0 ๊ณผ ์ž๋ฐ” JDK 11๊ณผ ์„œ๋กœ ๋‹ค๋ฅธ๊ฐ€์š”?

๋‘ ๊ฐ€์ง€๋Š” ์„œ๋กœ ๋ถˆ๊ฐ€๋ถ„์˜ ๊ด€๊ณ„์ž…๋‹ˆ๋‹ค. ์˜ค๋ผํด์—์„œ ๋‘ ํ”„๋กœ์ ํŠธ๋ฅผ ๋™์‹œ์— ์ง„ํ–‰ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, GraalVM์€ ์ž๋ฐ” JDK 11๋ฟ๋งŒ ์•„๋‹ˆ๋ผ JDK 17๊นŒ์ง€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์„ค์น˜๊ณผ์ •์—์„œ ์‚ฌ์šฉ์ž๋‚˜ ๊ฐœ๋ฐœ์ž๋“ค์ด JDK ๋ฒ„์ „์„ ๋ฏธ๋ฆฌ ์„ ํƒํ•˜์—ฌ ๋‹ค์šด๋ฐ›์•„ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.  ๋ฌผ๋ก  JDK 11์„ ์„ค์น˜ํ•˜๊ณ  ๋‚˜๋ฉด GraalVM์„ ๋ณ„๋„๋ก ์„ค์น˜ํ•  ํ•„์š” ์—†์ง€๋งŒ ํ†ต์ƒ GraalVM ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ (์œ ๋ฃŒ์ด์ž๋งŒ ๊ฐœ๋ฐœ์šฉ์œผ๋กœ ๊ฐ€๋Šฅ)๋ฅผ ์„ค์น˜ํ•˜๋ฉด ์ž๋™์œผ๋กœ JDK๋ฅผ ์„ค์น˜๋  ๊ฒƒ์ด๋‹ˆ ๋ฉ€ํ‹ฐ๋กœ ๊ฐœ๋ฐœ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ง์€ R, Ruby, Python, Javascript (NodeJS/Vue.JS/AngularJS/ReastJS) ๋ชจ๋‘ ๋™์‹œ์— ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ Polyglot ์ด๋ผ๊ณ  ํ•˜์ฃ .

Q. ์˜ค๋ผํด ์ž์œจ ์šด์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(Oracle Autonomous Database)๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?

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

์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜
์ถ”์ฒœ๋“œ๋ ค์š”!

ํ•™์Šต ๋Œ€์ƒ์€
๋ˆ„๊ตฌ์ผ๊นŒ์š”?

  • ๋งˆ์ดํฌ๋กœ๋„›์„ ์ฒ˜์Œ ์ ‘ํ•˜๋Š” ๋ชจ๋“  ๊ฐœ๋ฐœ์ž

  • ๋งˆ์ดํฌ๋กœ๋„›๊ณผ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ์›ํ•˜์‹œ๋Š” ๋ถ„

  • ์ž๋ฐ” ํ”„๋ ˆ์ž„์›Œํฌ์™€ ์ž๋ฐ” ์ž์œจ์šด์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์—ฐ๋™ํ•˜๋ ค๋Š” ์—ด๋ง์ด ์žˆ๋Š” ๋ชจ๋“  ๋ถ„๋“ค

  • ์˜ค๋ผํด ํด๋ผ์šฐ๋“œ ๋ฒ ์ด์Šค ์ž๋ฐ” ์†”๋ฃจ์…˜ ๊ฐœ๋ฐœ์— ์—ด์˜ ์žˆ๋Š” ๋ถ„๋“ค

  • ์‹ ๊ธฐ์ˆ  GraalVM๊ณผ ํ•จ๊ป˜ ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ œ์ž‘ํ•˜๊ณ  ์‹ถ์€ ๋ถ„

  • ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜์˜ ์ž๋ฐ” 11, GraalVM ๊ทธ๋ฆฌ๊ณ  ๋งˆ์ดํฌ๋กœ๋„› ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ œ์ž‘์ž

  • ๋ฆฌ๋ˆ…์Šค ์šด์˜ ์ฒด์ œ ์‹œ์Šคํ…œ์ธ ์šฐ๋ถ„ํˆฌ ๊ณต๋ถ€์— ๋ฉ”๋งˆ๋ฅธ ๋ถ„

์„ ์ˆ˜ ์ง€์‹,
ํ•„์š”ํ• ๊นŒ์š”?

  • ์˜ค๋ผํด ๊ณต์‹ ์›น ์‚ฌ์ดํŠธ ๋˜๋Š” ์˜ค๋ผํด ์†”๋ฃจ์…˜ ํ”„๋กœ๋•ํŠธ์— ๋Œ€ํ•œ ๊ด€์‹ฌ

  • ์ž๋ฐ” JDK 11๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์ „ ์ž๋ฐ” ์ง€์‹

  • ์ž๋ฐ” ๊ฐœ๋ฐœ์ž ์ค‘ ๋งˆ์ดํฌ๋กœ๋„› (Micronaut) ์ง€์‹๋งŒ ์•Œ๊ณ  ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•์— ์ƒˆ๋กญ๊ฒŒ ๋ฐฐ์šฐ๊ณ ์ž ํ•  ์—ด์˜

  • Azure, Amazon ํด๋ผ์šฐ๋“œ ์ด์™ธ์— ๋‹ค๋ฅธ ํด๋ผ์šฐ๋“œ์— ๋Œ€ํ•œ ์—ด์˜์™€ ๊ด€์‹ฌ

์•ˆ๋…•ํ•˜์„ธ์š”
Billy Lee์ž…๋‹ˆ๋‹ค.

574

๋ช…

์ˆ˜๊ฐ•์ƒ

37

๊ฐœ

์ˆ˜๊ฐ•ํ‰

69

๊ฐœ

๋‹ต๋ณ€

4.6

์ 

๊ฐ•์˜ ํ‰์ 

2

๊ฐœ

๊ฐ•์˜

๋„ค์˜ค์•„๋ฒ ๋‰ด ๋Œ€ํ‘œ ๋นŒ๋ฆฌ ๋ฆฌ ์ž…๋‹ˆ๋‹ค.

2022๋…„ 9์›” ํ•œ๊ตญ์— ๊ฐ€์กฑ ๋ชจ๋‘ ๊ท€๊ตญํ•œ ๋’ค ํ˜„๋Œ€์ž๋™์ฐจ ๋น…๋ฐ์ดํ„ฐ ํ”„๋กœ์ ํŠธ์— TA ์ปจ์„คํŒ… (2022.09 -11์›”๊นŒ์ง€)ํ•˜์˜€๊ณ , ์—์ž์ผ PM๊ณผ ๋น…๋ฐ์ดํ„ฐ C-ITS ์‹œ์Šคํ…œ ๊ตฌ์ถ•์œผ๋กœ ํ•˜๋‘ก ์—์ฝ”์‹œ์Šคํ…œ ๋ฐ ๋จธ์‹ ๋Ÿฌ๋‹ ๋”ฅ๋Ÿฌ๋‹ ๋ฆฌ๋“œํ•˜์—ฌ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ์ž (PMO)์—ญํ• ์„ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ดํ›„ Azure Data Factory & Azure Databricks ์„ ๊ฐ€์ง€๊ณ  ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ ๊ธฐ์ˆ ์„ AIA ์ƒ๋ช… ๋ณดํ—˜ ์ด๋…ธ๋ฒ ์ด์…˜ ๋ฐ์ดํ„ฐ ํ”Œ๋žซํผ ํŒ€์—์„œ ๊ทผ๋ฌดํ•˜๋ฉด์„œ ๋ฐ์ดํ„ฐ ๊ณผํ•™์ž๋กœ ๊นŠ์€ ํƒ๊ตฌ์™€ ์—ด์ •์„ ๋ถˆ์‚ด๋ž์Šต๋‹ˆ๋‹ค.

2012๋…„์—์„œ 2020๋…„ ๊นŒ์ง€ ์„ผํ„ฐ๋‹ˆ์–ผ ์นผ๋ฆฌ์ง€ Software Eng. Technician ์กธ์—…ํ•œ ์—ด๊ณต์ƒ์ด์ž ํ•œ๊ตญ์—์„œ๋Š” 9๋…„์˜ IT ๊ฒฝ๋ ฅ ์†Œ์œ ์ž๋กœ ๊ธˆ์œต๊ถŒ (์žฌ๋ฌด, ๊ธˆ์œต ํ”„๋กœ์ ํŠธ ๋ฐ ๋น…๋ฐ์ดํ„ฐ ๊ด€๋ จ ) ์— ๋‹ค์ˆ˜ ๊ทผ๋ฌดํ–ˆ์Šต๋‹ˆ๋‹ค.

1999๋…„ ํ•„๋ฆฌํ•€ (Dasmarinas) ์ง€์—ญ์—์„œ P.T.S. ๋„คํŠธ์›Œํฌ ์—”์ง€๋‹ˆ์–ด๋ง ์ž์› ๋ด‰์‚ฌ์ž๋กœ 1๋…„ ๊ทผ๋ฌดํ•˜๋ฉด์„œ ๊ธ€๋กœ๋ฒŒ IT ์„ธ๊ณ„์™€ ๋„คํŠธ์›Œํฌ ์ง€์‹์„ ์Œ“์œผ๋ฉฐ ์ดํ›„ 2000๋…„ ํ•œ๊ตญ์œผ๋กœ ๋Œ์•„์™€ K.M.C.์—์„œ Clarion 4GL ์–ธ์–ด๋กœ Warehouse Inventory Control and Management ๊ทธ๋ฆฌ๊ณ  PIS Operational Test PCS C/C++ ๊ฐœ๋ฐœํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค.

2001๋…„ LG-SOFT SCHOOL ์ž๋ฐ” ์ „๋ฌธ๊ฐ€ ๊ณผ์ • ์ด์ˆ˜ ํ›„ CNMTechnologies ์—์„œ e-CRM/e-SFA R&D ์—ฐ๊ตฌ ๋ฐ ๊ฐœ๋ฐœ 2๋…„ ์ •๋„ (ํ•œ๊ตญ์‚ฐ์—…์€ํ–‰/๋Œ€์ •์ •๋ถ€์ฒญ์‚ฌ/์˜์ง„์ œ์•ฝ) ๋‹ค์–‘ํ•œ ํ”„๋กœ์ ํŠธ๋ฅผ ์„ญ๋ ตํ•˜์˜€์Šต๋‹ˆ๋‹ค.

2004๋…„๋ถ€ํ„ฐ 2012๋…„ ์บ๋‚˜๋‹ค๋กœ ์˜ฌ ๋•Œ๊นŒ์ง€ SKT/SK C&C (IMOS), SC์ œ์ผ์€ํ–‰(TBC), ํ”„๋กœ๋ด์…˜ ์ƒ๋ช…(PFMS), ๊ต๋ณด์ƒ๋ช… AXA Kyobo Life Insurance Account Management, Kook-min Bank ๊ตญ๋ฏผ์€ํ–‰ Financial Management Reconstruction NGM์™ธ ๋‹ค์ˆ˜ ํ”„๋กœ์ ํŠธ์— ์ฐธ์—ฌ ๊ฐœ๋ฐœ ๋ฐ ๋ฆฌ๋“œํ•˜์˜€์Šต๋‹ˆ๋‹ค.

 

2012๋…„ ์—ฐ๋ง์— ์บ๋‚˜๋‹ค์— ๊ฑฐ์ฃผํ•˜๋ฉด์„œ ์„ธ ์•„์ด์˜ ์•„๋น ์ด์ž Scrum Master๋กœ์„œ ์—์ž์ผ ๊ฐœ๋ฐœ ๋ฐฉ์‹์„ ์ฑ„ํƒํ•˜์—ฌ ํ•ธ๋””๋งจ ์–ดํ”Œ/์ด์ปค๋จธ์Šค ์–ดํ”Œ/ํ”„๋กœ๋ฑํŠธ ๊ฐœ๋ฐœ/๋ ˆ์‹œํ”ผ ์–ดํ”Œ ๊ฐœ๋ฐœํ•œ ๋ฏธ์ฃผ ์บ๋‚˜๋‹ค ์ง€์—ญ์˜ ์‹ค๊ฒฝํ—˜์ž์ž…๋‹ˆ๋‹ค.

๋”๋ณด๊ธฐ

์ปค๋ฆฌํ˜๋Ÿผ

์ „์ฒด

114๊ฐœ โˆ™ (4์‹œ๊ฐ„ 58๋ถ„)

๊ฐ•์˜ ๊ฒŒ์‹œ์ผ: 
๋งˆ์ง€๋ง‰ ์—…๋ฐ์ดํŠธ์ผ: 

์ˆ˜๊ฐ•ํ‰

์ „์ฒด

1๊ฐœ

5.0

1๊ฐœ์˜ ์ˆ˜๊ฐ•ํ‰

  • Billy Lee๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
    Billy Lee

    ์ˆ˜๊ฐ•ํ‰ 3

    โˆ™

    ํ‰๊ท  ํ‰์  5.0

    5

    95% ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑ

    ์ง€์‹ ๊ณต์œ ์ž ๋นŒ๋ฆฌ ์ž…๋‹ˆ๋‹ค. ๋งˆ์ดํฌ๋กœ๋„›์„ ๊ตญ๋‚ด์— ์†Œ๊ฐœํ•จ์„ ๊ฐ์‚ฌํ•˜๊ฒŒ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ 3.x ๋ฒ„์ „์œผ๋กœ ์ž๋ฐ” ์Šคํ”„๋ง๋ณด๋‹ค ๋น ๋ฅธ CURD ์ฒ˜๋ฆฌ ์†๋„์™€ ๋ถ€ํŒ… ์†๋„๋กœ ๋งŽ์€ ๊ฐœ๋ฐœ์ž๋“ค์ด ํ•จ๊ป˜ ์ฐธ์—ฌํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ผ๋Š” ๋งˆ์Œ์— ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ค๋ผํด ํด๋ผ์šฐ๋“œ์™€ ์ž์œจ ์šด์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™์œผ๋กœ ์ตœ์ ํ™”๋œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ•จ๊ป˜ ๋ฐฐ์šฐ๋ฉฐ ๋” ์ข‹์€ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์šด๋™์— ํ•จ๊ป˜ ํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๋””ํ”Œ๋กœ์ด ์—ญ์‹œ GraalVM Native Image ๊ธฐ์ˆ ์„ ํ†ตํ•˜์—ฌ ์‰ฝ๊ณ  ๋น ๋ฅธ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋””ํ”Œ๋กœ์ด๋„ ๊ตฌํ˜„ํ•˜๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

    ๋น„์Šทํ•œ ๊ฐ•์˜

    ๊ฐ™์€ ๋ถ„์•ผ์˜ ๋‹ค๋ฅธ ๊ฐ•์˜๋ฅผ ๋งŒ๋‚˜๋ณด์„ธ์š”!

    โ‚ฉ27,500