오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...Amazon Web Services Korea
서비스 런칭을 위해 라이온하트와 카카오게임즈가 어떻게 최적 성능의 인스턴스를 선택하고, Windows 운영 체제를 최적화하며, 왜 Amazon Aurora를 기본 데이터베이스로 채택하였는지를 설명합니다. 또한, 출시부터 운영까지의 과정에서 MMORPG가 어떻게 AWS 상에서 설계되고, 게임 서버 성능을 극대할 수 있었는지에 대해 전달해드립니다.
어느 해커쏜에 참여한 백엔드 개발자들을 위한 교육자료
쉽게 만든다고 했는데도, 많이 어려웠나봅니다.
제 욕심이 과했던 것 같아요. 담번엔 좀 더 쉽게 !
- 독자 : 백엔드 개발자를 희망하는 사람 (취준생, 이직 희망자), 5년차 이하
- 주요 내용 : 백엔드 개발을 할 때 일어나는 일들(개발팀의 일)
- 비상업적 목적으로 인용은 가능합니다. (출처 명기 필수)
데브시스터즈의 Cookie Run: OvenBreak 에 적용된 Kubernetes 기반 다중 개발 서버 환경 구축 시스템에 대한 발표입니다.
Container orchestration 기반 개발 환경 구축 시스템의 필요성과, 왜 Kubernetes를 선택했는지, Kubernetes의 개념과 유용한 기능들을 다룹니다. 아울러 구축한 시스템에 대한 데모와, 작업했던 항목들에 대해 리뷰합니다.
*NDC17 발표에서는 데모 동영상을 사용했으나, 슬라이드 캡쳐로 대신합니다.
Amazon SageMaker 모델 배포 방법 소개::김대근, AI/ML 스페셜리스트 솔루션즈 아키텍트, AWS::AWS AIML 스페셜 웨비나Amazon Web Services Korea
Amazon SageMaker 배포에 처음 입문 하고자 하는 분들을 위해 동작 방식을 설명하고 실행할 수 있는 가이드를 제공합니다. Amazon SageMaker 빌트인 4가지 서빙 패턴(리얼타임 추론, 배치 추론, 비동기 추론, 서버리스 추론)을 시작으로 프로덕션 적용을 위한 핵심 기능과 비용 절감을 위한 방법을 소개합니다.
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...Amazon Web Services Korea
서비스 런칭을 위해 라이온하트와 카카오게임즈가 어떻게 최적 성능의 인스턴스를 선택하고, Windows 운영 체제를 최적화하며, 왜 Amazon Aurora를 기본 데이터베이스로 채택하였는지를 설명합니다. 또한, 출시부터 운영까지의 과정에서 MMORPG가 어떻게 AWS 상에서 설계되고, 게임 서버 성능을 극대할 수 있었는지에 대해 전달해드립니다.
어느 해커쏜에 참여한 백엔드 개발자들을 위한 교육자료
쉽게 만든다고 했는데도, 많이 어려웠나봅니다.
제 욕심이 과했던 것 같아요. 담번엔 좀 더 쉽게 !
- 독자 : 백엔드 개발자를 희망하는 사람 (취준생, 이직 희망자), 5년차 이하
- 주요 내용 : 백엔드 개발을 할 때 일어나는 일들(개발팀의 일)
- 비상업적 목적으로 인용은 가능합니다. (출처 명기 필수)
데브시스터즈의 Cookie Run: OvenBreak 에 적용된 Kubernetes 기반 다중 개발 서버 환경 구축 시스템에 대한 발표입니다.
Container orchestration 기반 개발 환경 구축 시스템의 필요성과, 왜 Kubernetes를 선택했는지, Kubernetes의 개념과 유용한 기능들을 다룹니다. 아울러 구축한 시스템에 대한 데모와, 작업했던 항목들에 대해 리뷰합니다.
*NDC17 발표에서는 데모 동영상을 사용했으나, 슬라이드 캡쳐로 대신합니다.
Amazon SageMaker 모델 배포 방법 소개::김대근, AI/ML 스페셜리스트 솔루션즈 아키텍트, AWS::AWS AIML 스페셜 웨비나Amazon Web Services Korea
Amazon SageMaker 배포에 처음 입문 하고자 하는 분들을 위해 동작 방식을 설명하고 실행할 수 있는 가이드를 제공합니다. Amazon SageMaker 빌트인 4가지 서빙 패턴(리얼타임 추론, 배치 추론, 비동기 추론, 서버리스 추론)을 시작으로 프로덕션 적용을 위한 핵심 기능과 비용 절감을 위한 방법을 소개합니다.
Waterful Application (iOS + AppleWatch)Jeongmin Cha
* keynote로 만든 파일이라 글자가 깨집니다. 원본을 보시고 싶으시면 ... 에서 확인하세요. 감사합니다.
소프트웨어 마에스트로 6기 1단계 2차에서 수행했던 프로젝트입니다. Waterful 어플리케이션은 사용자의 물마시기를 도와주는 어플리케이션입니다. iOS환경에서 Swift언어를 이용하여 개발하는 시간을 가졌고, 또한 iOS뿐만 아니라 애플워치에서 앱 개발을 해보는 경험을 가졌습니다.
소프트웨어 마에스트로 6기 2단계 'RoundUp'팀의 최종발표자료입니다.
저희 팀은 최일지, 차정민, 강경완 멘티들로 이루어져 있습니다. RoundUP이란 그룹간의 소통을 위한 SNS입니다. 지역이나 소속 단체등에 한정되어서 그룹이 맺어지고 그들끼리만 소통이 이루어진다는 것이 아쉬웠습니다. 가령 같은 주제를 공부하고 있는 학술 동아리나 스터디 사람들도 지역이 다르고 학교, 회사 등의 소속단체가 다르다는 이유로 서로 소통하기가 어렵다는 점이 아쉽다고 느껴져서 이 서비스를 기획하게 되었습니다.
3. 1. 자기소개
● 학부 데이터 마이닝 연구실, 대학원 NLP 연구실에서 약 2년간 연구한 경험
● 회사 및 사이드 프로젝트에서 프론트엔드/백엔드 여러 분야에 걸쳐
다양한 프레임워크 활용하며 개발한 경험
● 소프트웨어 엔지니어로서 정규직으로 일한 기간은 약 2년 8개월, 3년차 개발자
● 역할 분배 및 체계가 잡힌채로 프로젝트가 진행되는 걸 선호
○ 이러한 성격 덕분에 팀이 프로젝트를 수행하면서 생기는 빈 공간을 채워 체계를 더 탄탄히 하거나
○ 프로젝트를 수행하기 전에 아키텍처 및 골격을 잡는 업무를 많이 수행
● GitHub: https://github.com/jeongmincha
● Linkedin: https://www.linkedin.com/in/jeongmincha/
5. 3. 경력사항 - 목차
● 소프트웨어 엔지니어, 티맥스비아이 (기존 티맥스소프트)
○ 한국 시스템 소프트웨어 1위 업체 (본인이 재직했던 부서는 주로 AI 및 신사업 서비스 관련 부서)
○ 재직기간: 2019.08 - 재직중 (1년 8개월)
● 퀀트 소프트웨어 엔지니어, 하이퍼리즘
○ 암호화폐 자동화 매매 개발 회사
○ 재직기간: 2018.03 - 2019.02 (1년)
● 인턴 경력 (목차에서만 작성. 세부 업무 작성하지 않음)
○ 연구 및 개발 인턴, 엘리스 (2017.01 - 2017.04, 4개월)
○ 개발 인턴, LG 전자 (2013.07 - 2013.08, 2개월)
6. 3. 경력사항 (1)
● 티맥스비아이, AI Finance 본부 / 2020.06 - 현재 (10개월)
● 주요 업무 내용 및 역할
○ 오픈뱅킹 API 이용하여 은행 계좌 정보를 조회하는 API 서버 개발
■ 데이터베이스 스키마 및 API 스펙 설계
■ 오픈뱅킹 API 호출 횟수를 줄이기 위한 캐시 구조 설계
■ 사용 기술: Node.js, MySQL, Redis
○ 하이퍼머니 (가칭) 백엔드 시스템 설계 및 개발
■ 하이퍼머니: 로보 어드바이저, 자산 관리 등 금융 전반 기능을 제공하는 금융 통합 플랫폼 서비스
■ 전체 시스템을 마이크로서비스 구조로 설계하고, 그 안에서 계좌 관련 처리를 위한 API 서버 담당
■ 사용 기술: ProObject (Spring 유사), Tibero (Oracle 유사), JEUS (Tomcat 유사), Kubernetes, lstio
○ 기업 가치 평가 모델 연구
■ 사용자의 투자에 도움을 줄 수 있도록 기업의 적정 가치를 평가하는 모델을 연구하는 프로젝트에 참여. 해당 프로젝트에서 기본적
분석을 통한 내재가치 평가하는 파트로 참여
■ 재무제표, 애널리스트 컨센서스 리포트 크롤링 수집
■ 컨센서스 리포트의 예상 주가와 실제 주가 사이의 괴리를 최소화하는 텍스트 키워드, 저자, 증권사 등을 찾는 연구 수행
■ 사용 기술: Python (sklearn, DataFrame, excel, pdf 파싱 라이브러리 등 사용)
● 업무 성과
○ 오픈뱅킹 API 횟수를 줄여서 비용을 최소화하기 위한 캐시 구조를 설계하고 제시하여 특정 시간 내에 API 호출 횟수를 50% 수준으로 단축
○ 계좌 관련 서비스에 대해 데이터베이스 스키마 및 API 스펙을 설계하고 문서화
7. 3. 경력사항 (2)
● 티맥스비아이, AI 본부 자연어처리 팀 / 2019.08 - 2020.05 (10개월)
● 주요 업무 및 역할
○ 챗봇 개발 스튜디오 hyperChatbot Studio 프론트엔드 개발
■ HyperChatbot Studio: 챗봇을 위한 데이터가 학습되고 추론 모델이 생성되는 core cli program의 사용성을 높이기 위해 만든
Web UI 기반 스튜디오 제품. 학습 데이터 주입 > 학습 > 추론 서버 실행과 같은 일련의 과정을 Web UI로 할 수 있도록 제공
■ 사용 기술: TOP (사내 프론트엔드 프레임워크) + Vanilla Javascript
○ NLP 팀 기술 데모 페이지 및 API 게이트웨이 서버 개발
■ 기술 데모 페이지 프론트엔드는 프론트엔드 프레임워크 없이 HTML, CSS, Javascript 를 작성하고 Python Flask로 전달해주는
형태로 전달
■ 각 데모페이지마다 사용되는 기술들의 API들을 하나의 서버에서 관리할 수 있도록 게이트웨이 서버를 개발, Swagger를 통한
문서화
■ 사용 기술: Python Flask, Swagger
○ NLP 모듈 도커 저장소 설정 및 관리
■ 챗봇 플랫폼 환경설정 완료한 환경을 담은 도커 이미지를 빌드하고 도커 저장소에서 관리
■ 사용기술: Docker
● 업무 성과
○ 자연어 처리 팀 소속 당시 프론트엔드 개발을 할 수 있는 인력이 없어서 챗봇 개발 플랫폼 스튜디오를 기간 내에 개발 완수하는데 공헌함.
○ TOP는 처음 사용하는 프론트엔드 프레임워크였으나 약 1달 반에 프레임워크 사용법을 숙지하고, 제품의 초버전을 완성하는데 성공함
○ 챗봇 플랫폼에 필요한 라이브러리 설치 및 환경설정이 상당한 시간을 소요하였음 (최소 1일 이상). 필요한 환경들을 담은 도커 이미지를
빌드하고 도커 저장소로 관리함으로써 팀원의 업무 시간을 크게 단축함.
8. 3. 경력사항 (3)
● 퀀트 소프트웨어 엔지니어, 하이퍼리즘 / 2018.03 - 2019.02 (1년)
● 주요 업무 및 역할
○ 파이썬 기반 자동화 매매 프레임워크 개발
■ 지표 조건, 시간 등 이벤트 조건에 따라 전략 알고리즘을 실행하는 파이썬 매매 프레임워크 개발
■ 사용 기술: Python (threading, scheduler 관련 라이브러리)
○ 자동화 매매 봇들이 공통적으로 사용하는 사내 Node.js 모듈 개발
○ 사내 프로젝트들에 CI/CD 도입하고 테스트 코드 작성
■ 사용 기술: Buddyworks, Javascript (ava, jtest)
● 업무 성과
○ 서버를 직접 프로그래밍할 수 없는 퀀트 전략가 포지션의 팀원들이 단순한 프로그래밍 로직만으로 자동화된 매매 프로그램을 만들 수 있도록
프레임워크를 제공함.
○ 기존에 여러 봇에서 공통적으로 사용하던 코드들을 모듈화하고, 해당 코드들에 대한 테스트 코드 작성 및 CI/CD 환경을 구축함으로써
사내 프로젝트들의 코드 재사용성 및 확장성에 기여함.
9. 4. 개인 프로젝트 (1)
● 매매 포지션 관리 텔레그램 봇 개발 / 2021.01 -
● 상세 내용
○ 매매에 도움되는 정보들을 트위터 및 거래소에서 가져와서 텔레그램 메시지로 알려주는 기능 구현
(커맨드로 확인하거나 및 특정 시간마다 cron job 으로 알려줌)
○ 여러 거래소 계좌의 잔액 및 포지션을 통합해서 볼 수 있는 기능 구현
○ 전체 총 계좌 잔액의 변화 추이 등을 그래프 및 표로 표현하기 위해서 데이터베이스 및 구글 독스에 데이터 저장하는 로직 구현
○ 사용 기술: AWS EC2, Python (telegram, scheduler, gspread 관련 라이브러리 사용), Redis, MySQL
● 개인 성과
○ 여러 사이트에 혼재되어 있는 개인 자산 정보들을 로그인 필요없이 한번에 취합해서 볼 수 있고,
○ 나 대신 매매 관련 정보들을 수집하는 기능을 자동화함으로써 일상 생활에 집중하면서도 거래 상태를 쉽게 확인할 수 있는 구조를 갖춤.
10. 4. 개인 프로젝트 (2)
● 키다리 은행 - 모바일 프론트엔드, API 서버 개발 / 2016.06 - 2016.12
● 상세 내용
○ 키다리 은행: 경제적 도움이 필요한 학우에게 대출해 주거나 받을 수 있는 서비스.
○ 사회적 기업 프로젝트에서 외주 프로젝트를 본인 1명이 수주하여 모바일 프론트엔드부터 API 서버 개발까지 개발한 프로젝트
○ 사용 기술: Ionic Framework, Python Flask
● 개인 성과
○ 하나의 프로젝트를 개발과 관련된 모든 영역에서 혼자서 스스로 설계하고 개발해낸 첫 프로젝트
○ 메세지 푸쉬 서버를 구현해본 경험
● 프로젝트 추가 세부 내용 및 문제 해결했던 내용들
11. 5. 논문
● Elicast: Embedding Interactive Exercise in Instructional Programming Screencast (L@S 2018)
○ PDF / GitHub / Slides / ACM DL
● An Imputation Method Using Directly Connected Neighbors in a Trust Network for
Recommendation
○ 보고서 / 논문
○ 2015.01 - 2015.10 @ 한양대학교 DAKE 연구실
12. 6. 학력
● 2017.03 - 2019.08, 한국과학기술원, 전산학부, 석사
● 2012.03 - 2017.02, 한양대학교 (서울), 컴퓨터 전공, 학사
13. 7. 기타사항
● 약 1년간 프로그래밍 학원에서 강사 경험
● 하이브리드 모바일 프레임워크 Ionic 개발 온라인 강의 코스 운영
● 네이버 D2SF에서 카이스트 캠퍼스 파트너로 활동 (2017.09 - 2018.02)
● 학부 3학년 이후 국가 이공계 장학생 전액 장학금 수령
● 소프트웨어 마에스트로 6기 연수생으로 활동 (2015.08 - 2016.07)