본문 바로가기
주저리

국방부오픈소스아카데미 집체교육 후기입니다.

by 유세지 2019. 10. 26.

 지난 군인이 된 컴공이 사는 법 포스팅에서 국방부오픈소스아카데미 (osam.kr) 인터넷 강좌를 듣고 있다고 잠깐 적었었는데 온라인 성적 우수자에게 제공하는 집체교육에 선발되었습니다.

 

 처음 신청할때 이미 마감기한이 임박해서 '강의나 듣자' 라는 마음으로 늦게나마 부랴부랴 신청했었는데 운 좋게도 선발이 되어서 다녀오게 되었습니다. 2000명이 넘는 지원자 중 170명만 뽑혔을 정도로 쉽지 않은 캠프였는데도 붙은건 아마도 백준에서 늘 풀던 문제보다 쉽게 나온 코딩 테스트가 이유가 아니었나 싶어요. (고마워요 BOJ)

 

국방부오픈소스아카데미 페이지 (osam.kr)

 

 

 지난 2019년 10월 25일, 4박 5일간의 집체교육이 모두 끝났습니다. 흔치 않은 곳에 다녀온 기념으로 간단히 후기나 작성해보려고 합니다. 캠프 기간동안 잠을 적게 잔 덕분에 제 기억이 온전하진 않지만... 시간순으로 일기 쓰듯 작성해보겠습니다.

 

 

- 10월 21일 : 1일차

 

집체교육은 경기도 시흥에 위치한 대교 HRD 센터에서 진행되었습니다. 각 부대에서 따로 인원 수송을 해주거나 하진 않고, 개별적으로 오되 광명역에서 교육장까지는 30분 간격으로 셔틀버스가 운행되었습니다. 지하철로 광명역까지만 가면 되는걸 다른 방면으로 가는 지하철을 타고, 배차 간격도 확인안하고 무작정 기다리고... 예상 시간보다 1시간이나 늦게 도착한 덕분에 간신히 마지막 버스 시간에 맞춰서 입장할 수 있었습니다. 마침 길을 잘못 든 곳에 고척 스카이돔이 있길래 먼 발치에서나마 바라봤는데 좋네요.

 

대교 HRD 센터 전경

 

 

 

 중앙 로비에서 입소자 분류와 이름 확인을 끝내니 OSS CAMP 라고 적혀있는 검정색 기모 후드(!) 와 명찰을 받았습니다. 생각보다 따뜻했고 재질은 베레모랑 비슷한 것 같습니다. 개발 캠프나 컨퍼런스 오면 꼭 주는 티셔츠나 후드 같은 굿즈를 받고나니 내가 개발 캠프를 오긴 왔구나 하는게 실감이 났습니다. 군대에서 언제 이런걸 또 와볼까요...ㅠㅠ

 

명찰과 후드. 생각보다 따뜻하고 부드럽다.

 

 인원 확인이 끝나고, 임시로 마련된 2층 보관소에 짐을 두고오니 13시에 입소식 1부가 시작되었습니다.

1부 진행은 아나운서 박유림씨께서 맡아주셨습니다. 깔끔하고 부드럽게 진행해주시며 앞으로의 일정들을 물 흐르는듯한 진행과 함께 설명해주셨습니다. 실제로 아나운서를 뵌게 처음이다보니 신기했습니다.

 

 입소식은 여느 행사처럼 국민의례와 개회사, 축사등으로 시작했는데 오랜만에 온 캠프에 설레었는지 잠도 잘 안왔습니다. 보통은 꾸벅꾸벅 조는게 일상이었는데요. 군 관계자 분들의 낭독이 끝난 뒤 전체 인원을 대상으로 기념촬영을 진행했는데 사진 자료는 아쉽게도 찾지 못했습니다.

 

 으레 하는 식순이 끝나고 13시 30분 부터는 토크 세미나가 진행되었습니다. 컨퍼런스에서 세션들을 듣는 것 처럼 진행되었는데 첫 번째는 이노베이션 아카데미의 이민석 학장님이 발표하신 '오픈소스 소프트웨어 과거와 현재, 미래' 였습니다.

 오픈소스라는 개념이 자리잡고나서 지금까지의 역사와, 오픈소스 생태계에 큰 기여를 했던 인물들에 대한 소개, 앞으로의 발전 방향에 대해 짧게 소개해주셨습니다. 마지막엔 진행중이신 아카데미 과정 소개도 살짝..

 

 두 번째 세미나는 한국 마이크로소프트의 최영락님이 발표하신 '오픈소스의 발전' 이었습니다.

오픈소스 프로젝트가 발전하려면 어떻게 해야 하는지, 어떤 점이 중요한지에 대해 소개해주셨는데 주로 개발 결과물을 내어 놓는 것 뿐이 아니라 개발 과정을 남기는 것이 중요하다는 점, 여러 명이 참여하는 프로젝트이니만큼 개발 컨벤션을 정립해야 하며 어떤 것들이 있는지 간단히 소개해주셨습니다. 꽤 흥미로운 내용이라 재미있게 들었습니다.

 

이렇게 약 두 시간 가량의 세미나가 진행되고 나서 각 분야별 멘토를 소개하는 시간이 있었습니다.

 

 이번 집체교육은 세 가지 교육 과정으로 나뉘었는데 Web 분야, App 분야, IoT 분야였습니다.

그에 따라 멘토님들도 각 분야의 전문가 분들로 구성되셨는데 주 강사 1인, 보조 강사 1인 체제로 이루어진 팀이었습니다.

 

 저의 경우 Web 분야에 지원했기 때문에, Web 분야의 주 강사이신 김춘경 멘토님께 배정되었습니다.

후에 또 작성하겠지만 멘토님의 강의력이 상당하셔서 정말 많이 배웠습니다. 

 

 

 15시 30분 정도부터는 캠프 참가자들을 위한 사전 교육이 진행되었습니다. 개발 환경 세팅에 도움을 주신 goorm의 김현아 CEO님께서 웹 IDE인 구름을 소개해주셨고, 구름 IDE Basic 버젼의 2개월 이용 쿠폰을 메일로 보내주셨습니다. 캠프 기간엔 웹스톰을 사용하느라 아직 사용하지 못했지만 부대에 머무르는 기간동안 유용하게 사용할 예정입니다. 감사히 잘 쓰겠습니다.

 

 

메일로 발송된 구름 IDE basic 2개월 이용권

 

 

 

 참가자 사전 교육까지 마치고 나니 입소식 1부가 종료되었습니다.

2부는 갑작스럽게도 레크리에이션을 진행하셔서 당황스러웠습니다. 다들 일행이 있는데 나만 혼자와서 흑흑.. 이 부분은 잘 기억이 안 나서 넘어가겠습니다. ㅎㅎㅎ

 

 레크리에이션까지 마치고 숙소로 이동해서 먼저 식사를 했는데 식사가 정말 맛있었습니다. 군대 밥만 먹다가 민간시설 밥 먹어서 그런건진 모르겠지만 너무 맛있어서 살짝 감동했습니다. 식사를 자주 거르는 편인데 너무 맛있어서 캠프가 종료될때까지 한 끼도 안 거르고 군것질 하나 안했습니다. 덕분에 건강해졌어요.

 

매 끼니마다 무한 리필되는 샐러드(맛있다)와 아침마다 나오는 토스트(정말 맛있다)

 

 

 

저녁 식사가 끝나고 휴식을 취하는 줄 알았는데 숙소에 짐을 풀고 편한 옷으로 갈아 입은 뒤 강의장으로 내려와야 한다는 말을 들었습니다. 1일차지만 캠프 일정이 빠듯하게 구성되었기에 첫 날 저녁부터 곧바로 멘토님과 만나게 되었습니다.

 

 멘토님도 일정이 넉넉하지 않다는걸 아시고, 곧바로 기본적인 강의가 있었습니다.

 

최근 웹 프론트엔드의 경향성에 대해 강조하셨는데, 주요 내용은

 

  • jQuery를 통한 UI 개발 보다는 SPA 개발쪽이 더 활발해지고 있다.
  • 웹 퍼블리싱만 하기에는 불안하고, 스크립트까지 같이 하는 추세이다.
  • 그렇다고 HTML + CSS3 + SVG 는 사용하고 싶어도 국내 특성상 아직은... (늘어나고는 있음!)

정도가 있었습니다.

 

 이어서 EC2015~ 의 문법에 대해 강의해주셨고 (온라인 강의를 촬영할 당시엔 아직 나오지 않은 문법이었기에, 관련 내용을 모르는 캠프 참가자를 위해 추가로 교육해주셨습니다.) 웹 프레임워크인 Vue.js 사용법에 대해 강의하셨습니다. 아울러 이번 캠프의 목표인 프로젝트에 적극적으로 사용해보면 좋겠다고 하셨고, 실제로 Vue를 이용하며 생기는 문제들에 대해 모두 답변해주셨습니다.

 

 첫 날은 직접 제작하기 보단 화면 명세서(정의서)를 작성하는데 중점을 두었고, 이는 발사믹 (https://balsamiq.cloud/) 이라는 툴을 통해 진행되었습니다. (이런거 처음봤습니다)

 

 10시까지 기본적인 캠프 진행 시간이 끝나고 쉬고싶은 사람은 숙소로, 더 개발할 사람은 교육장에 남아 개발을 진행하는 연등 형식으로 진행이 되어서 저는 몇 시간 정도 화면 정의서 제작에 더 할애하였습니다.

 

 

 

- 10월 22 ~ 24일 : 2 ~ 4일차

 

 2일차부터는 본격적으로 개발 착수에 들어갔습니다. 멘토분께서 미리 강조하신 내용이 있었는데, 처음엔

 

  • 반드시 Vue.js 사용
  • 화면 ui 제작에 충실
  • 데이터 연동은 Mockup기반으로 진행 (json)
  • 실 서버 연동은 평가 하지 않음

이런 전제조건이 있었습니다. 다만 이 중에 반드시 Vue.js 사용의 경우 진행팀 측과의 상의를 통해 사용하고 싶은 프레임워크나 라이브러리를 마음껏 사용하는 것으로 변경되었습니다. 첫 날에 이어 부족했던 부분에 대해 보충 설명을 진행하시고, 그때부턴 모든 캠프 참여자들이 본격적인 개발을 시작했습니다.

 저의 경우 현역 군인을 위한 질문&답변 서비스를 기획했는데 Vue.js 도 그렇고, Web 프로젝트 자체에 익숙하지 않다보니 기본적인 기능 구현 자체에도 시간이 많이 걸렸습니다. 덕분에 강사님께 1:1로 물어보고, 혼자서 삽질도 해가며 짧은 시간에 많은걸 얻어갈 수 있었습니다. 아래는 개발과정이 담긴 화면입니다.

 

 

발사믹을 이용하여 작성했던 화면 정의서
기본적인 html + css + bootstrap 만을 이용해 구성했던 초기의 화면
bootstrap을 빼고 element.ui 를 적용한 개발 막바지의 화면

 

 

 

 단 한 번도 Vue.js를 사용해본적이 없고, 웹 프로젝트 하나도 끝까지 완성시킨 경험이 없는 상태인데 이 모든걸 혼자서 진행했다면 절대로 하지 못했을 일정이었습니다. 다만 옆에서 멘토분들이 도와주시고, 의욕과 실력을 두루두루 갖춘 다른 캠프 참여자분들과 함께 개발하게 되어 저도 그 기운을 받아 잘 끝냈던 것 같습니다. vuex며 store며... 몇 날 며칠은 더 걸렸을텐데 이런 환경에서 함께 할 수 있다는게 너무 기뻤습니다.

 

 개발을 얼추 마무리 짓고 나서는, 프로젝트를 소개하는 ppt와 영상을 촬영해야 했습니다. 이 때만큼 제게 디자인 감각이 없다는게 슬픈 적이 없었던 시간이었던 것 같습니다.

 

 

서글픈 공학도의 ppt

 

 

 

 영상까지 만드려고 하였지만 오늘은 너무 졸려 내일의 나에게 맡기고, 숙소로 올라와 단잠에 빠졌습니다. 이렇게 마지막 날 아침이 밝았습니다.

 

 

 

 

- 10월 25일 : 5일차

 

 

 마지막 날의 아침은 정신없이 분주했습니다. 여유롭게 식사도 하고, 10분만 더 자자... 의 추가시간도 없이 교육장으로 내려와 영상부터 부랴부랴 만들었습니다. 다행히 전날 설치를 눌러놓은 곰믹스와 곰캡처가 모두 설치되어 있어서 따로 설치에 시간을 뺏기진 않았습니다. 몇몇 다른 팀은 유스 케이스도 만들어 연기(?)를 곁들인 감칠 맛 나는 영상도 준비했던데, 솔로에 잠 많은 초보 개발자인 저로서는 엄두도 못 내는 일이었습니다. 간단히 사용하는 모습을 화면으로 캡쳐하고, 설명하는 자막을 입혀 약 20분만에 파일로 뽑아내는데 성공했습니다. 파일을 정해진 구글 공유 드라이브에 빠르게 제출하고, 여유로운 아침을 먹었습니다. 밥은 먹고 살아야하니까요.

 

 오전 10시쯤 되었을 무렵, 숙소의 짐을 모두 빼고 마지막으로 교육장에 모여 서로의 프로젝트를 발표하는 시간이 있었습니다. 발표 할 사람만 하는 줄 알았는데, 드라이브 맨 위의 파일부터 하나씩 열어가며 해당 프로젝트 수행했던 인원들을 부르셨습니다. 부끄러웠어요.

 

 발표까지 모두 끝나니 빠질 수 없는 사진 촬영이 기다리고 있었습니다. 센터 여기저기를 옮겨다니며 촬영이 이어졌는데, 이것도 마지막이라고 생각하니 문득 아쉬워졌습니다. 이제 부대로 복귀할 시간이 임박했네요.

 

 이렇게 모든 일정이 종료되었습니다. 센터에서 광명역으로 돌아갈때도 셔틀버스를 운행해주셔서 다행이 빠르게 이동할 수 있었습니다. 버스 이동거리가 생각보다 꽤 길더라구요. 공식적인 일정은 이렇게 끝입니다.

 

 캠프에 대한 소감은 우선 환경이 너무 좋았다는 것. 개발하는데 전혀 무리가 없는 렌탈 노트북 (CPU-i7 RAM-8GB)과 편안히 쉴 수 있는 4인 1실의 숙소, 매일 제공되는 맛있는 식사... 정말 개발에만 집중할 수 있는 최적의 환경이라고 생각합니다. 이 외에도 진행측에서 야식으로 피자를 배달한다던지, 핫도그를 사온다던지 하는 물적(?) 지원에 이어 12시가 넘어가도록 퇴근하지 않고 함께 문제를 해결해주신 멘토님의 열정이 있었기에 모든 참가자가 무사히 프로젝트를 끝마칠 수 있었던 것 같습니다.

 이 밖에도 작년보다 캠프가 많이 개선되었다고 하는데 민간시설에서 진행한건 이번이 처음이라고 들었습니다. 캠프 기간도 4박 5일로 가장 길었고... 덕분에 좋은 경험 쌓고 간 것 같습니다.

 

 군인으로 복무하면서, 그것도 개발병이나 관련 부처도 아닌 일반 보병으로서 이런 기회가 정말 흔치 않은데 좋은 자리 마련해주셔서 감사했습니다. 행복하고 유익한 캠프였습니다.

 

 

1층 카페에서 사온 아이스 아메리카노와 함께 개발중
캠프 수료증
귀여운 식권
맛있는 야식들
경치 좋은 숙소와 피로를 풀어줄 푹신한 침대

 

 

 

 

- 프로젝트 깃허브 링크 (https://github.com/kyr9389/OSSCAMP_Q-A)

 

kyr9389/OSSCAMP_Q-A

군생활에 필요한 정보들을 질문과 답변을 통해 얻어갈 수 있는 페이지입니다. *본 레포는 국방부오픈소스아카데미 프로젝트입니다. - kyr9389/OSSCAMP_Q-A

github.com

 

반응형

댓글