본문 바로가기
Essay

웹 백엔드 개발자가 되기 위한 성장통

by YIAN 2021. 8. 11.

 

 

길다면 긴, 짧다면 짧을 인턴생활이 드디어 끝이 났다. 지난 3개월간의 이야기를 인제야 정리하게 되었다. 기나긴 고민 끝에 원고를 지웠다가 썼다 하면서 글을 작성해보았다.



👧 이야기를 시작하기 전에

 

늘 그렇듯이 글쓰기에서 첫 문장을 적는 것이 가장 어렵다. 처음에는 어떤 글을 남긴다는 것이 너무 부담되어서, 당분간 글을 쓰지 않으려 했다. 지난번에 작성했던 글인 깃허브 잔디심기 - 6개월간 회고록이 많은 관심을 받았던 점에 대해서는 독자분들께 감사하게 생각한다. 내가 쓴 글을 보는 사람들은 나의 지인일 수도, 채용담당자일 수도, 미래에 함께 일할 동료일 수도 있다는 사실을 일깨워주었다. 시간이 지날수록 나의 인생에서 이 시점에 느낀 것들과 떠오르는 생각들은 다시 돌아오지 않으리라고 생각하기 때문에 글로 남기게 되었다. 그래야 나중에 지원하는 사람들이나 지금의 나와 같은 주니어 개발자에게 정보공유가 되지 않을까 한다. 사실 사원증이 나왔을 때 몇 글자 적어두기 시작해서 작성해왔던 글에 살을 붙이는 글이다. 정보공유보다는 경험담에 가까운 글이라 볼 수 있다. 어찌 보면 회고록이라고 할 수 있는 글이지만 '회고록'이라는 단어는 개발자들 사이에서 너무 흔한 단어라고 느껴지기 때문에 '성장통'이라고 표현하겠다.

 

우리 본부에서는 매주 도서구매 신청이 가능함



💪 시스템개발자로 도전

시스템 개발자라 쓰고 웹 백엔드 개발자라 읽는다

 

입사하기까지의 이야기를 잠깐 해보겠다. 그러니까, 개발자로 근무한 경험이 전혀 없는 상태에서는 개발자로서의 정체성에 혼란을 겪었다. 컴퓨터공학의 분야는 넓디넓은데 어느 분야로 가야 할지 고민이 많았다. 대학생 때부터 관심 있었고 그동안 준비해왔던 것들은 안드로이드 개발 쪽이었다. 학부 때 가장 익숙했던 분야여서 선호했던 것 같다. 매년 느끼지만 취업의 벽은 항상 높았고, 코딩테스트와 실무면접으로 지쳐갈 무렵이었다. 우연히 웹 개발 채용공고를 보게 되었고 내가 받은 직업훈련 교육이 웹 개발 쪽이었기 때문에 적극적으로 활용해보고자 했다. 나에겐 나름 새로운 도전이었던 셈이다.



📄 서류전형

 

체험형 인턴을 모집하는 공고였기 때문이었는지 이상한 확신이 들었다. 작년에 채용 이슈가 있었고, 체험형 인턴이기 때문에 지원자가 적을 것이라 생각이 들었다. 기술 스택도 내가 할 수 있는 것들 위주였기 때문에 여기에 지원하지 않으면 안 될 것 같았다. Google Study Jam을 통해 Cloud에 관해 공부하고 GCP로 Docker와 Kubernetes를 다뤄봤던 경험도 한몫했다.

 

지원분야 담당업무 자격요견 및 우대사항
시스템개발 - 게임내 Admin Tool 개발
- Cloud Migration 개발 지원
[자격요건]
- Java Spring을 이용해 개발이 가능한 분
- Micro Service Architecture에 관심이 있는 분
- JavaScript 및 관련 라이브러리 이용 가능한 분
- Cloud 및 Container 서비스에 대한 이해가 있는 분
- Database를 이용한 개발 경험이 있는 분

[우대사항]
- 컴퓨터공학 관련 전공자
- 영문으로 작성된 문서를 읽는데 어려움이 없는 분



👩‍💻 면접전형

 

결론부터 말하자면, 면접은 망했다. 그렇지만 끝까지 미소를 지으려고 노력했던 것 같다. Github 주소를 요구하는 회사가 많았으므로 지금까지 포트폴리오를 따로 작성하지 않았었다. 그러다 보니 면접 질문은 주로 Github에서 받았다. 생각나는 질문은 Repository가 다양한 이유나 내가 해봤던 프로젝트, 다뤄본 VCS, 그리고 전공 질문 위주였다. 실무면접이고 웹 백엔드 개발자이다 보니 전공 질문은 자료구조, 알고리즘, Java와 Spring, 웹 기초 지식에 관한 것이었다. 가장 어려웠던 질문은 웹에 대한 것이었다. HTTP 동작 과정에 대한 질문이었는데, 기억이 날 듯 말 듯하면서 대답을 하지 못했기 때문에 마음속으로는 K.O 상태였다.

 

면접은 4:2로 진행되었는데, 내 옆 지원자는 스타트업을 다닌 경력자여서 어떤 문제가 있었고 어떻게 해결했는지 줄기차게 질문을 받았다. 공격 질문에도 어딘가 우울해 보이는 목소리로 침착하게 답변을 했던 그 지원자를 보면서 나중에 나의 모습이 될 수도 있겠구나 생각하니 덩달아 긴장이 되었다.
면접이 끝나고 집에 가면서 '아 이렇게 대답했어야 했는데', '아 쉬운 거였는데'하면서 몇 번이나 후회가 되었다. 내 느낌상 면접은 좀 더 잘 대답할 수 있었는데 그러지 못했고, 어려웠고, 망했다고 생각했다.



🙌 최종결과

 

아직도 기억이 난다. 면접을 보고 온 그 날 저녁 8시에 바로 면접결과 연락이 왔다. 떨어질 것으로 생각했는데 합격이라니! 뛸 듯이 기뻤다. 한편으론 설렘 반 걱정 반으로 입사 전까지 부리나케 공부할 수밖에 없는 상황이 되었다. 면접 때부터 안내받았던 내용상, 체험형 인턴이었지만 수료가 될 수도, 계약이 연장될 수도, 정규직 전환이 될 수도 있다는 것이었다. 그렇게 인턴생활이 시작됐다.



🎭 좌충우돌 인턴생활

 

아~ 선생님 이래서 게시판을 10번은 만들어보라고 하셨군요

 

🎤 입사 첫 날의 소감

 

입사 첫날 받았던 것들

 

입사 첫날이 엊그제였던 것처럼 기억이 생생하다. 첫날은 온종일 오리엔테이션 및 교육을 받았다. 오후 5시가 돼서야 배정된 팀으로 이동했다. 특이하게도 우리 팀에 인턴은 나까지 2명이었다. 실장님, 팀장님, 사수님, 팀원분들 소개를 받고 나서야 출근이 실감이 났었다.



🌊 Spring Boot의 바다에서 허우적

 

습관 설계로 진행했던 개발일지 작성하기

 

영업비밀이 포함된 내용이 있을 것 같아, 업무에 관한 이야기는 많이 생략하려고 한다. 인턴십 과제로 Spring Boot을 이용한 게시판 서비스 개발을 담당하게 되었다. 기술 스택은 주로 Spring Boot, Java, Pebble이었고, 익숙한 것을 사용해도 된다는 규정이 있어서 MySQL, MyBatis, HTML5, CSS3, JavaScript를 사용했다. 요구사항은 Step 1~3까지 있었으며, Spring Framework는 배웠지만 사실 많이 사용해보지는 않았던 터라 Spring Boot을 처음 다뤄보면서 시행착오를 겪었다. 불행히도 약 한 달 반가량을 과제를 하는 데 보냈다. 돌이켜보면 이 과정에서 체험형 인턴으로 수료할 수밖에 없었나 싶다.

 

입사했을 당시 내 자리 프로젝트 관련 메모

 

최근에 깨닫게 된 게 있다면, 나에게 무의식적으로 완벽주의 성향과 집요한 면이 있다는 것을 알게 되었다. 인턴십 과제를 하면서 잘 안 풀리는 게 있으면 끝까지 물고 늘어지다가 결국 풀거나 포기하거나 둘 중 하나였다. 솔직히 간단하게 구현할 수 있는데 개인적인 욕심으로 자꾸 질을 높이고 싶어졌다. 머릿속으로 큰 그림을 그려가며 규모를 넓혀가게 되어서 일정이 늦어지는 사태가 발생했다. 같은 팀 동기와 비교하면 4일이나 늦어진 상황이었는데, 한 편으로는 막히는 부분을 어느 정도 이해하고 넘어가고 싶어서 깊게 생각해보게 되는 것 같다. 크고 작은 프로젝트를 해본 경험상 그냥 돌아가는 코드가 아닌 원리를 이해하며 짜는 코드가 나중에 문제가 생겼을 때 수정하기 편하다는 점을 절실히 느낀 탓일 것이다. 제한된 일정을 맞추고 개발속도를 높이고 싶다면 어느 정도 포기할 줄 아는 미덕을 지녀야겠다고 다짐했다.

 

그다음에 맡았던 실무는 자사게임 내 Admin Tool 리뉴얼 작업이었는데, 때마침 COVID-19가 유행하는 바람에 재택근무를 하게 되었다. 입사하고 이제 막 무언가를 시작하려고 하는 찰나에 한 달 이상을 재택근무로 보낼 수밖에 없는 상황이 매우 아쉬웠다.

 

나인 듯 아닌 듯 사원증



👭👫👬 동기사랑 나라사랑

 

가끔 동기들과 커피타임 쏘야 님이 그려주신 나

 

인턴생활에서 빼놓을 수 없는 추억 중 하나는 동기들과 함께 한 시간이었다. 신입사원 채용시장에서 많은 이들이 공채에 도전하고 다시 올드루키가 되는 이유 중 하나가 동기들 때문인 경우가 많다. 실제로 내가 느끼기에도 함께 입사한 동기가 있다는 것이 사회생활을 할 때 심적인 안정감과 끈끈한 소속감을 주었다. 때론 비교 대상이나 선의의 경쟁자가 되기도 했지만 말이다.

 

나를 포함해서 함께 입사한 동기들은 13명이었다. 동기들 사이에서는 함께 도와줄 부기장도 따로 뽑았고, 기장으로 활동했다. 나와 함께 해준 부기장에게 고맙고, 동기 모임 때 함께 해준 동기들에게도 고마웠다. 동기 중에는 인재들이 많았고 정보공유가 활발해서 새로운 것들을 알게 되었다. 인턴십이 종료되고 일부는 떠나고, 일부는 남았다.



🙇‍♀️ 이야기를 마무리하며

 

모르는 내용이나 막히는 부분이 있으면 삽질하기보다 바로바로 질문하도록 분위기가 조성돼있었다. 그래서 호기심 많은 내가 배우고 일하기엔 좋은 환경이었지만 아무래도 신입에 대한 기대치가 높다 보니 나와는 잘 안 맞았던 모양이었다. 실장님, 팀장님, 사수님 1:1 면담을 진행하면서 피드백과 조언을 받았다. 여기서 다 적을 순 없지만 분명 피가 되고 살이 되는 것들이었다.

 

사실 이제 와 고백하자면 '이런 걸 물어봐도 될까? 질문 수준 때문에 실망하시면 어쩌지?'라는 생각을 가장 많이 했었다. 지금 생각해보니 소극적인 면이 있었다. 만약 다시 시간을 돌려 입사 첫날로 돌아간다면, 좀 더 적극적이고 공부를 더 많이 하지 않았을까 싶다. 나도 언젠가 사수가 되고 부사수가 생길 텐데, 이번 경험을 토대로 내가 사수라면 어떻게 할까? 곱씹어보게 되는 계기가 되었다.

 

퇴사하던 날 찍은 판교의 봄날 벚꽃 풍경

 

이번 성장통이 나에겐 뼈저리게 다가온 경험이었다. 사실 퇴사하고 2주 동안은 정말 아무것도 하고 싶지 않았지만 웹 백엔드 개발자로의 진로를 정해둔 상태여서 계속해서 부족한 점을 보완하고 노력해나가고자 한다. 어떤 일을 하든 항상 이 2가지를 생각하면서 업무에 임하려고 하고, 앞으로도 그럴 것이다.

 

이 일을 왜 해야 하는가? (Why)
이 일을 어떻게 해야 하는가? (How)

 

끝으로, Facebook 설립자이자 CEO인 마크 주커버그(Mark Elliot Zuckerberg)의 말을 인용하는 것으로 글을 마친다.

 

Let me tell you a secret.
No one does when they begin.
Ideas don't come out fully formed.
They only become clear as you work on them.
You just have to get started.

Mark Elliot Zuckerberg




참고사항

이 글은 2020년 5월 24일에 작성된 글입니다. 기존 URL은 https://chanmi-kim.github.io/Devlog/Essay/2020/05/24/2020-NWZ-Internship 이며, 현재 접속이 불가능합니다. 원글은 마크다운 문법으로 작성되었으며, 개명 이전에 작성한 글입니다. 참고 부탁드립니다.

 

 

댓글

P.S. DISQUS 계정을 잊어버려서 대댓글을 못 달아드렸네요...ㅠㅠ 긴 글 읽어주셔서 감사합니다! :D

 

 


 

💌 다음 글

Level 1 가짜 개발자 (https://yian.tistory.com/42)

 

Level 1 가짜 개발자

갑자기 '가짜 개발자'라니? 무슨 이야기인가 싶어서 들어오셨다면 당근을 흔들어 주세요. 제목에서 '가짜 개발자'는 2020년에 인터넷 방송계에서 선풍적인 인기를 몰았던 진짜 사나이와 가짜 사

yian.tistory.com

 

 

댓글