열심히 채용 공고를 보며 이력서를 넣고 떨어지기를 반복하던 날...
같이 프로젝트를 진행했던 분을 통해서 "메멘토에이아이(이하 '메멘토')"라는 회사에서 채용 전환형 인턴 공고가 올라왔다는 것을 듣게 되었다.
8월에 소집 해제하기 전에 과제를 합격해 면접을 봤던 곳인데, 떨어졌었지만 2년 차 개발자 분이 프론트엔드 리드를 하고 있다는 것과 질문의 내용들이 나쁘지 않았던 기억이 있어서 인턴을 해봐야겠다고 생각했고 지원을 했다.
꽤 빠르게 전형이 진행이 되었다.
지원을 하고 일주일 내에 관계자분께 연락이 왔고, 코딩 테스트를 진행하게 되었다.
코딩 테스트는 가장 작은 수 제거와 문자열 내림차순 정렬이었다.
난이도는 자바스크립트를 공부해 봤다면 모두가 풀 수 있을 정도로 "극하"의 난이도였다.
그 후에 인터뷰를 진행하게 되었고 메멘토의 관계자분이 아닌 "이브레인"이라는 회사의 관계자분과 인터뷰를 진행했다.
메멘토 회사의 관계자가 아니고 이브레인이라는 회사의 관계자분과 인터뷰를 보게 되어서 의아해하고 있었는데 아니나 다를까 인터뷰하시는 분이 채용 과정에 대해서 설명을 해주셨다.
이브레인이라는 회사는 다른 회사로부터 요청을 받아 채용 과정을 대신해 주는 회사였고 그래서 이브레인 회사 관계자분들이 과제와 인터뷰를 진행했던 것이었다.
그때 이해가 되었고 인터뷰를 진행하면서 같이 일을 하실 분이 아니라는 생각이 들어서 그런지 편하게 인터뷰를 진행했던 것 같다.
합격 연락을 받고, 너무 쉬운 코딩 테스트와 인성 면접을 통해서만 뽑았기 때문에 회사에 대한 의심이 들었다.
인턴을 15명을 뽑는다는 이야기를 들었고, '기술 면접도 보지 않고 어떻게 개발자를 뽑아서 회사의 일을 맡길 수 있을까?'라는 의심을 하며 이브레인 회사에서 이브레인 관계자분들과 인턴 미팅을 하게 되었다.
미팅이라는 이름이지만 사실은 회식에 가까운 만남이었고 식사를 하며 자기소개와 궁금한 부분들을 여쭤보는 시간이었다.
이때 메멘토 대표님이 가진 생각과 왜 이렇게 뽑게 되었는지 어느 정도 궁금증은 해소가 되었고 이상한 회사는 아니겠다는 생각을 했다.
10월 초 시작 날짜에 맞춰서 다 같이 출근을 했고, 스타트업에서 인턴 15명은 상상해 보지 못했던 인원이어서 그런지 웃기기도 했다.
첫날은 회사에 대한 설명과 우리가 어떤 업무를 맡게 될지 설명을 듣고 계약서를 쓰면서 하루를 보냈다.
처음에 회사에 인턴으로 들어가면서 기대했던 부분은 회사의 실무 코드를 볼 수 있고, 어떤 식으로 코드가 작성되어 있고 어떻게 폴더 구조가 만들어져 있는지, 어떻게 배포하고 관리하는지 등에 대한 궁금증을 해소할 수 있을 것이라고 생각했다.
그러나 우리가 처음 맡게 된 업무는 "직원 관리 시스템"을 새로 개발하는 일이었다.
기존에 만들어져있던 직원 관리 시스템을 리뉴얼하는 일이었는데, 팀을 나눠 기능을 나눠서 개발하게 되었다.
회사의 개발자분들은 스크럼만 참여하시고 실제 개발에는 참여하지 않으셔서 인턴끼리 프로젝트를 진행하는 것이었고 부트 캠프에서 진행하던 프로젝트 느낌이 났던 게 사실이다.
그래도 인턴이지만 실력 있는 개발자분들과 제로부터 프로젝트를 만들게 되면서 초기에 프로젝트 구조를 어떻게 설계할지, 어떤 컨벤션을 가지고 개발할지 고민하면서 설계 구조와 레포지토리 관리 방식에 대해서도 고민을 할 수 있는 좋은 기회였던 것 같다.
그 후에는 1달 안에 하나의 서비스를 만들기 위해 열심히 기능을 정의하고 개발했던 것 같다.
정보처리기사 시험 준비와 함께 개발을 하다 보니 시간이 부족했고 8시 출근 10시 퇴근하면서 힘들었지만 '젊을 때 고생하자'라는 생각을 가지고 있어 이겨낼 수 있었던 것 같다.

회의를 하기 위해 찾아보고 고민했던 것, 이제 여유가 있으니 좀 더 공부하고 정리해봐야겠다.

어느정도 퍼블리싱이 완료된 후에 api 별 응답, 요청 값을 정의한 스키마들
-> 백엔드가 부족해 조금이라도 도움이 되려고 만들어두었다.
해결했던 axios 트러블
axios 트러블 슈팅
3주 차에 들어설 때 2기 인턴 분들이 회사에 들어오셨고 지금까지 진행했던 직원관리 시스템이 아닌 회사의 실무인 CRM 시스템으로 투입되게 되었다.
'코드 구조나 퀄리티보다는 빠르게 개발을 하고 나중에 리팩토링을 해야지'라고 생각하면서 개발을 해서 프로젝트를 이어서 하게 될 2기 인턴 분들에게 약간 (아니 사실은 크게) 미안한 마음이 들었었다.
실무에서는 빠른 시일 내에 배포가 이루어져야 하는데 덜 개발된 기능들이 있어서 투입되는 것 같았고, 큰 기능은 아니고 페이지의 필요한 기능이나 부족했던 기능을 개발하게 되었다.
기능 자체를 개발하는 데에는 크게 어려움이 없었지만 코드를 보면서 어떤 식으로 동작하고 컨벤션에 맞춰 코드를 짜야 하는 부분이 더 어렵게 다가왔던 것 같다.

사실 위 사진처럼 하나의 기능을 위해 컴포넌트를 모두 개발했었는데 확인해보니 기존에 비슷하게 사용하던 컴포넌트가 있어서 그 컴포넌트를 사용했던...
그렇지만 그 컴포넌트도 내가 쓰려던 곳에서 사용하려니 문제가 있었던...
4주 차와 5주 차는 직원들이 서비스를 사용해 보고 QA를 작성해 줘서 QA 해결이라는 작업을 맡게 되었다.
CRM 프로젝트의 기능과 디자인 등의 QA에 대해서 90퍼센트 정도 내가 해결을 했다..!
(그만큼 다른 곳에서도 QA 들어온 게 많아서 다른 개발자분들이 다른 곳을 해결하느라 내가 거의 다 한 듯..)
QA를 해결하면서 새로 개발하는 기능이 아닌 기존의 코드를 보면서 수정을 해야 되었기 때문에 좀 더 자세히 코드를 들여다보게 되었다.
보면서 내 생각에 공통 컴포넌트로 개발하기 어려울 것 같은 부분이 공통 컴포넌트로 잘 짜여 있는 경우도 있었고 공통 컴포넌트인데 내부에 로직이 있어 공통 컴포넌트로 사용되기 어려울 것 같은 경우도 있었다.
로직을 수정하면서 다른 사람이 짠 코드를 확인하고 분석해서 기능을 수정하는 경험은 처음이었는데, 회사 가면 이런 작업들이 많을 것으로 예상돼서 정말 좋은 경험이었다고 생각을 한다.
모두가 완벽한 실력은 아니지만 건강한 생각과 서로 받아들이려는 마음을 가진 좋은 인턴 팀원들과 회사 경험을 할 수 있어서 좋은 경험이었다.
전환이 이루어지지는 않았지만 회사에서 어떻게 작업을 하고 어떤 식으로 회의를 하고 개발 방향과 서비스 방향을 잡아 나가는지 알 수 있었다.
가장 크게 느낀 점은 개발자도 서비스를 만드는 직군 중 하나일 뿐이며, 기술을 가지고 있더라도 먼저 회사의 서비스에 대해 정확히 이해하고 불편한 점과 필요한 점을 잘 파악하는 것이 중요하다고 느꼈다.
서비스에 대해 이해하고 기능을 개발하면서 사용자 경험을 생각하는 것과, 단순히 기획자가 "이런 기능 만들어줘"해서 기능을 만들어 내는 것과는 큰 차이가 있다는 것을 이번 인턴 생활을 하면서 느꼈던 것 같다.
모두가 열정을 가지고 열심히 달렸던 한 달이었는데 나에게도 좋은 자극이 되었고 또 취업 준비를 하는데 동기부여가 될 것 같다.
아, 또 느꼈던 것은 식대 15,000원과 야근 식대가 나오는 것은 크다..
'일을 하는 데에 보상이 중요하구나' 라는 것도 크게 느꼈다..!
경택님 초반에는 같이 개발을 할 수 있어 정말 영광이었습니다.
경택님이 코드리뷰를 열심히 해주시는 모습을 보고 “ 저사람은 개발에 대한 의지와 열정이 가득하구나” 느꼈습니다. 더더욱이나 정처기 시험도 준비하면서 이 프로젝트를 진행하는 게 말이 안됐는데 .. 경택님을 보면서 저 사람처럼 더 열심히 해야지 하는 원동력이 됐습니다. 그래서 저도 코드는 많이 짜진 않았지만, 다른 사람 코드 리뷰 한 것도 보고 모르는 게 생기면 찾아보고도 했던 것 같아요
기획을 하면서 질문을 많이 해주셨던 분도 경택님이셨는데 덕분에 제품에 문제를 우선적으로 어떻게 접근해야하는지 고민도 많이 할 수 있었어요.
1기가 피쳐로 넘어가게 되면서 더이상 접점이 없어 너무 아쉬웠지만, 가끔 서포트로 도와주실 때마다 정말 감사했습니다🌸
형 담에 한잔해~ 그땐 안봐줘
프로덕트까지 생각하는 개발자로 성장하셨군요!! 늦게까지 정처기 실기 공부를 하는 모습이 대단하다고 느꼈슴다 코드리뷰 제일 열심히 해준 동료 KT 덕분에 좋은 영향 많이 받았고, 고마웠습니다~!~!