왜 이 인턴십을 하게 되었는가
23년 겨울부터 학교 부트캠프를 수강하며 정규학기 이후에도 수업을 들으며 바쁘게 지냈다. 여름방학에는 ‘신차 검수 전문가 매칭 플랫폼’을 주제로, 기업 주관의 팀 프로젝트에 프론트엔드로 참여했다. 총 4명의 팀원 중 프론트를 담당한 사람은 나 혼자였고, 약 7주 동안 모든 화면을 구현해야 했다. 기한이 있는 프로젝트였기 때문에 퍼블리싱을 우선적으로 진행했고, 알고리즘 로직 구현에 익숙하지 않아 AI의 도움도 많이 받았다. 아쉬웠던 점은 촉박한 기간만큼 비즈니스 로직을 충분히 고민하며 직접 구현하지 못했다는 것이지만, 퍼블리싱만큼은 원하는대로 구현해낼 수 있겠다는 자신감을 얻을 수 있었다.
그러던 중 우연히 ICT 학점연계 인턴십을 알게 되었고, 학점·급여·실무 경험까지 가능한 인턴십이라는 점에 끌려 지원하게 되었다. 떨어져도 괜찮으니 지원에 의의를 두자는 마음가짐으로 방치해뒀던 포트폴리오를 정비했고, 총 3곳에 지원한 결과 한 곳에서 면접 제안을 받았다. 첫 면접이라 준비가 부족했지만 아는 만큼 대답하고 모르는 건 솔직하게 인정하는 태도로 임했고, 감사하게도 합격할 수 있었다.
기술적으로 많이 부족했음에도 뽑힐 수 있었던 건 내가 운이 좋았기 때문이 아닐까...!
인턴십에서 가장 기대했던 건 실무 경험을 통해 기술적으로 성장하는 것이었다. 이전 프로젝트에서는 함께 고민할 동료가 없어 어려운 로직을 AI에 의존할 수밖에 없었고, 실질적인 성장을 체감하기 어려웠다. 다행히 인턴십에서는 CTO님께서 “궁금한 것이 있으면 사수님이든, 프론트엔드 리드든, 심지어 본인이든 도와줄 수 있으니 적극적으로 물어보라”고 조언해주셨다. 그 말에 힘입어, 지치도록 찾아보다가도 사수님께 질문하러 가곤 했다. 혼자 고통받기도 하고, 설명을 읽어도 이해가 안 돼서 나 자신에게 실망한 날도 많았다. 하지만 덕분에 더 많이 배울 수 있었다!
처음으로 출퇴근하며 일하는 삶을 체험해본 것도 신선한 경험이었다!
어떤 업무를 했고, 무엇을 배웠는가
🎵 오디오 플레이어 마이그레이션 (Vue → React)
처음으로 맡은 작업은 Vue로 작성된 오디오 플레이어를 React로 리뉴얼하는 일이었다. 처음 접하는 Vue 코드였지만 구조를 참고해 React로 기능을 옮기고, 음소거 아이콘 위치, 타임라인 디자인 등 UI 개선도 함께 진행했다.
노래1을 틀다가 노래2를 틀었는데도 계속 노래1이 나오는 현상, 10초 되감기 버튼을 눌러도 반응하지 않고 노래기 계속 나오는 에러도 나고 .. 재생 오류, 클릭 이벤트 무반응 등 다양한 버그를 겪었고, AI의 도움과 동료 개발자의 코드 리뷰를 통해 문제점을 찾아내면서 결국 모든 기능이 정상 작동하도록 마무리할 수 있었다.

📺 투표 전광판 퍼블리싱
사수님의 초기 코드를 기반으로 전광판 UI를 반응형으로 구현했다. 디자이너 없이 기존 사이트를 참고해 화면을 구성했고, 5초마다 데이터 갱신되도록 자동 새로고침 기능도 추가했다.
이 전광판은 실제 연말 가요대제전에 사용될 예정이었지만 무산되었고, 그럼에도 재미있고 의미 있는 작업이었다. 디자이너 없이 사용자 경험을 고려하며 화면을 구성하느라 머리를 부여잡는 내 모습을 본 사수님은 “디발자(디자이너 + 개발자)”라는 별명을 붙여주시며 응원해주셨다!

🎫 빅크패스 화면 구현
이번 작업부터는 디자이너와 협업해 빅크패스 QR 화면을 구현했다. 빅크패스 사용 조건에 따라(사용 가능 / 사용 완료 / 기간 만료) 각기 다른 화면이 출력되도록 조건 분기 처리에 집중했다. 이 또한 초기 코드를 받아 작업한 퍼블리싱 위주의 작업이었지만, 디자인을 실제 화면에 구현해가는 재미가 있었다. 디자이너분과 이유 있는 설계를 함께 고민하며 개발 난이도와 재사용성까지 고려할 수 있었고, 협업의 즐거움도 느낄 수 있었다.
![]() | ![]() | ![]() |
🗳 유료 투표 프로젝트
이번 인턴십의 메인 프로젝트라 할 수 있는 유료 투표 웹앱 작업이다. 2024 한터뮤직어워즈에서 실제 사용될 서비스로, 퍼블리싱뿐 아니라 일부 로직 구현도 맡았다. 젬스토어 구매/충전 화면의 리디자인도 맡았고, 1px 단위까지 신경 써서 작업했다.
- 투표 상태(예정/진행/종료)에 따라 다른 UI 렌더링
- 무료/유료, 로열젬/빅크젬에 따른 복잡한 조건 처리
- 기획자와 긴밀히 소통하며 동작 조건 명확히 정리
특히 투표 임베드 위젯 컴포넌트는 처음부터 끝까지 내가 구현한 부분이라 가장 기억에 남는다. 실제 서비스로 출시된 작업물에 친구들과 함께 직접 투표도 해보고, 반응도 확인할 수 있었던 것이 가장 뿌듯했다.
🔁 2회차 인턴: 팬덤 플랫폼 리뉴얼
감사하게도, 인턴 종료 후 2개월 뒤에 계약직 제안을 받아 2회차 인턴으로 재입사하게 되었다. 계약직으로 복귀한 후엔 TF팀에서 마이페이지를 담당하며 팬덤 플랫폼 리뉴얼 프로젝트에 참여했다. 기존 서비스와 전혀 다른 구조와 디자인이 적용된 프로젝트였고, Next.js 기반으로 구조를 정리하고 초기 설정 작업에도 참여했다.
자세한 작업 내용은 하단의 글에서 확인할 수 있다:
어떤 점에서 성장했는가
- UI 구현 능력 향상: 단순 퍼블리싱을 넘어, 조건에 따른 분기 처리와 반응형 대응, 컴포넌트 재사용성을 고려한 설계를 경험할 수 있었다.
- 협업 소통 능력: 디자이너, 기획자, 백엔드와 긴밀히 소통하며 적극적으로 의견을 주고받는 자세를 체득했다.
- 실제 배포 경험: 유저가 직접 사용하는 서비스를 구현하며 서비스 품질에 대한 책임감을 가지게 되었다.
아쉬웠던 점이 있다면?
기술에 대한 이해도가 부족한 상태에서도 주어진 기간 내에 작업을 끝내야 한다는 압박감 때문에,
왜 이 기술을 써야 하는지, 더 적합한 방법은 없는지, 지금의 이해도는 충분한지 등을 충분히 고민하지 못했다.
인턴십 이후의 변화
인턴십을 통해 기술적인 성장뿐만 아니라 협업과 커뮤니케이션 측면에서도 많은 것을 배웠다. UI/UX를 고려한 퍼블리싱, 실서비스 기반 로직 처리 경험을 통해 프론트엔드 개발자로서 더 나아가야 할 방향이 명확해졌다.
이제는 구조 설계, 상태 관리, 사용자 경험 등 프론트엔드 전반에 걸친 역량을 깊이 있게 다듬고 싶다.
특히 "왜 이 기술을 선택했는가?"를 끊임없이 고민하며, 상황에 가장 적합한 기술을 도입하고
그 이유와 장단점을 논리적으로 설명할 수 있는 개발자로 성장하는 것이 목표다.