지원 과정
국민대학교 SW중심대학사업단에서 진행하는 "국민대학교 2023 하계 인턴 프로그램"을 통하여 래블업(Lablup)을 처음 알게 되었고 인턴십을 통하여 실무에서의 프론트엔드 개발자의 역할 그리고 갖추어야 할 자세를 배우고자 지원하게 되었다.
매칭은 프로그래머스를 통하여 1. 서류 제출 -> 2. 면접 -> 3. 최종 합격 -> 4. 인턴십 시작 순으로 진행되었다.
면접은 이력서에 기재한 사이드 프로젝트와 React 관련 기술 질문을 바탕으로 약 50분 가량 진행되었다.
![]() |
![]() |
면접 하루 뒤 인턴십 최종 합격 소식을 전달 받을 수 있었고 우연한 기회로 첫 인턴 생활을 시작할 수 있게 되었다.
인턴 온보딩 기간
래블업에서 첫 1, 2주는 온보딩 기간으로 크게 2가지 작업을 진행하였다. 첫 번째로는 토이 프로젝트(single-room / multi-user / real-time 기능을 가진 web chat app 만들기)였으며 두 번째로는 backend.ai 세팅 및 설치였다.
토이 프로젝트를 통하여 aiohttp, redis-py, docker 등 실제 래블업 내에서 사용하는 기술 스택과 라이브러리과 익숙해지는 시간을 가지며 backend.ai 기여를 위한 준비를 할 수 있었으며 다른 인턴분들의 도움을 통하여 성공적으로 마무리 할 수 있었다.
https://github.com/Choi-Jiwon-38/2023_lablup_toy_project
GitHub - Choi-Jiwon-38/2023_lablup_toy_project: [2023-1 Lablup Internship Toy Project] multi-user single-room realtime webchat a
[2023-1 Lablup Internship Toy Project] multi-user single-room realtime webchat app - Choi-Jiwon-38/2023_lablup_toy_project
github.com
또한, 프로젝트가 끝난 뒤에는 본격적으로 backend.ai, backend.ai-webui 의 구조를 파악하고 이를 발표하는 시간을 가지게 되었다. 규모가 있는 프로젝트이다 보니 같이 인턴십을 진행한 3명의 인턴분들과 backend.ai를 구성하는 컴포넌트를 하나 둘 나누어서 분석하고, 발표를 통하여 전체 구조를 공유하는 시간을 가질 수 있었다.
backend.ai 기여 시작
backend.ai의 전체적인 구조를 어느 정도 알게 되고 관련 기술 스택을 토이 프로젝트로 연습하였지만 나의 코드를 통하여 무언가를 기여한다는 것은 생각보다 어려웠다. 인턴십을 끝날 동안 '만약에 하나의 contribute를 남기지 못하면 어쩌지?'라는 고민을 달고 살았던 것 같지만 돌이켜 생각해보면 온전히 나의 힘은 아니어도 결국 해낼 수 있었던 것 같다.
backend.ai와 backend.ai-webui에 기여한 태스크를 정리하면 아래와 같다.
backend.ai | https://github.com/lablup/backend.ai/commits?author=Choi-Jiwon-38
backend.ai-webui | https://github.com/lablup/backend.ai-webui/commits?author=Choi-Jiwon-38
프론트엔드 개발자로 인턴십을 진행한 만큼 webui에 조금 더 많은 기여를 하였다.
backend.ai-webui는 기존 Lit-html 코드를 React 코드 베이스로 이관 중인 상황이었으며 Craco를 통하여 React Proxy 서버를 구축하여 기존 컴포넌트 서빙 용도로만 사용되던 React 서버를 메인 Web dev server로 사용할 수 있도록 변경하였다.
이외에는 i18n 스캔 타켓을 수정, React 컴포넌트 개발, Typo 수정, UI 인터랙션 오동작 수정 등의 작업을 추가로 진행하였다.
Lablup 인턴십 후기
처음 인턴을 시작하였을 때는 나에게 할당 받은 일들을 모두 완벽하게 해내고 싶었지만 그렇지 못하였다. 단 한 줄의 코드를 짜지 못한 적도 있었고 이슈 자체를 잘못 이해하여 며칠 간 작성한 모든 코드를 지워야할 때도 있었다. 또한 온보딩 기간 동안 backend.ai 전체적인 구조를 파악하면서 작성된 코드와 관련 개념을 이해하는 것조차 버겁기도 했었다.
어려움에 직면할 때마다 스스로 고민하는 시간을 많이 갖곤 하였는데 래블업의 팀 문화를 보며 생각이 바뀌게 되었다. 다들 개발하면서 직면한 문제, 그리고 그것을 해결하기 위한 과정(a.k.a 삽질)을 스레드에 줄줄이 적어두고 다른 개발자분들께서 마치 자신의 일처럼 같이 고민하는 모습을 보게 되었다.
나 역시 '부족함을 숨기는 것보다는 드러내고 질문을 통하여 하나 더 배워가자!'라는 새로운 자세를 얻어갈 수 있었다. 특히 할당받은 issue를 해결하는 과정에서 받게 된 코드 리뷰들이 그 당시에도, 그리고 지금의 나에게도 많은 도움이 되었다. 나 역시 개발자로서 한 발자국 더 성장하게 된다면 다른 개발자에게 좋은 코드 리뷰를 남겨야겠다는 작은 다짐도 하였다.
두 달이라는 시간이 소중했던 만큼 짧게 느껴졌다. 아침에 일어나 출근하는 게 익숙해지기 시작하자마자 마무리를 해야하는 것이 많이 아쉬웠던 것 같다. 어느 기회로든 더 나은 개발자로 성장하고 다시 뵐 날을 생각하며 더욱 열심히 개발해야겠다고 느꼈다.
'회고록' 카테고리의 다른 글
오픈소스 기여의 첫 발걸음 (0) | 2024.11.20 |
---|---|
[Intern] 2023 CONCAT Flutter Developer 인턴 회고 (0) | 2024.05.30 |