인테리어 프로그램 개발
목차
동기
실력 확인
3학년 때 총 2개의 교외 소프트웨어 경진대회를 나가 둘 다 수상을 하였습니다. 하지만 팀을 이뤄서 나가 얻은 결과이기 때문에 항상 나 자신의 실력이 어느 정도인지 궁금했습니다.
다른 사람과의 협업
학교 사람들을 제외하고 다른 사람들과도 협업을 이뤄보고 싶어 2018 MIDAS CHALLENGE에 신청하게 되었습니다.
예선
예선은 6문제인데 그동안 따로 알고리즘 공부를 해본 적이 없어, 걱정되는 마음으로 시험을 치렀습니다. 4시간 동안 시험이 진행되는데 총 4문제를 풀어 시험에 제출하였고 제가 느끼는 난이도는 적당하였습니다.
그때 풀었던 문제와 풀이입니다. 풀이라기보다는 제가 적어서 낸 답인데 처음 준비해본 알고리즘 대회여서 코드가 난잡하다는 것을 많이 느꼈습니다. 이번 계기로 알고리즘 공부를 해 볼 생각입니다.
MIDAS 예선 문제
본선
OT, 본선 전까지의 시간
본선 정확히 일주일 전에 팀 빌딩을 위한 OT를 진행하는데 랜덤으로 팀이 3명씩 이루어지게 됩니다.
본선 진행에 대한 OT와 회사에 대한 발표를 진행한 뒤 팀별로 회의하는 시간이 주어지게 됩니다. 다행히 팀원 중 한 분이 작년도 MIDAS CHALLENGE 참여자여서 여러 정보들을 알려주었습니다.
저희는 그 정보들을 토대로 사용할 언어, 협업 시스템, IDE 등을 정하고 작년 주제에 대해 일주일 전에 만나서 코딩을 해보기로 정하였습니다. 따로 만나 한번 GIT을 사용하기 위해 개발 환경을 맞추기로 하였는데 Maven을 저만 사용할 줄 알아서 서로 개발 환경을 구성하는데 조금 힘들었습니다. 이때 본선 대회 진행 전에 한번 만나본 것을 정말 다행으로 생각했습니다.
다행히 서로 대화가 잘 통해 서로에게 맞는 개발 환경을 열심히 노력해서 구성하였고 작년도 문제였던 그림판을 간단히 구성해서 대회 전 준비를 끝마쳤습니다. 한 가지 팁이 있다면 본선 전에 가능한 한 많은 대화를 나누고 가볍게 서로 협업해보는 것이 정말 중요한 것 같습니다. 끝나고 밥을 먹었는데 정말 너무 맛있었습니다!
본선
본선 당일에 주제를 공개합니다. 저희 응용의 본선 주제는 각 필수 기능과 추가 기능을 구현한 인테리어 프로그램이었습니다. 주제를 들은 뒤 바로 팀원들과 전체적인 구조를 짜고 각자의 역할을 배분하였습니다. 먼저 저는 전에 연습해보았던 그림판을 이 인테리어 프로그램 구조에 맞게 빠르게 구성하였고 각 팀원은 전체적인 프로그램의 방향을 잡았습니다.
각자의 할 일을 하고 전체적으로 합치고 검증하고를 반복하였습니다. 아무래도 채용 연계 전형이다 보니 직원분들이 많은 관심을 보여주는데 약간 감시하는 듯한? 느낌도 들었습니다.
정말 힘들었지만 버틸 수 있었던 점은 밥이 정말 맛있고, 중간중간에 계속 커피, 과자, 치킨 등등 먹을 것을 끊임없이 주셨습니다!
밤을 새워서 피피티까지 준비해 발표 준비를 맞췄습니다. 저희는 추가 기능과 필수 기능을 모두 끝내서 수상에 대한 약간의 기대를 하였지만 확신하진 못 했습니다.
모든 팀에 발표를 보고 한, 두 팀 정도가 잘했다고 생각이 들었는데 다음 시상에서 그 두 팀과 저희가 수상을 하게 되었습니다!!!!
솔직히 받을지 못 받을지 계속 긴가 민가 하고 있었는데 상을 받게 돼서 그동안 고생했던 모든 시간이 보상받는 느낌이었습니다. 마지막으로 시상이 끝난 뒤 나갈 때는 MIDAS CHALLENGE를 진행했 던 직원 분들이 박수를 쳐주시는데 정말 감사했습니다.
이건 대회에 사용했던 프로그램입니다. 수정할 부분이 있으니 참고하여 봐주시기 바랍니다. MIDAS 본선 문제
입사 후 다시 만든 인테리어 프로그램입니다. MFC Interior Program
내가 얻은 것
- 개발에 대한 재미, 자신감
- 모르는 사람과 협업할 때의 방법
- 첫 해커톤 대회 수상!
앞으로 많은 해커톤 대회나 개발 대회에 참여할 것이며 다양한 도전을 해보고 싶습니다.
- 며칠 뒤에 온 특별채용 제의 메일입니다.