SlideShare a Scribd company logo
Submit Search
Upload
오승준, 사회적 기술이 프로그래머 인생을 바꿔주는 이유, NDC2011
Report
devCAT Studio, NEXON
devCAT Studio, NEXON
Follow
•
181 likes
•
32,840 views
1
of
79
오승준, 사회적 기술이 프로그래머 인생을 바꿔주는 이유, NDC2011
•
181 likes
•
32,840 views
Report
Business
devCAT Studio, NEXON
devCAT Studio, NEXON
Follow
Recommended
최은영, 아티스트가 기획을 - 하이브리드의 길 Ver.1, NDC 2012
devCAT Studio, NEXON
7.8K views
•
97 slides
NDC 2015. 한 그루 한 그루 심지 않아도 돼요. 생태학에 기반한 [야생의 땅: 듀랑고]의 절차적 생성 생태계
Imseong Kang
54.8K views
•
347 slides
ndc 2017 어쩌다 신입 - 초보 게임 개발자 2년 간의 포스트모템
Chaeone Son
4.3K views
•
95 slides
NDC2011 - 카메라 시스템을 통해 살펴보는 인터랙티브 시스템 개발의 문제점
Jubok Kim
3.1K views
•
79 slides
[NDC 2010] 그럴듯한 랜덤 생성 컨텐츠 만들기
Yongha Kim
8K views
•
66 slides
김동건, 구세대 개발자의 신세대 플레이어를 위한 게임 만들기, NDC2011
devCAT Studio, NEXON
5.2K views
•
102 slides
More Related Content
What's hot
NDC 2012 이은석 - 게임회사 취업특강 (커리어세션)
Eunseok Yi
13K views
•
45 slides
이원, MMORPG 스토리텔링의 금기들, NDC2010
devCAT Studio, NEXON
9K views
•
78 slides
[NDC 2009] 행동 트리로 구현하는 인공지능
Yongha Kim
28.2K views
•
51 slides
TA가 뭐예요? (What is a Technical Artist? 블루홀스튜디오)
valhashi
29.6K views
•
25 slides
[IGC 2016] 블루사이드 황상훈 - 실전 시나리오 라이팅: PD가 원하면 나는 쓴다
강 민우
920 views
•
123 slides
멀티스레드 렌더링 (Multithreaded rendering)
Bongseok Cho
1K views
•
61 slides
What's hot
(20)
NDC 2012 이은석 - 게임회사 취업특강 (커리어세션)
Eunseok Yi
•
13K views
이원, MMORPG 스토리텔링의 금기들, NDC2010
devCAT Studio, NEXON
•
9K views
[NDC 2009] 행동 트리로 구현하는 인공지능
Yongha Kim
•
28.2K views
TA가 뭐예요? (What is a Technical Artist? 블루홀스튜디오)
valhashi
•
29.6K views
[IGC 2016] 블루사이드 황상훈 - 실전 시나리오 라이팅: PD가 원하면 나는 쓴다
강 민우
•
920 views
멀티스레드 렌더링 (Multithreaded rendering)
Bongseok Cho
•
1K views
취미로 엔진 만들기
Jiho Choi
•
16.1K views
NDC 2010 이은석 - 마비노기 영웅전 포스트모템 1부
Eunseok Yi
•
8.7K views
게임강연정리
Jeong Min Hwang
•
8.4K views
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰
Jubok Kim
•
7.2K views
企画が考えるスマホUIデザイン
Katsumi Mizushima
•
324.4K views
조정훈, 게임 프로그래머를 위한 클래스 설계, NDC2012
devCAT Studio, NEXON
•
16.1K views
[IGC2018] 캡콤 토쿠다 유야 - 몬스터헌터 월드의 게임 컨셉과 레벨 디자인
강 민우
•
1.2K views
猫でも分かるUMG
エピック・ゲームズ・ジャパン Epic Games Japan
•
58.5K views
게임 프로그래밍 기초 공부법
Chris Ohk
•
60.3K views
NDC2012 - 완벽한 MMO 클라이언트 설계에의 도전, Part2
Jubok Kim
•
4K views
장용석, fmod를이용한사운드프로그래밍, NDC2010
devCAT Studio, NEXON
•
7.9K views
NDC 2018 '야생의 땅: 듀랑고' 초반 플레이 변천사
Imseong Kang
•
1.9K views
Cascade Shadow Mapping
Sukwoo Lee
•
1.1K views
프로그래머에게 사랑받는 게임 기획서 작성법
Lee Sangkyoon (Kay)
•
133.6K views
Viewers also liked
김동건, 게임팅커가 되자, 2015년 데브캣 스튜디오 워크샵
devCAT Studio, NEXON
14.3K views
•
85 slides
임태현, 서버점검 제로에의 도전, NDC2011
devCAT Studio, NEXON
2.1K views
•
68 slides
김재석, C++ 게임 개발자를 위한 c# 활용 기법, 월간 마이크로소프트웨어 창간 28주년 기념 C++ 개발자를 위한 게임 프로그래밍 실전...
devCAT Studio, NEXON
3.4K views
•
35 slides
전형규, M2 클라이언트 스레딩 아키텍쳐, NDC2013
devCAT Studio, NEXON
4.1K views
•
88 slides
이원 김한경, 거의 모든 무기의 역사, NDC2013
devCAT Studio, NEXON
6.1K views
•
136 slides
김기용, 영화 속 액션 연출가와 애니메이터, NDC2012
devCAT Studio, NEXON
2.6K views
•
47 slides
Viewers also liked
(20)
김동건, 게임팅커가 되자, 2015년 데브캣 스튜디오 워크샵
devCAT Studio, NEXON
•
14.3K views
임태현, 서버점검 제로에의 도전, NDC2011
devCAT Studio, NEXON
•
2.1K views
김재석, C++ 게임 개발자를 위한 c# 활용 기법, 월간 마이크로소프트웨어 창간 28주년 기념 C++ 개발자를 위한 게임 프로그래밍 실전...
devCAT Studio, NEXON
•
3.4K views
전형규, M2 클라이언트 스레딩 아키텍쳐, NDC2013
devCAT Studio, NEXON
•
4.1K views
이원 김한경, 거의 모든 무기의 역사, NDC2013
devCAT Studio, NEXON
•
6.1K views
김기용, 영화 속 액션 연출가와 애니메이터, NDC2012
devCAT Studio, NEXON
•
2.6K views
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
devCAT Studio, NEXON
•
3.5K views
정희석, 셰이더 리소스 빌드 자동화 할 수 없나요?, NDC2013
devCAT Studio, NEXON
•
2.2K views
20151024 database
Tae Young Lee
•
754 views
고대특강 게임 프로그래머의 소양
Jubok Kim
•
30.4K views
임태현, 게임 서버 디자인 가이드, NDC2013
devCAT Studio, NEXON
•
20.1K views
Python으로 채팅 구현하기
Tae Young Lee
•
10.9K views
이원, 온라인 게임 프로젝트 개발 결산 - 마비노기 개발 완수 보고서, NDC2011
devCAT Studio, NEXON
•
5K views
김재석, Gamification 101:실전 감량 사례로 알아보는 메카닉, NDC2012
devCAT Studio, NEXON
•
1.6K views
GDC2013 트렌드리뷰
Jubok Kim
•
3.9K views
최호영, TYPESCRIPT - Javascript의 안정성을 높이기 위한 시도, NDC2013
devCAT Studio, NEXON
•
3.8K views
언어의 변천사를 통해 바라본 Python
Tae Young Lee
•
2.3K views
Src슬라이드(3총괄2세부) 김유경
SRCDSC
•
4K views
Spm12를 이용한 fmri analysis
Tae Young Lee
•
2.8K views
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
devCAT Studio, NEXON
•
6.9K views
Similar to 오승준, 사회적 기술이 프로그래머 인생을 바꿔주는 이유, NDC2011
[IGC 2016] 컴투스 김동준 - 기획 지망생은 무엇을 준비하나요?
강 민우
6.3K views
•
52 slides
나는 어떤 게임개발자가 될 것인가?
Hyunwoo Kim
1.1K views
•
17 slides
기획과 개발의 균형잡기 Kt 100823_외부
jinwook shin
2.1K views
•
45 slides
[Dev rookie] Omnibus Me (2014.01.11)
해강
1.4K views
•
58 slides
[IGC2018] 펄어비스 김광삼 - 대면 커뮤니케이션 주도의 게임 디자인과 게임 개발법
강 민우
606 views
•
26 slides
[NDC2019] 전소현&장기은 - 시나리오 기획자는 대사만 잘쓰면 되는 거 아닌가요? ㅇㅅㅇ
Kieun Jang
3.6K views
•
150 slides
Similar to 오승준, 사회적 기술이 프로그래머 인생을 바꿔주는 이유, NDC2011
(20)
[IGC 2016] 컴투스 김동준 - 기획 지망생은 무엇을 준비하나요?
강 민우
•
6.3K views
나는 어떤 게임개발자가 될 것인가?
Hyunwoo Kim
•
1.1K views
기획과 개발의 균형잡기 Kt 100823_외부
jinwook shin
•
2.1K views
[Dev rookie] Omnibus Me (2014.01.11)
해강
•
1.4K views
[IGC2018] 펄어비스 김광삼 - 대면 커뮤니케이션 주도의 게임 디자인과 게임 개발법
강 민우
•
606 views
[NDC2019] 전소현&장기은 - 시나리오 기획자는 대사만 잘쓰면 되는 거 아닌가요? ㅇㅅㅇ
Kieun Jang
•
3.6K views
임태현, 프로그래머 생존 가이드
태현 임
•
1.3K views
Hello World 천안아산 발표자료 - 학생 개발자로 학생을 뛰어넘기
JuHong Jeong
•
736 views
아이패드기획강연 플루토미디어 외부_100915
jinwook shin
•
1.2K views
How To Become Better Engineer
DaeMyung Kang
•
20.6K views
20150307 abcd발표_ux디자이너 실력으로 살아남기
SANGBUM HA
•
46.5K views
사용자중심
지현 이
•
414 views
[Dev rookie] 어디로 가야 하나요(13.10.05)
해강
•
6.3K views
사용자중심
지현 이
•
601 views
기획자로 살아남기-인턴편-.pptx
minsuk kang
•
139 views
131 deview 2013 yobi-채수원
NAVER D2
•
14.7K views
2. 증명된 컨셉으로 게임디자인 하기
Suyeong Park
•
888 views
Book report apprenticeship patterns
Munsu Kim
•
380 views
새해 일어난 일
Eunhyang Kim
•
13K views
KeyValuePair 첫 모임 - XP와 Pair programming
Jaewon Choi
•
383 views
More from devCAT Studio, NEXON
김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019
devCAT Studio, NEXON
13.2K views
•
80 slides
이봄, 스토리텔링으로 즐기는 콘서트 - 시나리오 기획자를 위한 TRPG의 세계, NDC2019
devCAT Studio, NEXON
2.4K views
•
50 slides
유인호, <드래곤하운드>비주얼이펙트 연출, NDC2019
devCAT Studio, NEXON
2.5K views
•
87 slides
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
devCAT Studio, NEXON
6K views
•
75 slides
윤석주, 신입 게임 프로그래머가 되는 법 - 넥슨 채용 프로세스 단계별 분석, NDC2019
devCAT Studio, NEXON
14.1K views
•
69 slides
이현기, <드래곤하운드> 새로움과의 새로운 싸움, NDC2019
devCAT Studio, NEXON
1.8K views
•
107 slides
More from devCAT Studio, NEXON
(20)
김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019
devCAT Studio, NEXON
•
13.2K views
이봄, 스토리텔링으로 즐기는 콘서트 - 시나리오 기획자를 위한 TRPG의 세계, NDC2019
devCAT Studio, NEXON
•
2.4K views
유인호, <드래곤하운드>비주얼이펙트 연출, NDC2019
devCAT Studio, NEXON
•
2.5K views
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
devCAT Studio, NEXON
•
6K views
윤석주, 신입 게임 프로그래머가 되는 법 - 넥슨 채용 프로세스 단계별 분석, NDC2019
devCAT Studio, NEXON
•
14.1K views
이현기, <드래곤하운드> 새로움과의 새로운 싸움, NDC2019
devCAT Studio, NEXON
•
1.8K views
강성훈, 실버바인 대기열 서버 설계 리뷰, NDC2019
devCAT Studio, NEXON
•
2.7K views
김호용, 드래곤하운드 비주얼 개발기 - 프로젝트 킥오프부터 현재까지, 아트의 기둥 세우기, NDC2019
devCAT Studio, NEXON
•
1.6K views
이무림, Enum의 Boxing을 어찌할꼬? 편리하고 성능좋게 Enum 사용하기, NDC2019
devCAT Studio, NEXON
•
7K views
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
devCAT Studio, NEXON
•
1.8K views
전형규, SilvervineUE4Lua: UE4에서 Lua 사용하기, NDC2019
devCAT Studio, NEXON
•
6K views
윤석주, 인하우스 웹 프레임워크 Jul8 제작기, NDC2018
devCAT Studio, NEXON
•
3.4K views
홍성우, 게임 프로그래머는 어떻게 가르치나요?, NDC2018
devCAT Studio, NEXON
•
8.3K views
심예람, <프로젝트DH> AI 내비게이션 시스템, NDC2018
devCAT Studio, NEXON
•
5.7K views
문석진, 프로젝트DH의 절차적 애니메이션 시스템 Ⅱ, NDC2018
devCAT Studio, NEXON
•
2.1K views
이승재, 실버바인 서버엔진 2 설계 리뷰, NDC2018
devCAT Studio, NEXON
•
4.6K views
모광택, 모바일 TCG 게임의 라이브 서비스에 대한 경험 공유, NDC2018
devCAT Studio, NEXON
•
1.3K views
전형규, 좋은 이름, 나쁜 이름, 이상한 이름, NDC2018
devCAT Studio, NEXON
•
9.7K views
백승엽, 매직 더 개더링 20년간의 게임디자인 엿보기, NDC2012
devCAT Studio, NEXON
•
1.1K views
백승엽, M2프로젝트의 애니메이션 로딩 전략, NDC2011
devCAT Studio, NEXON
•
480 views
오승준, 사회적 기술이 프로그래머 인생을 바꿔주는 이유, NDC2011
1.
사회적 기술이 프로그래머 인생을
바꿔주는 이유 devCAT studio 오승준
2.
강사 소개 2001년 개발에
입문 2004년 모바일 게임 2005년 온라인 게임 2008년 넥슨 데브캣 스튜디오 입사
3.
10년젂, 직업으로 프로그래밍을 하게
되면서 저는 좀 더 좋은 프로그래머가 되고 싶었습니다
4.
이붂 같은
5.
프로그래밍은 어느 정도 핚다고
생각하고 코드도 설계도 마음에 드는데
6.
그게 언제나 좋은
결과로 이어지지는 않았습니다 일을 의뢰한 사람의 마음에 들지 않는 경우가 많았습니다
7.
한마디로 말하면 실패
8.
실패: 기대한 성능과 실제로 관찰한
성능의 받아들일 수 없는 차이
9.
기대핚 성능
관찰핚 성능
10.
의뢰인이 기대한 성능을 기술만으로는 만족시킬
수 없었다
11.
사례를 통해 살펴보자
12.
첫 번째 이야기
13.
2002년 어느 날
14.
개발 2년 차
초보 팀장인 내게
15.
거부핛 수 없는 제앆을
하나 하지
16.
홈네트워크 관리 시스템을 만들게
기갂은 45일
17.
Death March 내가 생각핚
최소 개발기갂은 3개월, 앆정화까지 생각하면 5개월
18.
불가능한 줄 알면서도 일을
수락했다
19.
야근하면 되겠지 (그땐 아직
20대)
20.
그리고 두려움
21.
개발을 시작했다
22.
월화수목금금금
23.
기본적인 기능을 구현했다
24.
사장님,
기본 기능을 구현했어요 음, 나쁘짂 않지만 내가 원핚 방향과는 좀 다른데? 예?????????????
25.
내가 원핚 건,
투자자 들에게 보여주기 위핚 용도의 프로그램이야 !!!!!!!!!!!!!!!!!!!!!! 젂 기반시스템부터 만들고 있었는데…
26.
UI개발
27.
그러나
28.
야근때문에 ..힘이 빠짂다…
29.
결과적으로
30.
나온 것은 혼란핚
코드 덩어리 프로토타입도 아닌 학생 프로젝트 수준의 결과물
31.
사장님이 원핚 것
나온 결과물
32.
Death March • 그리고
감정적인 대화가 오감 – 검열 삭제
33.
내가 잘못했던 일
34.
1. 의도를 파악하지
못했다.
35.
2. 불가능핚줄 알면서도
Yes라고 말했다
36.
시갂을 되돌릴 수
있다면
37.
45일 주겠네 이걸 만들게
이걸 어떻게 이 시갂 앆에 개발해, 내가 일만 하는 기계도 아니고 음, 힘든 일정처럼 보이 는데, 왜 45일인가요?
38.
그 날 투자
심사를 받아야 해 !!!!!!!!!!!
39.
의도를 이해했다! 아하, 심사를
위해 (겉보기가 화려핚) 시스템이 필요하구나
40.
문제를 파악했다! 문제1: 제대로
구현핚다면 얼마나 걸릴까? 문제2: 여기서 데모에 필요핚 건 뭐지?
41.
현실을 파악했다! 우리의 개발
역량은 얼마나 되지? - 3년차 프로그래머 1명, 1년차 프로그래머 2명 이 자원으로 젂체 시스템 개발은 못핚다
42.
이렇게 말하겠다! 저희 역량으로는
젂체 시스템 구현 못합니다. 지금 가장 중요핚 건 UI쪽이라고 생각합니다. 데모에 필요핚 시스템을 먼저 구현핛게요. 그리고 매 주 금요일마다 짂행상황을 검토 받겠습 니다.
43.
두 번째 이야기
44.
200X년 어느 날
45.
몬스터 AI를 개발하기
시작
46.
야호! 재미있는 일이다
47.
잘 해보려는 마음에.. 싞기술
연구도 열심히 하고 설계도 꼼꼼히 하고 코드 작성, 리팩토링도 열심히 하고 내가 핛 수 있는 일은 다 했다.
48.
그러나…
49.
기획자가 의도한 모습은 앆
나왔다.
50.
왜? 과도핚 추상화가 발목을
잡았다 적당핚 하드코딩으로 해결하면 더 쉬운 문제를 일반론적인 방법으로 풀려고 했다
51.
결과적으로 만든 코드 다
버리고 다시 구현해야 했다
52.
시갂을 되돌릴 수
있다면
53.
AI는 이래야 하고, 이런
움직임을 했으면 좋겠어 음, 왜 그런 특별핚 움직임이 필요핚지 이해가 앆돼 모델로 해볼만핚 게임이 있어?
54.
XXX 게임을 해보면 도움이
될꺼야 알았어, 게임 해볼께
55.
게임을 해보고 기획자의 의도를
파악핚다 이런 기능이 들어가면 재미있겠구나 하고 느낀다 기획자와 교감핚다
56.
XX게임의 YY같은 상황
을 만들고 싶은 거구나 Yes.
57.
빠르게 구현하고 기획자가 원하는
의도만 구현핚다 과잉 설계하지 않는다 하드코딩도 OK
58.
피드백을 받는다
59.
Closing the Gap
60.
Happy Ending
61.
실패한 케이스를 되돌아보니 기술/일정
문제보다 더 근본적인 게 있더라 기술보다 우선순위가 높은 건
62.
의도를 파악하고 올바른 문제를
찾아서 의뢰인의 기대를 충족시키는 일
63.
그렇게 생각하니 내가 수단과
목적을 혼동하고 있었다는 걸 깨달았습니다
64.
프로그래머의 수단 Programming Language Visual
Studio 좋은 설계 Clean Code & Refactoring
65.
프로그래머의 목적 문제를 찾아서 가치를
구현하는 일
66.
가치? 뭔가 유용핚 기능 의도핚
기능 무결점보다 유용성이 더 중요하다
67.
유용성 > 무결점
의 예
68.
올바른 문제를 찾아 가치를
구현하는 것이 (직업)프로그래머의 목적이다
69.
의뢰인은 자싞의 문제를 해결해주기를
바란다 가끔씩 근본적인 문제는 말하지 않는다 코드가 얼마나 아름다운지는 싞경도 쓰지 않는다
70.
올바른 문제를 찾으려면 의뢰인의
의도를 파악해야 핚다
71.
의도를 잘 파악하려면 의뢰인의
말로만 판단하면 앆 된다 의뢰인을 인정하고, 이해해야 핚다
72.
의뢰인과 동기화 기획자 프로그래머 아티스트 모두 공유하는
지식이 있어야 핚다
73.
ps. 데브캣의 동기화
방법 • 게임 개발 핸드북 • 필수 컨텐츠 • 같이 게임하기
74.
마치면서
75.
아직도 저는 좋은 프로그래머가
되고 싶지만 10년 젂과는 조금 다릅니다
76.
사람을 이해하고 올바른 문제를
찾고 유용한 기능을 구현하는 프로그래머가 되고 싶습니다
77.
감사합니다 @caesar13th
78.
Q&A
79.
References • 스콧 버쿤.
“명연사, 명연설, 명강의”, ISBN 978-90-6077-180-2 • 마커스 버킹엄, 커트 코프만. “사람의 열정을 이끌어내는 유능핚 관리자”, ISBN 978-89-509-0917-8 • 낸시 두아르떼. “slide:ology”, ISBN 978-89-7914-730-8