github.com/iolate/JunctionX_minutes
팀원: 김태윤 (UNIST, 기획/디자인), 이지영 (UNIST, 디자인), 신지윤 (UNIST, 매니저), 김승호 (UNIST, 개발), 전대성 (UNIST, 개발)
개발 기간: 2020년 10월 9일 ~ 2020년 10월 11일 (JunctionXSeoul 2020 해커톤 기간)
핵심 기술: Python & Flask, Microsoft Azure, Figma
결과: 🥉 3rd Prize! 🥉in Microsoft Track: Develop for Collaboration and Remote productivity
지난 10월 9일부터 3일간 JunctionXSeoul 2020 해커톤 행사에 참여하였다. 이 행사는 작년에도 진행되었고, 나와 태윤이 형과 지영 누나와 함께 참여했던 해커톤이기도 했다. 그때는 오프라인으로 용산에서 진행됐었는데 5성급인가? 4성급인가 하는 호텔도 빌려주어서 2박 3일로 지내기 좋았다. 하지만, 당시에는 아이디어 구현을 너무너무 하고 싶어서 호텔은 들어가서 짐만 풀고 잠은 하루만 자고 하루는 날을 샜던 것 같다. ㅋㅋㅋㅋㅋ 호텔을 포기할 정도로 열정적이었다니, 그런 호텔에서 언제 자본다고...
올해에는 코로나 때문에 오프라인으로 진행되지 못하고 온라인으로 진행되었다. Slack을 통해서 기본적인 공지사항을 전달하고 유튜브 라이브를 통해서 행사 진행을, 줌을 통해서 파트너 기업들과 함께 워크샵을 진행했다. 파트너 기업으로는 Naver Z, Microsoft, Rakuten API, SI Analytics이 참여하였고, 우리는 이 기업들 중 하나를 트랙으로 선택하여 이들이 제시한 문제를 해결하는 아이디어를 고안하고 구현해야 했다. 물론, 트랙을 선택하면 이들의 자원을 사용할 수 있게 허가를 해준다. (혹은 Free tier를 사용하게끔 안내해준다.)
작년처럼 Naver는 ZEPETO라는 애플리케이션에서 확장할 수 있는 서비스를 문제로 제시하였다. 작년에 우리는 Naver를 트랙으로 밟아 해커톤을 진행했었는데, 수상을 하는 등의 좋은 결과는 없었는데도 행사가 끝난 후에 Naver로부터 인턴 제안을 받았었다. 당시에 석박사 통합과정으로 입학하는 대학원 때문에 인턴 제안을 거절했지만, 그게 너무 아쉬워서 이번에도 인턴 제안을 받으면 휴학을 해서든 방학에 잠깐 해서든 꼭 해보고 싶다는 생각이 있었다. 이번에도 그런 기회가 올까? 하는 마음에 Naver 트랙을 해볼까 하다가 팀과 함께 아이디에이션 하는 과정에서 Naver 쪽 아이디어가 당최 생각이 나질 않아서 제외하게 되었다. (대단한 걸 했다고 생각을 안 했는데 좋게 봐주시고 인턴 제안을 해주셨어서 막연히 기대했던 것도 있었다.)
우리는 결과적으로 Microsoft 트랙을 밟기로 했다. 문제는 "Develop for Collaboration and Remote productivity" 였다. 이유는, 요즈음 코로나 때문에 우리가 온라인으로 협업하는 경우가 많아졌고 다들 수업이나 미팅을 ZOOM이나 BB collaboration을 활용하기 때문에 경험적으로 무엇이 불편하고 개선해야 하는지 어느 정도 감을 잡을 수 있었기 때문인 것 같다. 그래서 트랙을 정하고 위 사진처럼 아이디에이션을 진행했다. 각자의 생각을 포스트잇으로 적어서 칠판에 모두 붙이고 포스트잇을 작성한 사람의 얘기를 들어본 뒤, 비슷한 것들끼리 모아서 해결하려는 문제에 대해 명확히 정해보려고 하였다. 개인적으로 이번 해커톤에서 이 과정 자체가 나에게 제일 유익했다. 내가 혼자서 하는 아이디에이션이나 수업에서 해야 하는 프로젝트의 주제를 정할 때, 항상 붕붕 뜬 생각 때문에 정하지도 못하고 진행이 더뎠기 때문이다. 우리는 처음에 온라인으로 할 수 있는 비언어적 표현 개발을 아이디어로 가져갔다가, "비언어적 표현"이라는 것이 우리가 정확히 이해하기엔 애매모호한 부분이 있어서 철회하고 자동으로 화상 회의 영상을 회의록으로 변환해주는 서비스인 Minutes를 개발하기로 하였다.
Microsoft는 이들이 제공하는 클라우드 컴퓨팅 서비스인 Azure를 무료로 한 달 사용할 수 있도록 해준다. 앞서 말한 주제처럼, Microsoft 트랙은 이 서비스를 활용해서 새로운 생산성 툴을 개발하는 것을 주제로 제시했는데, 우리는 최근 많아진 화상 회의를 자동으로 회의록으로 변환해주어 편리함을 제공하고자 Minutes를 개발하였다. 사용한 서비스는 음성을 텍스트로 변환해주는 AI 툴인 Azure Speech, 주어진 텍스트에서 중요한 키워드만 추출해주는 Keyword extraction API를 사용하였다. 즉, 영상을 스크립트로 변환해 주는 것뿐 아니라 변환한 스크립트에서 핵심 키워드를 하이라이트 하여 한눈에 회의록을 파악할 수 있도록 하였다. 나는 이 두 기능을 Azure를 통해 구현하였고, 구현한 함수를 승호형이 구축한 웹 프레임워크에 Import 하여 완성하였다. (프론트엔드 부분도 살짝 손봤다 ㅎㅎ)
이게 Working demo가 구현된 모습인데, 나는 이렇게 우리가 생각한 아이디어를 눈으로 볼 수 있게 될 때 가장 즐거운 것 같다. 실제로 저 화면이 나왔을 때, 나는 입을 틀어막고 한 2분을 기뻐했던 것 같다. 또, 우리가 회의 내용을 직접 들어보고 스크립트와 비교했는데, 완벽할 정도로 똑같아서 한 번 더 놀랐다. 우리는 이 프로젝트를 정리해서 JunctionX에 제출하였고, 결과는!!
3등을 하게 되었다!! 🎉 작년에 오프라인으로 참여할 때는 저 수상 패널에 우리 이름이 없어서 너무너무 속상했는데, 그때 기억 때문에 비록 온라인으로 발표하고 상금도, 기념품도 없지만 저 때 너무 행복했다. Microsoft가 자신이 속한 팀들 중에 우리가 3번째로 가치 있다고 판단해주었으니까 이런 결과가 나왔다는 생각에 더 그랬던 것 같다. 그러나... 상금은 없었다.. 나는 이런 결과가 나올 수 있었던 이유가 처음부터 계획적으로 "2 개발자, 2 디자이너, 1 (경영학과의) 디렉터" 라는 팀 구성, 그리고 서로의 생각을 납득 가능한 수준으로 피드백하며 진행한 아이디에이션 과정에서 왔다고 생각한다. 이러한 이유들은 작년에 느꼈던 약점들을 많이 메워주었기 때문에 충분히 의미가 있다고 생각했다. 또, 개인적으로는 코딩과 개발에 있어서 많이 성장했음을 느낄 수 있었다. API 사용이 자연스러워졌고 코드를 깔끔하게 짤 수 있었다. 또, 오랜만에 만져본 프론트엔드도 아직은 손이 익어서 다행이라고 느꼈다. 그래서 그런지 더 개발 욕심이 나기도 했다.
으휴.. 대학원 공부보다 이렇게 아이디어 구현하고 코딩하는 게 더 즐거운 내가 못 말리고 밉다가도 한편으론 자랑스럽기도 하다. 이렇게 매번 해커톤이나 토이 프로젝트를 할 때마다 느끼는... 나 자신을 애증으로 바라볼 때가 있다. 어찌 되었건 항상 하나의 일만 주구장창 하면 재미없다고 생각하는 나라서 더 그렇게 느끼지 않나 싶다. 쓰고 싶은 후기는 2배 이상으로 더 많지만, 생각나면 더 쓰기로. 함께 해준 팀원인, 태윤이 형, 찌영누나, 승호형 그리고 특별히 고생해준 지윤이한테 너무 고맙다! 다음의 색다른 경험을 할 때도 함께 하고 싶은 좋은 멤버들이었다. ☺️
'프로젝트' 카테고리의 다른 글
[C] 울산 코로나맵 프로젝트 (2) | 2020.03.14 |
---|