들어가며
요즘 주변 개발자 분들과 이야기를 나누면서 오픈소스 기여에 관심을 가진 분들이 제 생각보다 많다는 것을 느끼게 되었습니다. 오픈소스 기여의 중요성과 그 가치에 대해서는 시간이 지날수록 많은 개발자들이 강조하는 요소 중 하나인 것 같기도 합니다.
학부생 시절에 오픈소스 기여의 중요성에 대한 강연도 몇 차례 있었고 인턴을 경험했던 회사 중 오픈소스 서비스를 제공하는 곳도 있었기에 중요성에 대한 이야기를 특히나 더 많이 들었던 것 같습니다.
오픈소스 기여의 효과
많은 사람들이 오픈소스 기여가 중요하다는 말을 하고 실제 기업에서 오픈소스 기여자를 우대조건으로 두기도 합니다. 그렇다면 오픈소스 기여를 한다면 정확히 무엇에 도움이 될까요?
제 주관적인 견해는 아래와 같습니다.
- 오픈소스 커뮤니티에서 활동하는 다양한 개발자와 소통, 협업할 수 있다.
- 오픈소스 커뮤니티 활동을 통하여 개인의 인지도, 입지를 확보할 수 있다.
- 다른 사람이 작성한 코드를 이해하고 수정하는 과정에서 코드에 대한 이해도가 늘어난다.
- 오픈소스에 적용된 빡빡한(?) 코드 컨벤션을 체험해볼 수 있다.
오픈소스 기여의 첫 발걸음을 내딛는 법
저는 '오픈소스 기여는 빠르면 빠를수록 좋다', '오픈소스 기여는 개발자로의 가치를 올릴 수 있는 수단이다'라는 이야기를 듣자마자 무작정 오픈소스 기여를 시작해보려고 했습니다.
하지만 항상 있던 물건도 찾으면 보이지 않는 것처럼 오픈소스 기여를 위하여 할 일을 찾으려고 하는 것은 쉽지 않았습니다. 쉬운 이슈는 누군가가 이미 해결해두었고 남아있는 이슈는 로직 전체를 이해해야 하는 큰 규모의 것들만 있었습니다.
그래서 오픈소스 기여를 위한 일거리를 찾는다기 보단 실제로 그 오픈소스 프로젝트를 이용하면서 발생한 이슈들을 해결하는 과정에서 자연스럽게 찾는 것이 중요하다고 생각합니다.
저와 같은 경우에는 Next.js와 React를 위와 같은 방법으로 기여한 적이 있습니다.
1. Next.js 13에서 14로 마이그레이션을 하면서 캐싱 방법이 변환됨에 따라 생성한 discussion
https://github.com/vercel/next.js/discussions/67475
https://github.com/vercel/next.js/discussions/69600
2. React 공식 문서 확인 중 오탈자 발견
프로젝트 개발 단계에서 트러블 슈팅을 하며 discussion을 올리고 이를 통하여 실제 Issue화되어 기여할 수도 있으며, 정보를 얻기 위하여 공식 문서를 정독하는 단계에서 오탈자를 발견하여 이를 수정하는 조그만한 단위의 기여도 가능합니다.
특히, 트러블 슈팅과 문서 읽기는 개발을 하면서 자연스레 따라오는 것들이기 때문에 겸사겸사 진행하는 것도 좋다고 느꼈습니다.
오픈소스의 빡빡한(?) 코드 컨벤션
오픈소스 기여를 하면서 느낀 것은 코드 컨벤션과 이와 관련된 CI/CD가 알차게 구성되어 있습니다. 학부생들끼리 진행하는 사이드 프로젝트, 대부분의 사내 프로젝트보다 더욱 빡빡하게 잡는 경우도 있습니다.
이를 통하여 컨벤션이 지켜진 코드를 읽는 경험, 그리고 지정된 컨벤션에 따라 나의 코드를 수정하는 등의 귀한 경험을 얻을 수 있다고 생각합니다.
마치며
오픈소스 프로젝트를 경험하는 것은 개발의 연차에 상관 없이 중요하고 유의미한 성장을 위한 거름이라고 생각합니다. 또한, 나의 기여로 인하여 수많은 사람들에게 더 좋은 기능과 정보를 제공한다는 뿌듯함은 말로 설명할 수 없을만큼 큽니다.
다른 개발자와의 커뮤니케이션이 필요하다면 오픈소스 기여에 도전해보는 것은 어떨까요?
'회고록' 카테고리의 다른 글
[Intern] 2023 CONCAT Flutter Developer 인턴 회고 (0) | 2024.05.30 |
---|---|
[Intern] 2023 Lablup Front-end Engineer 인턴 회고 (2) | 2024.02.28 |