본문 바로가기

대회, 대외활동

[AWS 해커톤] 1. 운영진 교육

어쩌다가 하게 되었는가

현재 'IGRUS' 동아리에서 부회장 겸 총무를 맡고 있다. 330명으로 인원이 많은 축에 속하다 보니 동아리 자체적인 대회도 종종 열리곤 한다. 이번에는 판이 좀 커져서 AWS 한국지사와 인하대학교 소프트웨어 중심 사업단, 그리고 우리 동아리가 공동으로 해커톤 대회를 열게 되었다.

해커톤 인원 모으기

IGRUS에서 공동으로 개최하는 대회인 만큼 우리 동아리에서 어느 정도 인원수를 채워 줘야 명분이 좀 살았다. 동아리방, 5호관 건물, 60주년 기념관 등을 돌면서 나이트 삐끼처럼 홍보 포스터를 붙이고 다녔다.

결론적으로 약 100명에 달하는 인원을 모을 수 있었다.

AWS 본사 운영진 교육

운영진들은 강남 역삼동에 있는 AWS 한국지사에 방문해서 따로 교육을 받았다. 신나서 막 사진을 찍었다.

교육1: EC2를 사용해서 간단한 Slack app 만들기

slack 앱을 만들고 직접 사용해 보는 실습을 해 봤다. 맨 처음 실습은 멘션됐을 때 "hello! "을 출력하는 앱이었다. 감사하게도 AWS 측에서 임시 engine을 제공해 주셔서 무료로 여러가지 유료 기능을 이용할 수 있었다.

"import config
import re
from slack_bolt import App
from slack_bolt.adapter.socket_mode import SocketModeHandler

app = App(token=config.bot_token)


@app.event('app_mention')  # 앱을 언급했을 때
def who_am_i(event, client, message, say):
  print('event:', event)
  print('client:', client)
  print('message:', message)
  say(f'가보자고... <@{event["user"]}>')

@app.message(re.compile('lunch'))
def regex(event, client, message, say):
    say('eat burger')

if __name__ == '__main__':
    SocketModeHandler(app, config.app_token).start()

위와 같은 코드를 AWS EC2에 올려서 slack app을 실행할 수 있었다. 슬랙이라는 것 자체를 처음 접해봤는데 실제로 앱을 개발해서 슬랙 내에서 기능을 수행할 수 있다는 사실이 아주 흥미롭고 재미있었다. EC2같은 경우에는 기존에도 사용하고 있던 기능이라 새로울 건 없었지만, slack module과 연동해서 따로 서버를 구축하지 않고 뭔가 실행할 수 있다는 게 신기했다.

교육2: Cloud9 사용해 보기

기존 EC2 기능은 Linux 기반에서 bash를 통해 명령어를 입력하기 때문에 코드를 수정하기 어렵고 직관적이지 않다는 단점이 있었다. Cloud9은 자체 IDE를 제공하여 GUI를 통해 쉽게 코드를 작성/수정할 수 있다는 장점이 있다. 이러한 기능을 사용해서 숙명여대 주변의 맛집 리스트를 추천해 주는 어플을 간단히 만들어 봤다.

교육 후기

일단 AWS 본사를 구경하는 것 자체가 신났다. 마계같은 인천에만 있다가 강남 나들이를 한 기분이었다. 사람이 많아서 신기했고 건물이 높은 것도 신기했다. 이렇게 말하니까 촌놈같지만... 전반적으로 즐겁고 신났다. 교육 자체도 처음 slack이 뭔지도 모르고 시작했던 것 치고는 나름 간단한 어플까지 만들 수 있게 됐을 정도로 양질의 교육이었다. AWS에는 수많은 기능이 있지만 기존에는 EC2하나만 사용했었다. 하지만 이번 교육을 통해 정말 다양한 기능이 있다는 사실을 알게 됐다. 더불어 해커톤 운영진으로서 해커톤 당일에 사용할 앱을 직접 만들어 보고 싶다는 생각을 했다. 내가 만든 어플이 행사에 실제적으로 사용된다면 얼마나 보람있을까?