25
오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리 레드햇 코리아 수석 소프트웨어 엔지니어 이희승 ([email protected])

오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Embed Size (px)

DESCRIPTION

'Career Management via Open Source Project Participation' - presented at Open Source Symposium, hosted by Red Hat Korea and Daou Tech (16 October 2007)

Citation preview

Page 1: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

오픈 소스 프로젝트 참여를통한 개발자 커리어 관리

레드햇 코리아

수석 소프트웨어 엔지니어

이희승 ([email protected])

Page 2: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

순서

• 약력

• 어째서?

• 어떻게?

• 결론

Page 3: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

순서 – 약력

• 약력– 상용 소프트웨어 개발자로서

– 오픈 소스 소프트웨어 개발자로서

– 레드 햇 ∙ 제이보스 개발자로서• 어째서?

• 어떻게?

• 결론

Page 4: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

약력 – 상용 소프트웨어 개발자

• 2003 – 단문 메시지 전송 시스템– 비공개 핵심 기술

• 프로토콜 구현체

• 메시지 라우터 ∙ 분산 자동화 ∙ 관리 시스템

– 오픈 소스화• 네트워크 어플리케이션 프레임워크

• 메모리 기반 메시지 저장소

• JMX 마이크로커널

Page 5: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

약력 – 상용 소프트웨어 개발자

• 2007 – OSGi 기반 RPC 어플리케이션 서버– 비공개 기술

• 프로토콜 구현체 ∙ POJO 매핑 ∙ 성능 튜닝

– Apache MINA (Network application framework)

– Apache Jakarta Commons (Reusable Java components)

– OGNL (Object Graph Navigation Language)

– ASM ∙ Spring (Bytecode manipulation framework)

– Eclipse Equinox (OSGi framework)

– SLF4J (Simple Logging Facade for Java)

Page 6: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

약력 – 오픈 소스 개발자• 2003년 – 개인적 프로젝트 시작

• 2004년 3월 – 아파치 디렉토리 프로젝트 커미터

• 2004년 10월 – 아파치 미나 서브프로젝트 시작

• 2005년 3월 – 아파치 디렉토리 PMC 멤버

• 2006년 10월 – 아파치 미나 TLP 승급

• 현재– 아파치 소프트웨어 재단의 멤버

– 아파치 미나 PMC 의장

Page 7: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

약력 – 오픈 소스 개발자

• 개인적 프로젝트 시작– 단문 메시지 전송 시스템 개발 산출물 공유

– 낮은 트래픽 ∙ 좋은 시작점

– 호스팅• 개인 호스팅 서버

• SourceForge.net

– 홍보• Freshmeat.net

• TheServerSide.com

Page 8: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

약력 – 오픈 소스 개발자

• 아파치 디렉토리 프로젝트– 아파치 소프트웨어 재단의 문화를 배우다.

• 메일링 리스트 ∙ 투표 ∙ IRC

• 커뮤니티 – 사용자 ∙ 커미터 ∙ PMC ∙ 멤버 ∙∙∙

• Meritocracy

– 각종 도구에 익숙해지다.• Subversion ∙ Maven

• Issue tracker ∙ Continuous integration

– 영어 공부를 제대로 하다.

Page 9: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

약력 – 오픈 소스 개발자

• 미나 서브프로젝트 시작– 네트워크 어플리케이션 프레임워크, 그 세 번째 시도!

– 디렉토리 프로젝트의 필요에 따라 1인 프로젝트 시작

– 직접적인 사용자 피드 백에 직면하다.

– 프레임워크 API에 대한 철학을 수립하다.

– 오픈 소스 문화에 점점 더 익숙해지다.

– 얼떨결에 생애 첫 컨퍼런스 발표를 영어로 ∙∙∙

Page 10: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

약력 – 오픈 소스 개발자

• 아파치 디렉토리 PMC 멤버

– 미나, 디렉토리 프로젝트의 핵심 요소가 되다.

– 디렉토리 프로젝트에 대한 공헌도 증가하다.

– 디렉토리 프로젝트 내의 투표권을 획득해의사 결정 과정(투표)에 적극적으로 참여하다.

– 계속 성장하는 미나 커뮤니티와 함께 오픈소스 소프트웨어 프로젝트의 매력에 빠져들다.

Page 11: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

약력 – 오픈 소스 개발자

• 아파치 미나 TLP 승급– mina.apache.org

– 디렉토리 프로젝트 트래픽을 추월하다.

– 재단 이사회의 투표를 통해 TLP로 승급되다.

– 미나 창시자로서 PMC 의장을 맡다.

– 커뮤니티 규모의 지속적 성장• 10,000여 누적 메시지 ∙ 일 평균 33 메시지

• 300여명의 가입자 (포럼 사용자 제외)

• 일 700여명의 방문자 (중복 방문 제외)

Page 12: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

약력 – 오픈 소스 개발자

• 계속되는 프로젝트 활동– 미나 ∙ 디렉토리 ∙ 펠릭스 ∙ 요코 ∙ 메이븐 ∙∙∙

– 미나 PMC 의장으로서 다양한 직무를 접하다.• 의견 조율 ∙ 투표 관리

• 프로젝트의 방향 제시 ∙ 릴리즈

• 지적 재산권 문제 처리 (IP Clearance)

• 계속되는 해외 컨퍼런스 발표

• 추천과 투표를 통해 재단의 멤버가 되다.

Page 13: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

약력 – 레드 햇 ∙ 제이보스

• 미나 활동을 통한 인지도 상승

• LinkedIn.com을 통한 소셜 네트워킹

• 제이보스로부터의 입사 제의– 미나 ∙ 제이보스 프로젝트에 풀타임 할애

– 재택 근무 ∙ 스위스 호숫가에서의 팀 미팅

– 유럽 특유의 자유로운 분위기

– 오픈 소스에 대한 공감대

– 그리고 ∙∙∙ $$∙∙$$∙∙$$

Page 14: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

순서 – 어째서?• 약력

• 어째서?– 개인적 측면

–집단적 측면

– 인류적 측면• 어떻게?

• 결론

Page 15: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

어째서? – 개인적 측면

• 장인 정신 발휘의 장–솔루션 벤더로서의 나

• 세계에 나 자신을 홍보–새로운 직업적 기회

• Red Hat ∙ Google ∙∙∙

• 즐거운 놀이터–같은 취미와 열의를 가진 친구들

Page 16: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

어째서? – 집단적 측면

• 전지구적 협업– 더 큰 목표로의 전진

• 끊임없는 상호작용–실행력 ∙ 추진력

– 더 나은 아이디어의 도출 ∙ 구현

• 미래 조직 문화의 현실화–노동의 미래 ∙ The Future of Work

• 토마스 W. 말론

Page 17: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

어째서? – 인류적 측면

• 전 인류의 지적 재산에의 공헌

• 개발 도상국의 정보 시스템 구축

• 자유로운 의사 소통의 일상화

• 다른 국가를 침공하지 않고도 평화와민주주의를 이룩하는 가장 좋은 방법?

Page 18: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

순서 – 어떻게?• 약력

• 어째서?

• 어떻게?– 도우미같이

– 부모님같이

– 사회자같이• 결론

Page 19: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

어떻게? – 도우미같이

• 선순환 사이클을 구축한다.

– 사용자 입장에서 모든 것을 작성한다.• API 설계

• 설명서 내용

• 웹 사이트 구조

– 인내심을 갖고 고객들을 지원한다.

– 적극적으로 피드 백을 받아낸다.

– 피드 백에 따라 적극적으로 진행한다.

Page 20: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

어떻게? – 부모님같이

• 프로젝트를 내 자식처럼 다룬다.

–무럭 무럭 건강하게 자랐으면 ∙∙∙ Yes!

• 장인 정신을 발휘한다.

•항상 관심을 기울인다.

•건전하고 지속 가능한 발전을 생각한다.

–빨리 돈 좀 벌어다 줬으면 ∙∙∙ No!

• 홍보에 열을 올리거나 과장한다.

• 구현 마무리 ∙ 지원은 대충 적당히~

Page 21: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

어떻게? – 사회자같이

• 커뮤니티란 ∙∙∙– 사용자 ∙ 개발자를 아우르는 모든 구성원

– 커뮤니티 ≫ 넘을 수 없는 벽 ≫ 소프트웨어

• 모든 소프트웨어의 가치는 커뮤니티로부터– 원 맨 프로젝트를 다양한 커뮤니티 구성원에 의해 유지

되는 자생적 조직으로 발전시켜야 나의 가치도 커진다!

– 다수를 만족시키고 조직을 조화롭게 이끈다.

– 프로젝트의 로드 맵을 제시하고 추진한다.

Page 22: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

순서 – 결론• 약력

• 어째서?

• 어떻게?

• 결론

Page 23: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

결론

• 스스로에게 동기를 부여하라.– 나는 왜 오픈 소스 소프트웨어를 개발하는가?

• 아이디어는 아이디어를 낳는다.–무엇을 할 것인가?

– 지금 시작하라! ∙∙∙ E=mc2

• 즐겨라!–행복한 나 → 행복한 인류

Page 24: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

참고 자료

• 리눅스 * 그냥 재미로 리누스 토발즈

• 노동의 미래 토마스 W. 말론

• 오픈 소스 에릭 S. 레이몬드 외

• 아파치 소프트웨어 재단 www.apache.org

• 아파치 미나 프로젝트 mina.apache.org

• 발표자 홈페이지 gleamynode.net

Page 25: 오픈 소스 프로젝트 참여를 통한 개발자 커리어 관리

Open Source Symposium 2007

질의 ∙ 응답

Thank you!