Orientation
1. <개발자들>은?
2. 테스팅 멤버를 모집한 이유
3. 테스팅 멤버의 활동내용
4. <개발자들>의 스터디 진행방식
5. <개발자들>의 목표
6. 개강 후 활동 계획
목차
<개발자들>은?
기존의 개발동아리들은
코딩교육 혹은 자기주도학습을 통한 서비스 개발에 치중
→ 코드의 질, 유지보수성, 테스트를 통한 품질보증 등에 대해선 관심이 미흡
잘하는 소수가 다수를 이끄는 구조
→ 지식의 흐름이 거의 일방적.
→ 잘하는 소수가 취업 등의 이유로 동아리 활동이 불가할 경우 동아리 전체가 마비.
그렇다면 “개발자들”은?
서비스를 만드는 것과 더불어 “좋은 개발자”를 육성하는 데에 포커스
→ 서비스의 구현뿐 아니라 유지보수성 향상을 위한 객체지향적 설계,
품질의 명확성을 위한 테스트 작성, 성능 향상을 위한 튜닝 등의 제품 품질향상에 초점
모두가 지식을 나누는 구조
→ 지식의 흐름이 일정하지 않고 순환적.
→ 특출나게 잘하는 멤버가 없더라도, 스스로 공부한 내용을 서로 나누며 발전하는 구조
→ 코드리뷰, 페어 프로그래밍 등의 개발문화 도입
어떻게 지식을 나눌까?
1주일에 한 번 정기모임 (발표, 코드리뷰 등)
→ 굳이 대단한 내용이 아니더라도, 공부한 내용에 대해 간략히 발표.
다른 멤버들에게 지식을 나눌 수 있음.
내부 컨퍼런스에서 본인의 지식을 나눔
→ 전 IT관련 학우들에게 개발자들의 지식을 나눌 수 있음.
→ 내용이 좋을 경우 외부 컨퍼런스에 스피커로 지원
언제든 모일 수 있는 상시모임에서 개발에 대한 대화와 토론
→ 개발에 대한 상식폭을 넓힐 수 있고, 모르는 점에 대해서도 서로 질문 가능
→ 아직 장소는 정해지지 않았지만, 개발자들 멤버 모두가 언제든 갈 수 있는 장소 마련예정
→ 코드리뷰를 통해 몰랐던 코딩방식을 배울 수도 있고, 자신의 잘못된 점에 대한
피드백을 받을 수 있음
우리를 한 마디로 나타내면?
프로젝트 수행을 주 목적으로 하는 개발 동아리
공부한 내용을 실제 프로젝트에 도입
→ 공부한 내용을 단단히 하고, 공부를 경험으로 만들게 됨.
공부한 내용과 프로젝트 진행현황을 발표하고, 코드리뷰를 수행
→ 본인의 지식과 의견을 다른 개발자와 나눔으로써 서로의 발전을 도모
공모전 지원, 오픈소스 활동, 수행한 프로젝트 전시
→ 본인의 포트폴리오 강화
팀 단위로 프로젝트를 진행
→ 개발자에게 가장 중요한 협업능력을 기르게 됨
초·중·고등학생에게 코딩교육봉사를 통해 사회에 기여
<개발자들>의 규칙
공부는 스스로 하기
→ 본인의 의지에 의한 자기주도학습은 개발에 대한 의지를 나타냄.
모르는 것은 물어볼 수 있으나 자신의 공부는 자신이 주도
타인의 과제 대신 해주지 않기
→ 본인이 발전하다 보면 주변에서 도움을 청할 수 있음.
개념에 대해 알려줄 순 있지만 대리로 과제를 작성해주면 도움을 받는 측도 손해
프로젝트를 수행할 땐 책임감을 가지고 하기
→ 한 명의 나태함으로 다른 팀원에게 피해가 갈 수도 있음.
또한 깔끔한 코드를 작성하기 위해 노력하기.
끊임없이 자기계발하기
→ 본인의 발전이 곧 동아리의 발전. 개발자 관련 서적을 많이 읽는 등의
꾸준한 자기계발하기.
테스팅 멤버를 모집한 이유
스터디 프로세스 개선
→ 계획한 스터디를 테스팅멤버들과 실행해보고 피드백을 받아 더 효율적으로 개선
동아리 정식활동 전 인적자원 확보
→ 방학 때 역량을 강화한 후 정식 활동 개시시 동아리의 중점적인 역할 부여
동아리 활동에 대한 다양한 의견 청취
→ 동아리에서 활동할 내용에 대한 의견 제공
→ 서비스 구현 가능인원이 부족한 초반에 지식나누미의 역할 겸임
→ 본인이 개발에 대해 하고 싶은 활동이 있다면 건의
테스팅 멤버의 활동 내용
1. 오리엔테이션
→ 동아리에 대한 간략한 소개
2. 스터디 진행 및 프로젝트 기획
→ 기간은 1월 6일까지
3. 프로젝트 진행
→ 기간은 1월 7일부터 2월 5일까지
→ 자기주도학습 중심으로 스터디 진행
→ 정기모임 때 진행상황 공유, 코드 리뷰, 트러블슈팅 진행
→ 공부할 분야 선택 및 커리큘럼 작성
→ 1주일에 한 번 이상의 정기모임으로 코드리뷰, 진도현황, 피드백 진행
→ 프로젝트 아이디어 공모, 서비스 기획, 기능 정의
4. 프로젝트 회고
→ 본인이 생각하기에 미흡한 점. 멤버의 진행에 대한 미흡한 점에 대해 회고
5. 정식 멤버활동 개시
→ 테스팅 멤버를 마치고, 정식 멤버활동을 희망하는 사람들로 인원 구성
→ 본인이 원할 시 집행부 역할 부여
→ 개선이 필요한 사항 정리 및 다음 프로젝트에 적용
→ 단, 스크럼 방식으로 진행 시 다음 스프린트에서 적용
→ 멤버 모집 및 동아리의 정식 활동 시작
“개발자들”의 스터디 진행방식
1. 서비스 구현 중심의 프로젝트
→ 공부한 내용을 바탕으로 서비스를 구현해보는 과정
2. 구현한 서비스 유지보수 프로젝트
→ 공부한 내용을 자기 것으로 만드는 데에 큰 도움
→ 이 단계에서는 코드의 질이나 유지보수성 등에 큰 염두를 두지 않고,
오로지 서비스 구현에만 치중
→ 테스팅 멤버의 경우 이 단계까지만 스터디 진행
→ 기능을 새로 정의하여 추가
→ 기존의 기능을 소비자의 요구사항 변경에 따라 수정
3. 프로그램의 무결성 입증을 위한 테스트 작성 프로젝트
→ 각 프로그램 별 정상적인 동작을 확인하기 위한 Test Case 작성
→ 전체 테스트를 통합테스트로 돌려봄으로써 전체 시스템 점검
4. Test Driven Development 프로젝트 진행
→ 요구사항에 대해 단위 테스트를 먼저 작성하고 실제 프로그램을 개발하는 방식
5. 여러 다른 방식들을 도입한 프로젝트 진행
→ 이 때부턴 본인이 프로젝트의 주도자
→ 여러 프로젝트 진행 방식과 프로세스를 프로젝트에 도입해봄으로써 생산성과
코드의 품질 등을 비교
이 과정에서 얻는 것은?
1. 서비스 구현 중심의 프로젝트에서
2. 구현한 서비스 유지보수 프로젝트에서
→ 코드를 깔끔하게 작성해야 하는 이유에 대해 체감
→ 유지보수성을 위한 설계에 대한 필요성 체감
→ 속도 튜닝에 대한 지식 습득
→ 프로그램의 어느 부분이 작동되지 않는지 알 수 있는 단위테스트에 대한 필요성 체감
3. 프로그램의 무결성 입증을 위한 테스트 작성 프로젝트에서
→ 프로그램의 요구사항을 테스트로 정의하는 방법 숙달
→ 깔끔한 코드와 테스트 작성의 상관관계에 대한 지식 습득
→ 공부한 것을 실무에 사용하는 법에 대해 학습
→ 본인이 세운 로직을 코드로 나타내는 법에 대해 숙달
4. Test Driven Development 프로젝트 진행에서
→ 테스트를 먼저 작성해봄으로써 오는 이득과 손해에 대한 지식 습득
5. 여러 다른 방식들을 도입한 프로젝트 진행에서
→ 여러 방식들과 프로세스에 대한 지식들 습득
→ 각 상황에 대해 알맞은 방식과 프로세스를 도입하는 방법을 습득
→ 테스트 작성에 대해 익숙해짐
“개발자들”의 목표
4. “개발자들”의 대외동아리화
5. 연합동아리로서의 도약
→ 일정 기간 활동한 다음 수료하고 탈퇴하는게 아닌 꾸준히 계속 활동하는 방식
→ 학교간 <개발자들> 동아리들의 모임을 가지고, 서로의 기술을 나눔
→ 다양한 학교의 학생들을 모집하여 본인의 모교에 “개발자들” 동아리를
따로 설립하게 하고 함께 활동
1. 좋은 개발자 배출
→ 깔끔한 코드, 유지보수성 등 장인정신을 가진 개발자 배출
2. 소프트웨어 생태계에 기여
→ 여러 오픈소스 활동을 함으로써 소프트웨어 생태계에 기여
3. 수익활동
→ 여러 수익활동을 통한 재정확보로 개발자가 성장하는 데에 필요한 환경 조성
개강 후 활동 계획
멤버 모집
오리엔테이션
→ 동아리에 대해 다시 간략한 소개
→ 오티를 통한 동아리원 모집활동
→ 강당에서 설명회를 통한 모집활동
새 멤버 환영회
→ 정기모임에서 자기 소개 및 뒷풀이 진행
→ SNS 홍보 등을 통하여 타 학교 학생 모집활동
→ 개인별 상담을 통해 분야 선택 및 커리큘럼 제시
→ 자기 소개에서는 자신의 분야소개 포함
스터디
→ 자기주도학습 중심으로 스터디
→ 정기 모임에서 공부내용 발표 및 피드백, 코드리뷰 진행
스터디 프로젝트 진행
→ 집행부 한 명과 신입 멤버 여러 명으로 팀 구성
→ 정기 모임에서 프로젝트 진행상황 공유, 코드리뷰 등 진행
내부 프로젝트 진행
→ 동아리 운영에 필요한 웹 및 어플리케이션 개발
→ 기존 운영중인 시스템 유지보수
외주 프로젝트 진행
→ 구글 광고, SNS광고등을 통해 프로젝트 수주
→ 프로젝트 기여도에 따라 수익 배분
진행한 프로젝트 포트폴리오화
→ 모든 멤버가 진행한 프로젝트는 도메인을 붙여서 전시
→ “개발자들” 공식 홈페이지에서 프로젝트 참여인원, 역할 등을 명시
오픈소스활동
→ 프레임워크, 솔루션 등을 기획하여 Github에 공유
토이 프로젝트 진행
→ 뜻이 맞는 멤버들이 모여 본인들만의 프로젝트를 기획하고 개발
사회기여활동
→ 주변의 초,중,고등학교와 연계하여 학생들에게 코딩교육봉사
→ 공공을 위한 앱, 웹 등을 개발
여기까지입니다.
잘 부탁드립니다!

개발자들 오리엔테이션

  • 1.
  • 2.
    1. <개발자들>은? 2. 테스팅멤버를 모집한 이유 3. 테스팅 멤버의 활동내용 4. <개발자들>의 스터디 진행방식 5. <개발자들>의 목표 6. 개강 후 활동 계획 목차
  • 3.
  • 4.
    기존의 개발동아리들은 코딩교육 혹은자기주도학습을 통한 서비스 개발에 치중 → 코드의 질, 유지보수성, 테스트를 통한 품질보증 등에 대해선 관심이 미흡 잘하는 소수가 다수를 이끄는 구조 → 지식의 흐름이 거의 일방적. → 잘하는 소수가 취업 등의 이유로 동아리 활동이 불가할 경우 동아리 전체가 마비.
  • 5.
    그렇다면 “개발자들”은? 서비스를 만드는것과 더불어 “좋은 개발자”를 육성하는 데에 포커스 → 서비스의 구현뿐 아니라 유지보수성 향상을 위한 객체지향적 설계, 품질의 명확성을 위한 테스트 작성, 성능 향상을 위한 튜닝 등의 제품 품질향상에 초점 모두가 지식을 나누는 구조 → 지식의 흐름이 일정하지 않고 순환적. → 특출나게 잘하는 멤버가 없더라도, 스스로 공부한 내용을 서로 나누며 발전하는 구조 → 코드리뷰, 페어 프로그래밍 등의 개발문화 도입
  • 6.
    어떻게 지식을 나눌까? 1주일에한 번 정기모임 (발표, 코드리뷰 등) → 굳이 대단한 내용이 아니더라도, 공부한 내용에 대해 간략히 발표. 다른 멤버들에게 지식을 나눌 수 있음. 내부 컨퍼런스에서 본인의 지식을 나눔 → 전 IT관련 학우들에게 개발자들의 지식을 나눌 수 있음. → 내용이 좋을 경우 외부 컨퍼런스에 스피커로 지원 언제든 모일 수 있는 상시모임에서 개발에 대한 대화와 토론 → 개발에 대한 상식폭을 넓힐 수 있고, 모르는 점에 대해서도 서로 질문 가능 → 아직 장소는 정해지지 않았지만, 개발자들 멤버 모두가 언제든 갈 수 있는 장소 마련예정 → 코드리뷰를 통해 몰랐던 코딩방식을 배울 수도 있고, 자신의 잘못된 점에 대한 피드백을 받을 수 있음
  • 7.
  • 8.
    프로젝트 수행을 주목적으로 하는 개발 동아리 공부한 내용을 실제 프로젝트에 도입 → 공부한 내용을 단단히 하고, 공부를 경험으로 만들게 됨. 공부한 내용과 프로젝트 진행현황을 발표하고, 코드리뷰를 수행 → 본인의 지식과 의견을 다른 개발자와 나눔으로써 서로의 발전을 도모 공모전 지원, 오픈소스 활동, 수행한 프로젝트 전시 → 본인의 포트폴리오 강화 팀 단위로 프로젝트를 진행 → 개발자에게 가장 중요한 협업능력을 기르게 됨 초·중·고등학생에게 코딩교육봉사를 통해 사회에 기여
  • 9.
    <개발자들>의 규칙 공부는 스스로하기 → 본인의 의지에 의한 자기주도학습은 개발에 대한 의지를 나타냄. 모르는 것은 물어볼 수 있으나 자신의 공부는 자신이 주도 타인의 과제 대신 해주지 않기 → 본인이 발전하다 보면 주변에서 도움을 청할 수 있음. 개념에 대해 알려줄 순 있지만 대리로 과제를 작성해주면 도움을 받는 측도 손해 프로젝트를 수행할 땐 책임감을 가지고 하기 → 한 명의 나태함으로 다른 팀원에게 피해가 갈 수도 있음. 또한 깔끔한 코드를 작성하기 위해 노력하기. 끊임없이 자기계발하기 → 본인의 발전이 곧 동아리의 발전. 개발자 관련 서적을 많이 읽는 등의 꾸준한 자기계발하기.
  • 10.
  • 11.
    스터디 프로세스 개선 →계획한 스터디를 테스팅멤버들과 실행해보고 피드백을 받아 더 효율적으로 개선 동아리 정식활동 전 인적자원 확보 → 방학 때 역량을 강화한 후 정식 활동 개시시 동아리의 중점적인 역할 부여 동아리 활동에 대한 다양한 의견 청취 → 동아리에서 활동할 내용에 대한 의견 제공 → 서비스 구현 가능인원이 부족한 초반에 지식나누미의 역할 겸임 → 본인이 개발에 대해 하고 싶은 활동이 있다면 건의
  • 12.
  • 13.
    1. 오리엔테이션 → 동아리에대한 간략한 소개 2. 스터디 진행 및 프로젝트 기획 → 기간은 1월 6일까지 3. 프로젝트 진행 → 기간은 1월 7일부터 2월 5일까지 → 자기주도학습 중심으로 스터디 진행 → 정기모임 때 진행상황 공유, 코드 리뷰, 트러블슈팅 진행 → 공부할 분야 선택 및 커리큘럼 작성 → 1주일에 한 번 이상의 정기모임으로 코드리뷰, 진도현황, 피드백 진행 → 프로젝트 아이디어 공모, 서비스 기획, 기능 정의
  • 14.
    4. 프로젝트 회고 →본인이 생각하기에 미흡한 점. 멤버의 진행에 대한 미흡한 점에 대해 회고 5. 정식 멤버활동 개시 → 테스팅 멤버를 마치고, 정식 멤버활동을 희망하는 사람들로 인원 구성 → 본인이 원할 시 집행부 역할 부여 → 개선이 필요한 사항 정리 및 다음 프로젝트에 적용 → 단, 스크럼 방식으로 진행 시 다음 스프린트에서 적용 → 멤버 모집 및 동아리의 정식 활동 시작
  • 15.
  • 16.
    1. 서비스 구현중심의 프로젝트 → 공부한 내용을 바탕으로 서비스를 구현해보는 과정 2. 구현한 서비스 유지보수 프로젝트 → 공부한 내용을 자기 것으로 만드는 데에 큰 도움 → 이 단계에서는 코드의 질이나 유지보수성 등에 큰 염두를 두지 않고, 오로지 서비스 구현에만 치중 → 테스팅 멤버의 경우 이 단계까지만 스터디 진행 → 기능을 새로 정의하여 추가 → 기존의 기능을 소비자의 요구사항 변경에 따라 수정 3. 프로그램의 무결성 입증을 위한 테스트 작성 프로젝트 → 각 프로그램 별 정상적인 동작을 확인하기 위한 Test Case 작성 → 전체 테스트를 통합테스트로 돌려봄으로써 전체 시스템 점검
  • 17.
    4. Test DrivenDevelopment 프로젝트 진행 → 요구사항에 대해 단위 테스트를 먼저 작성하고 실제 프로그램을 개발하는 방식 5. 여러 다른 방식들을 도입한 프로젝트 진행 → 이 때부턴 본인이 프로젝트의 주도자 → 여러 프로젝트 진행 방식과 프로세스를 프로젝트에 도입해봄으로써 생산성과 코드의 품질 등을 비교
  • 18.
  • 19.
    1. 서비스 구현중심의 프로젝트에서 2. 구현한 서비스 유지보수 프로젝트에서 → 코드를 깔끔하게 작성해야 하는 이유에 대해 체감 → 유지보수성을 위한 설계에 대한 필요성 체감 → 속도 튜닝에 대한 지식 습득 → 프로그램의 어느 부분이 작동되지 않는지 알 수 있는 단위테스트에 대한 필요성 체감 3. 프로그램의 무결성 입증을 위한 테스트 작성 프로젝트에서 → 프로그램의 요구사항을 테스트로 정의하는 방법 숙달 → 깔끔한 코드와 테스트 작성의 상관관계에 대한 지식 습득 → 공부한 것을 실무에 사용하는 법에 대해 학습 → 본인이 세운 로직을 코드로 나타내는 법에 대해 숙달
  • 20.
    4. Test DrivenDevelopment 프로젝트 진행에서 → 테스트를 먼저 작성해봄으로써 오는 이득과 손해에 대한 지식 습득 5. 여러 다른 방식들을 도입한 프로젝트 진행에서 → 여러 방식들과 프로세스에 대한 지식들 습득 → 각 상황에 대해 알맞은 방식과 프로세스를 도입하는 방법을 습득 → 테스트 작성에 대해 익숙해짐
  • 21.
  • 22.
    4. “개발자들”의 대외동아리화 5.연합동아리로서의 도약 → 일정 기간 활동한 다음 수료하고 탈퇴하는게 아닌 꾸준히 계속 활동하는 방식 → 학교간 <개발자들> 동아리들의 모임을 가지고, 서로의 기술을 나눔 → 다양한 학교의 학생들을 모집하여 본인의 모교에 “개발자들” 동아리를 따로 설립하게 하고 함께 활동 1. 좋은 개발자 배출 → 깔끔한 코드, 유지보수성 등 장인정신을 가진 개발자 배출 2. 소프트웨어 생태계에 기여 → 여러 오픈소스 활동을 함으로써 소프트웨어 생태계에 기여 3. 수익활동 → 여러 수익활동을 통한 재정확보로 개발자가 성장하는 데에 필요한 환경 조성
  • 23.
  • 24.
    멤버 모집 오리엔테이션 → 동아리에대해 다시 간략한 소개 → 오티를 통한 동아리원 모집활동 → 강당에서 설명회를 통한 모집활동 새 멤버 환영회 → 정기모임에서 자기 소개 및 뒷풀이 진행 → SNS 홍보 등을 통하여 타 학교 학생 모집활동 → 개인별 상담을 통해 분야 선택 및 커리큘럼 제시 → 자기 소개에서는 자신의 분야소개 포함
  • 25.
    스터디 → 자기주도학습 중심으로스터디 → 정기 모임에서 공부내용 발표 및 피드백, 코드리뷰 진행 스터디 프로젝트 진행 → 집행부 한 명과 신입 멤버 여러 명으로 팀 구성 → 정기 모임에서 프로젝트 진행상황 공유, 코드리뷰 등 진행 내부 프로젝트 진행 → 동아리 운영에 필요한 웹 및 어플리케이션 개발 → 기존 운영중인 시스템 유지보수 외주 프로젝트 진행 → 구글 광고, SNS광고등을 통해 프로젝트 수주 → 프로젝트 기여도에 따라 수익 배분
  • 26.
    진행한 프로젝트 포트폴리오화 →모든 멤버가 진행한 프로젝트는 도메인을 붙여서 전시 → “개발자들” 공식 홈페이지에서 프로젝트 참여인원, 역할 등을 명시 오픈소스활동 → 프레임워크, 솔루션 등을 기획하여 Github에 공유 토이 프로젝트 진행 → 뜻이 맞는 멤버들이 모여 본인들만의 프로젝트를 기획하고 개발 사회기여활동 → 주변의 초,중,고등학교와 연계하여 학생들에게 코딩교육봉사 → 공공을 위한 앱, 웹 등을 개발
  • 27.
  • 28.