All Articles

2025 오픈소스 컨트리뷰션 아카데미 체험형 멘토 후기

올해 봄, 6주 동안 오픈소스 컨트리뷰션 아카데미 체험형 프로그램 git 활용 및 Chromium 프로젝트의 멘토링을 했다. 2025년 마지막 날이 되어서야 멘토링 과정과 후기를 남긴다.

ossca 2025

시작

지난 4월 중순부터 5월 말까지 6주 동안 오픈소스 컨트리뷰션 아카데미 체험형 멘토를 했다. 2월 초에 오픈 프런티어 기여형 프로그램으로 연을 맺게 된 오픈업 담당자 분이 내 블로그에서 멘토링도 한 번 해보고 싶다는 내용을 보셨다면서… 멘토를 제안해 주셨다. OSSCA 체험형 프로그램은 총 6주동안 진행하는데, 그 중 2주는 git 과 GitHub, 나머지 4주는 프로젝트 내용으로 멘토링 프로그램을 진행한다고 들었다. Chromium 과 같은 대형 프로젝트로 그 짧은 기간에 멘토링을 하는게 가능한지 의문이 들었지만 크게 고민하지 않고 하기로 결정했다. 어쨌든 13주 이상 진행하고 최종 보고회까지 있는 참여형 프로그램보다는 부담이 덜할 것 같았다.

멘토링을 하게 된 첫번째 이유는 멘토링을 하면 나도 Chromium 을 더 관심있게 보고 다시 기여를 열심히 하지 않을까라는 막연한 기대 때문이었다. 그 다음은 현재 하고 있는 일에 대한 아쉬움을 해소하고 싶은 이유가 컸다. 작년에 옮긴 부서에서는 하드웨어 기반의 PoC 제품의 소프트웨어를 적은 인원이 개발하고 있는데, 그러다 보니 일하는 방식이나 업무의 깊이에 대한 아쉬움이 많았다. 보통은 연차가 쌓일수록 다른 사람들을 리딩하거나 협업할 일이 많이 생기는데 지금까지 그런 기회도 거의 없었어서 관련된 역량도 키우고 싶었다. 나는 오픈소스를 늦게 시작한 것을 아쉽다고 느꼈기 때문에 주변의 주니어 개발자들이 조금이라도 더 빨리 시작할 수 있게 도움을 주고 싶었다. AI 시대에 취업도 어렵고, 예전과는 다른 목표와 방식으로 일을 하는 것이 중요하게 바뀌고 있는 시점에 이 멘토링 프로그램이 얼마나 효용이 있는지 의문이 들긴 했지만 조금이라도 도움이 되길 바라며 준비를 시작했다.

멘티 선발

4월 초부터 멘티들의 지원을 받았다. 주최에서 제공한 템플릿에 맞춰 프로젝트 소개 페이지를 직접 만들었다. 2025년 1차 체험형 프로그램의 프로젝트는 10개였고, 지원자들은 각 프로젝트 소개 페이지를 보고 자기소개, 지원동기, 개발경험 등을 작성해서 2지망까지 지원할 수 있었다.

각 프로젝트의 멘토가 지원서 내용을 토대로 직접 멘티를 선발했다. 25~30명 선발로 가이드를 받았는데 그보다는 적은 인원이 1지망으로 Chromium 프로젝트를 지원했다. 멘토 입장에서는 20명 이상은 좀 많다고 생각이 들었지만 그래도 최대한 기회를 주고 싶어서 많은 인원을 뽑으려고 했다. 지원서 내용이 조금 성의없다고 느낀 분들을 빼고 2지망 분들을 추가해서 뽑았다. 1지망 지원서를 대충 쓴 사람보다는 2지망이라도 열심히 쓴 사람을 뽑고 싶었다. 당연히 2지망에서 뽑은 분들은 1지망 지원서도 열심히 썼을 것이기 때문에 (2지망으로 쓴 분들이 1지망을 어디에, 어떤 내용으로 썼는지는 알 수 없었다.) 대부분 1지망 프로그램으로 뽑혀가고 1명만 우리 쪽으로 배정이 되었다.

최종 선발 된 멘티는 22명이었다. 발대식 전에 1명이 불참 의사를 밝혀서 발대식 기준 21명으로 시작하였고 그 중 1명을 제외한 20명이 1회 이상 모임에 참여했다.

준비와 발대식

지금껏 오픈소스 컨트리뷰션 아카데미나 다른 프로그램으로 멘토링을 해보거나 받아본 경험이 없었다. 어느 정도 커리큘럼과 기본적인 구성안을 만들었지만 실제로 어떻게 진행해야 할지 막막했다. 그래서 미리 모든 걸 준비하긴 어려웠고, 프로그램을 진행하면서 멘티들의 상황이나 목표에 맞추기로 했다. 최대한 많은 인원을 끝까지 끌고 가고 싶었다. 멘티 선발 후 발대식 전에 사전 설문조사를 했다. 이 부분은 정말 잘한 일이라고 생각한다. 지원서를 통해 이미 어느 정도 정보를 알 수 있었지만 프로젝트 관련 설문을 추가로 받아서 멘티들을 조금 더 깊이 이해할 수 있었다. 내용을 여러번 확인하면서 멘티들의 얼굴과 이름도 금방 익힐 수 있었다. 이전에 다른 프로젝트로 오픈소스 컨트리뷰션 아카데미에 참여한 분들에게도 좋았던 점과 아쉬웠던 점 작성을 요청했다. 경험자는 3~4명 정도 있었는데 공통으로 아쉽게 느꼈던 점이 너무 어려워서 포기하는 분들이 많았고 끝가지 남아있던 분들이 소수였다는 점이었다. 나는 이 부분을 고려해서 최대한 많은 인원을 끝까지 끌고 가는 걸로 방향을 잡았다.

4월 중순 평일 저녁에 프로젝트별로 발대식을 진행했다. 선발된 멘티 21명 중 15명이 참석했다. 먼저 주최 측에서 전체 프로그램 소개와 공지를 하고 이후에 각 강의실에서 어색하게 피자를 먹으며 오리엔테이션을 했다. 사전 설문조사 내용과 앞으로 진행할 내용을 공유하고 모임 시간을 정했다. 멘토 포함 16명 중 MBTI E 성향이 한 명 밖에 없어 어색한 자리였다. 그래도 멘토 입장이니 억텐으로 열심히 진행을 했다. 뒤돌아 봤을때 발대식에 참여한 분들은 대부분 수료를 했다. 오리엔테이션이 별 일 아닐 수도 있지만 가볍게 인사하고 목표를 공유하는 자리에 참석하는 것이 프로그램에 참여하는 태도에 꽤 큰 영향을 미친다고 생각한다.

모임 진행 방식

6주 동안 매주 오프라인 1회, 온라인 1회 모임을 진행했다. 오프라인 모임을 기본으로 하고, 멀리 살아 매주 올라오기 힘든 분들과 불참자 대상으로 온라인 보강을 했다. 오프라인 모임은 매주 일요일과 토요일을 번갈아가면서 일-토-일-토-일-토 모임을 가졌다. 그 다음주 목요일 저녁에 온라인 모임 진행을 했다. 매주 오프라인 모임에는 10-12명, 온라인 모임에는 5-7명 정도가 참여했다.

모임 내용

모임은 강의식으로 진행했다. 강의만 하면 이해하기 어렵고 지루하기 때문에 중간에 간단한 실습도 진행했다. 멘티들은 대부분 코로나 시대에 학교를 다녔기 때문에 비대면 강의에 익숙한 세대인데 나 같은 경우는 그게 아니어서 강의하는 입장에서 조금 어색했다. 영상은 나만 켰었고 멘티들은 음성보다는 채팅으로 질문을 했다.

  • 1주차: 오픈소스 프로젝트 기여 / git & GitHub #1 / 오픈소스 프로젝트 둘러보기
  • 2주차: Chromium 개발 프로세스 개요 / git & GitHub #2
  • 3주차: Chromium 문서 수정 기여 실습
  • 4주차: Chromium 문서 수정 기여 실습 보충 / Chromium 이슈 둘러보기 / WebIDL
  • 5주차: Chromium 폴더 및 구조 둘러보기 / Chromium Feature 둘러보기 실습
  • 6주차: Chromium Feature 둘러보기 (개발자 도구, Extensions) / 과정 마무리

1, 2주차

1, 2주차에는 체험형 취지에 따라 git 과 GitHub 와 같은 협업 도구에 대한 멘토링이 필수였다. git 과 GitHub 는 너무 기본적인 내용보다는 내가 일하면서 많이 쓰는 명령어나 개발 프로세스 전략을 공유했다. 회사를 다니는 분들도 있고 부트캠프 등을 통해 프로젝트를 많이 경험해 본 분들도 있었기 때문에 어려웠던 부분이나 나의 경험 위주로 전달했다. 물론 기본적인 내용이 익숙하지 않은 분들도 있었는데 주최 측에서 git 강의를 따로 유튜브에 업로드하여 멘티들에게 제공을 했기 때문에 기본 강의는 유튜브 강의를 참고하게 했다.

협업 도구에 대한 기본적인 내용 외에 오픈소스 프로젝트 기여 활동에 대한 전반적인 내용도 같이 공유했다.

  • 오픈소스 활동의 의미, 기여 동기와 얻을 수 있는 가치 공유
  • 오픈소스 참여 방법과 프로젝트 탐색법 학습
  • Git 기본 명령어, 브랜치 전략, alias 설정 등 실습
  • GitHub를 통한 협업 방식, PR 전략, Trunk-based Development 소개
  • 개인 dotfiles 및 alias 활용법 공유
  • 오픈소스 개발 프로세스 전체 흐름 소개 (이슈 → 리뷰 → 머지 → 배포)
  • Chromium 기여 흐름 및 Google Issue Tracker, Gerrit 리뷰 시스템 소개
  • Blink, Web Platform, WebIDL 등 주요 기술 요소 및 구조 개요
  • 웹 표준 문서화 과정 및 Web Platform Test 소개
  • GitHub 프로젝트 관리, CI/CD, 문서 구성 방식 학습

3주차

3주차부터는 Chromium 기여에 대해 본격적인 멘토링을 해야 했다. 발표 자료와 강의, 데모로 아무리 보여줘도 직접 해보지 않으면 이해가 되지 않는 부분이 많기 때문에 직접 해보는 시간이 필요하다고 생각했다. 특히 Chromium 은 gerrit 과 구글의 issue tracker 를 사용하는데 대부분 처음 사용해 보기 때문에 멘토의 일방적인 설명만으로는 이해하기가 더 어렵다.

실습을 어떻게 해야할지 고민을 많이 했는데 결국 오픈소스에 가장 쉽고 빠르게 기여 할 수 있는 방법 중 하나인 문서 수정을 하기로 결정했다. docs 마크다운 문서의 깨진 링크를 수정하는 실습을 진행했다. 실습 전에 내가 직접 + ChatGPT 으로 만든 스크립트로 깨진 링크들을 찾아놓았다. 미리 준비한 이슈를 바탕으로 각 멘티들이 모임 시간 안에 패치를 업로드하는 걸 목표로 진행했다. 모임 시간 안에 끝내지 않으면 흐지부지 될 가능성이 높다. 별도의 자체 GitHub 에 각 깨진 링크에 대한 이슈를 만들어 놓고 멘티들이 셀프 할당하여 컨트리뷰션을 진행했다. Chromium 이슈를 직접 사용하는 건 시간이 더 걸리고 복잡해질 수 있기 때문에 별도의 GitHub 프로젝트를 활용하여 코드 반영 과정을 정리하고 GitHub Pages 로 볼 수 있도록 프로세스를 만들었다.

실습 목표

  • Chromium 프로젝트 코드 히스토리 파악
  • 패치 업로드
  • 리뷰어 찾기
  • 리뷰 받기
  • 자체 GitHub 프로젝트의 프로세스에 따라 반영 내용 정리하기

실제로 17명이 컨트리뷰션 실습 참여를 했고 대부분 반영까지 완료했다. 리뷰 받는 중에 발생한 문제들은 이후에도 중간중간 정리해서 공유했다. 나도 몰랐던 정책을 알게 된 부분도 있었다. Committer 의 권한이 알고 있던 것보다 좀 더 있다는 것도 알게 됐다. 그래서 다행히 멘티들이 패치를 빠르게 반영하는데 도움을 줄 수 있었다.

4주차

3주차 실습을 하면서 생긴 이슈를 공유했다. 일주일 사이 절반은 반영까지 완료했고 나머지는 리뷰 중이거나 수정 요청을 받은 경우가 있었다. 그 다음에는 본격적으로 기술적인 컨트리뷰션을 하고 싶은 분들을 위해 Chromium 에서 기여할만한 이슈를 찾는 방법을 알려주었다.

나머지 시간에는 웹 브라우저 엔진의 기본인 Web IDL(Interface Definition Language) 기반으로 blink 에서 어떻게 코드를 작성하고 테스트를 하는지 샘플 코드와 실제 코드를 사용하여 설명하는 시간을 가졌다.

5주차

5주차에도 간단한 실습을 진행했다. Chromium 프로젝트의 각 폴더와 구조를 먼저 설명하고 이후에 멘티들이 components 의 각 모듈에 대해 빌드 종속성, DEPS 파일 기반으로 구조가 어떤지 찾아보는 실습을 했다. 자체 GitHub 에 각 멘티가 이슈를 만들고 리포트하는 형태로 진행했다.

6주차

마지막 날이었기 때문에 가볍게 진행했다. 더 배우고 싶은 주제에 대해 미리 설문을 받았다. 개발자 도구, Extensions 등 프론트엔드 개발자들에게 조금 더 호기심이 생길만한 주제로 프로젝트를 한번 둘러보는 시간을 가졌다. 마지막 모임이 끝나고 근처에서 뒷풀이 회식을 하면서 마무리했다.

마무리

프로그램 참여도에 따라 수료자를 선정하여 전달했다. 자체적으로 매주 설문조사를 통해 익명으로 피드백을 받았었는데 응답률이 낮았다. 마지막날 뒷풀이 때 물어봤더니 내요이 너무 많아서 안 썼다는 분이 있었다. 어느 정도 납득이 됐다. 그리고 내가 받은 피드백과 주최 측에서 받은 피드백이 다를 수 있기 때문에 담당자 분께 따로 요청드려서 내용을 받았다.

멘티분들의 피드백을 보시면, 전반적으로 멘토님의 친절한 지도와 실무적인 경험 제공에 대해 만족도가 매우 높았고, 덕분에 대형 오픈소스 기여에 대한 자신감을 얻었다는 응답이 많았습니다. 아쉬운 점으로는 체험형-참여형 연계 부족과 프로그램 기간이 주로 언급되었습니다.

5월에 체험형 프로그램이 끝나고 7월부터 참여형 프로그램이 진행될 예정이었어서 참여형까지 이어서 하길 기대한 멘티들이 많았던 것 같다. 나도 체험형을 준비하면서 참여형을 같이 진행하면 좋겠다는 생각을 했었는데 체험형-참여형 프로그램의 리드 멘토를 이어서 할 수 없다는 정책이 있어서 참여형 멘토 지원을 포기했다. 참여형에는 Chromium 프로젝트가 없었고 멘티들에게 이 부분을 미리 밝혀서 그런지 몇몇 분들이 피드백에 연계에 대한 아쉬움을 남긴 것 같다.

프로그램이 끝나자마자 BrowserUs 의 Browser Night #1 행사에서 라이트닝 토크로 후기를 발표할 기회가 생겼다. 라이트닝 토크인만큼 5분 안에 발표를 끝 마쳐야 했는데 시간이 부족해 준비한 내용을 다 말하지 못하고 내려와야 했다.

발표 자료 를 만들면서 정리했던 KPT 회고를 남기며 2025년 오픈소스 컨트리뷰션 아카데미 체험형 멘토 후기 글을 마친다.

KPT 회고

Keep

  • 사전 설문조사와 모임 후 피드백 수집
    • 아주 내성적인 멘티 분들을 사전에 이해하고 커뮤니케이션하는데 큰 도움이 되었음
  • 경험 위주 전파
  • 나만의 방식을 고민하고 적용
    • Chromium 마크다운 + GitHub 연계 실습
    • 어디에서도 볼 수 없는… (positive)

Problem

  • 강의 내용과 설명의 디테일/깊이 부족
    • 세이브 원고(?) 소진 후 매주 급급한 준비
    • 어디에서도 볼 수 없는… (negative)
  • 피드백을 제대로 반영 못한 느낌 (피드백 시스템의 한계?)
  • 온라인 강의의 어려움을 극복하지 못함
    • 이미 오프라인에서 진행한 내용인데 정신이 더 없었다.
  • 체험형이라는 것과 6주라는 기간에 스스로 한계를 두지 않았나…
    • 좀 더 빡세게 했어야 했나? (2차 기여 기회, 숙제나 스터디 등)

Try

  • 좋은 멘토/개발자가 되기 위해서는 훈련이 더 필요하다
  • 느슨해진 오픈소스 컨트리뷰션과 자기계발에 다시 긴장감을 가지자
  • 내년 오픈소스 컨트리뷰션 아카데미 참여형 멘토 도전?
    • (업무로 웹브라우저 개발을 다시 하게 된다면…)

Published Dec 31, 2025