[oss개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영...

60
개발자로 멋지게 살아보자 Enlightenment/EFL 오픈소스 커미터 서주영 <국민대학교 SW 여름캠프 "나눔, 공유 그리고 개발자"> 실제 강의 내용은 대부분 그림으로 구성하고 경험을 제로 들며 말로 설명을 했다. 자료는 슬라이드만 보시 분들을 위해 주석을 약간 추가한 자료다.

Upload: daniel-juyung-seo

Post on 19-Aug-2015

1.019 views

Category:

Software


3 download

TRANSCRIPT

개발자로 멋지게 살아보자

Enlightenment/EFL 오픈소스 커미터 서주영

<국민대학교 SW 여름캠프 "나눔, 공유 그리고 개발자">

실제 강의 내용은 대부분 그림으로 구성하고 경험을 예제로 들며 말로 설명을 했다. 본 자료는 슬라이드만 보시는 분들을 위해 주석을 약간 추가한 자료다.

목차/결론

● 왜 사는가?● 오픈소스 세계에 눈을 뜨자● 영어로 날개를 달아보자● 소통하는 개발자가 되자

2

이 발표의 결론이다. 내가 발표자라고 생각하고 어떤 내용이 있을지 미리 생각해보자.

발표자 소개

서주영

● 오픈소스에 푹~ 빠진 개발자

3

발표자 소개

● Enlightenment/EFL 오픈소스 커미터● 구글 유튜브 파트너 테크놀로지 매니저● (전) 삼성전자 타이젠 플랫폼 UI FW 개발팀

4

발표자 소개

5

발표자 소개

6

참가자 소개

● 참가한 이유● 개발 경험● 장래희망

7

소중한 여름 방학 시간을 투자하는 자리인 만큼 여름 캠프 기간 동안 많은 것을 얻어가기 바란다. 그래야 한다.

왜 사는가?

8

삶의 목적

9

내 삶의 목적이 무엇인지 생각해보자. 이 강의의 목적은 기술이나 답을 알려주는 것이 아니라, 참가자들이 강사의 경험을 빗대어 자신의 생각을 정리해보는 시간을 갖는 것이다.

즐기지 않고는 힘든 직업

10

개발자로서 사는 것이 내 삶의 목적에 부합하는지 먼저 생각해보자. 개발자라는 직업은 즐기지 않으면 하기 어렵다.

즐기지 않고는 힘든 직업

11

때론 남들이 기대하는 것과 다른 일을 하게 될 수도 있다.

즐기지 않고는 힘든 직업

12

구글이, 네이버가 내 코드를 짜도록 허락해선 안된다.

즐기지 않고는 힘든 직업

13

자신이 무언가를 즐겼을 때를 떠올려 보자. 강사는 오픈소스 개발자들과 독일의 한 호텔에 뒤섞여 놀던 그 때를 잊을 수 없다.

미쳐본 적이 있는가?

14

무엇인가에 미쳐본 적이 있는가? 개발도 미쳐야 한다.

직접 프로그램을 완성해보자

15

내가 개발을 즐기는지, 개발에 미치는지 알기 위해 작은 프로그램 하나라도 끝까지 만들어보자.

조급해하지 말자

16

당장 엄청난 결과를 내기 위해 조급해 하지 말고 기본기를 다지며 끈기있게 노력하자.

대학을 가야 하는가?

17

정말 뛰어난 사람이 아니라면 급하게 현업에 달려들기 전에 대학에서 시간을 가지고 다양한 경험을 쌓는 것도 도움이 된다.

대학을 가야 하는가?

18

대학 기간에 배울 수 있는 가장 중요한 것은 문제 해결 능력을 기르는 경험을 쌓고 다양한 사람을 만나는 것이다.

문제 해결 능력이 중요

19

당장 필요한 지식도 중요하지만, 문제 해결 능력이 정말 중요하다. 스스로 문제를 해결하는 것이 중요하다.

내공을 기르자

20

문제 해결 능력을 기르기 위해 기본기를 다져야 한다. 조급하게 생각하지 말고 차근차근 익히자.

새로운 일에 도전하자

21

한 가지를 꾸준히 하는 것도 중요하지만, 가능하면 어릴 때 새로운 도전을 하고 다양한 경험을 쌓는 것도 중요하다.

오픈소스 세계에 눈을 뜨자

22

오픈소스?

23

오픈소스는 소스를 미끼로 사람들이 모이는 곳이다.

오픈소스 정의

● 자유로운 재배포● 소스코드

● 2차 저작 허용● 원저자 소스코드 보전● 개인이나 단체 차별 금지● 사용 분야에 대한 차별 금지● 라이선스 배포● 특정 제품을 대상으로 한 라이선스 금지● 다른 소프트웨어를 제한하는 라이선스 금지● 기술 중립 라이선스

<http://opensource.org/docs/definition.php>

24

정말? 코드가 공개되어 있다고?

25

자신이 열심히 작성한 코드를 쉽게 공개하지 않을 것 같지만, 이미 수많은 코드가 공개되어 있다.

공유

26

공유

27

내 지식을 하나 공유하면 나중에 배가 되어 돌아온다. 어느 분야든 나보다 잘 하는 사람은 많기 때문에 꽁꽁 싸매고 숨길 필요가 없다.

오픈소스 참여

● 패치 보내기● 코드 리뷰● 버그 리포트● 다국어 지원● 문서 작업● 웹사이트/서버 관리● 커뮤니티 응대● 기타

28

다양한 방법으로 오픈소스에 참여할 수 있다. 작은것 부터 시작하자.

왜 오픈소스인가?

29

왜 오픈소스인가?

● 기술적, 문화적, 사회적, …● 다양한 출신, 배경지식을 가진 개발자를 만날 수 있다.

● 더 많은 좋은 개발자를 만남● 다른 오픈소스

30

왜 오픈소스인가?

31

실리콘 밸리에 있는 모질라 재단에 출장가서 3일간 노키아 개발자의 도움을 받고 돌아왔다. 오픈소스이기에 가능한 일이다.

왜 오픈소스인가?

● 끊임없는 대화● 트렌드를 알 수 있음● 시야가 달라짐● 더 넓은 세상과의 조우● 빠른 리뷰, 친절한 리뷰

32

왜 오픈소스인가?

33

다른 오픈소스 개발자와 가까워지면 더욱 잘 대해준다. 오프라인 만남도 중요하다.

왜 오픈소스인가?

● 소프트웨어 엔지니어링을 익힐 수 있다● 수많은 개발자와 협업을 익힐 수 있다● 개발 능력 향상● 지식 영역 넓힘● 올바른 방향이 무엇인지 배움● 다른 사람이 내 버그를 수정해준다.

34

왜 오픈소스인가? - 다양한 기회2011 Cebit 출장2012 Mozilla 출장2012 Gnome Korea 발표2012 삼성 Contributor Day 2012 발표2012 Daum DevOn 발표2012 Linux Korea Forum 참가2013 Open Source Fundamentals 과정 강의2013 GNOME Asia Summit 준비위원2013 EFL Korea Seminar 주최2013 Tizen Korea Summit 참가2013 Linux Korea Forum 참가2014 Open Source Fundamentals 과정 강의2014 Tizen Developer Conference 발표2014 OSCON 발표2014 SOSCON 발표2015 CES 출장2015 타이젠 폰 개발자 행사 발표

35

강사는 오픈소스 커미터가 되면서 대기업에서 일반 개발자가 할 수 있는 것 이상의 경험을 할 수 있었다. 기회가 오면 손을 들자.

왜 오픈소스인가?

● 롤모델을 만날 수 있다● 열정을 높일 수 있다● 자발적으로 참여● 잉여 에너지를 열정으로

36

왜 오픈소스인가?

● 경력/포트폴리오/커리어패스● 영어를 많이 사용하게 된다.● 회사와 달리 자기가 하고 싶은 것을 선택할 수 있다.

● 자신이 만들고 싶은, 필요한 것을 만들 수 있다.● 공유 정신

37

왜 오픈소스인가?

38

어머! 저건! 해야해~ 강사는 개발자로서의 자신을 오픈소스 하기 전과 후로 나눈다.

누군가가 보고 있다

39

오픈소스에서는 나의 사소한 것도 누군가가 보고 있다.

누군가가 보고 있다

40

리누스의 법칙. 보는 눈이 충분하게 많으면, 찾지 못할 버그는 없다.

오픈소스를 하게 되면 발생하는 문제점

41

오픈소스에 재미를 붙이게 되면 회사 일이 시시해질 수도 있다.

영어로 날개를 달아보자

42

세상은 넓다

43

강사는 26세 때 처음 비행기를 타고 미국으로 가기 전과 후로 자신의 인생을 나눈다. 세상은 정말 넓다.

오픈소스와 영어

44

오픈소스를 하면서 영어 실력도 쌓을 수 있다. 메일링 리스트, IRC 등을 통해 경험을 쌓자. 영어가 두렵다고 기피하지 말자.

물지 않아요

45

오픈소스 커뮤니티에서 활동하는 사람들은 대부분 친절하다. 외국인이라고 겁내지 말고 말을 걸자.

한국 개발자에게

46

발표자와 동갑이지만 넘사벽인 세드릭 바일은 17살 때 부터 오픈소스를 시작했다고 한다. 그는 한국 개발자들이 실력은 좋은데 영어 때문에 부담감을 느끼는 것이 안타깝다고 했다.

소통하는 개발자가 되자

47

소통

48

실무에서 개발은 더 이상 혼자하는 것이 아니다. 끝없이 남을 설득하는 과정이 수반되므로 소통 능력을 길러야 한다.

코드 관리

49

특히 오픈소스는 전세계 수 많은 개발자들이 모여 커뮤니티가 형성된다. 코드를 작성하고 커밋하는데도 소통 능력이 중요하다.

커밋

50

작은 커밋 하나를 만들더라도 신중해야 한다. 혼자만 개발하는 것이 아니다.

코드 리뷰

51

코드 리뷰를 할 때 뿐만 아니라 리뷰를 받을 때도 리뷰어를 설득하기 위해서 소통 능력이 필요하다. 고집을 부리면 신뢰를 잃는다.

메일

52

메일링 리스트에서도 하루에도 수십개의 토론이 이루어지며 오픈소스 개발자에겐 남을 설득하는 것이 일상이다.

채팅

53

오픈소스에서 사용하는 실시간 채팅인 IRC에서도 소통의 중요성은 마찬가지다.

커뮤니티

54

오픈소스 웹사이트에 가면 해당 오픈소스의 커뮤니티가 어떻게 구성되어 있는지 확인할 수 있다.

지식을 공유하라

● 소셜 네트워크● 블로그● 뉴스레터● 커뮤니티

55

자신이 가진 지식을 공유하고 피드백을 받는 것도 소통의 한 가지 방법이다.

결론 ● 오픈소스● 영어● 소통

56

이기적인 이유에서라도 오픈소스를 해서 이득을 얻자.영어를 통해 더 넓은 세상을 경험하자.소통 능력은 개발자에게 꼭 필요하다.

57이 분이 누구일까?

섀릴 샌드버그● 월드뱅크에서 인도 나병 환자 도움● 미국 재무부장관의 비서실장으로 활약● 페이스북 최고운영책임자(COO)

58

이력이 독특한 섀릴 샌드버그는 페이스북 최고운영책임자 자리에 있다.

섀릴 샌드버그● 가슴이 움직이는 대로 따라가다 보면, 과거에 행했던 모든 일이 퍼즐처럼 연결되어 미래와 만나곤 한다.

- 사람 바이러스

59

매 순간 굵직한 점을 만드려고 노력하다 보면 나중에 이 점들이 연결되어 새로운 가치가 된다.

Q&A

60