될때까지

위코드 3개월 회고록 본문

속마음

위코드 3개월 회고록

랖니 2022. 9. 13. 20:27
728x90

🎁 개발 입문 계기 및 개발자가 되고 싶은 이유?

개발 입문계기를 누가 묻는다면 나는 항상 성장에 대한 목마름과 재미라고 말했다.

전에 다니던 회사는 비교적 안정적이였다. 하지만 똑같은 자리에 멈춰 아무 발전이 없는 내 자신이 싫었기에 회사를 다니면서 계속 폴댄스, 포토샵,헬스, 엑셀, 중국어, 영어를 배우러 다녔다. 그당시 블로그도 운영하고 있었는데 블로그 이웃이 개발을 공부한다는 이야기를 들었다. 개발을 아무나 할수있냐 물어봤는데 누구나 배울 수 있고 재밌다는 말에 호기심이 생겼다. 웹개발, 앱개발 중에 나는 앱 개발이 궁금했고 학원을 검색하다가 '넵플러스'를 알게되었다. 그렇게 정말 단순한 호기심으로 2달간 주말반을 다니게 되었고, 그렇게 나의 첫 발을 디디게 되었다.

작년 3월부터 코틀린, 자바, 파이썬(물론 이때는 가볍게 취미로 듣긴 했지만)을 배웠고 작년 12월 파이썬 백엔드 과정을 수료하고 나니까 욕심이 생겼다. 그리고 더욱 더 '재미'에 확신했다. 나는 재미라는 단어를 정말 좋아한다. 재미가 있어야 꾸준히 하는 것 아닌가? 나는 작년 3월부터 꾸준히 개발 관련 지식을 배워왔다. 항상 성장에 대한 목마름이 있었는데 개발을 배우고 난 뒤부터 개발자가 되면 공부할게 많겠지? 그렇게 개인의 성장과 더불어 내가 속한 회사가 성장해나간다? 이 얼마나 짜릿한가. 거기다가 내가 짠 코드, 내가 기여한 서비스로 인해 사람들의 불편함이 줄어든다? 이야 이 서비스 진짜 잘만들었다 라는 평가가 귓가에 들린다면..!? 캬 생각만 해도 심장이 두근거린다.♥️

 

🎁 백엔드를 선택한 이유?

첫 개발 입문이 알다시피 코틀린이였다. 코틀린 수업때 서버에서 데이터를 받아 화면에 뿌리고, 화면이동도 구현해봤다. 그러다 12월에는 백엔드 과정을 들었는데 그때 API를 만들고 MySQL을 사용해서 데이터를 CRUD 하는 게 더 재밌었다. 정말 '재미'라는 추상적인 단어말고 명확하게 설명하고 싶은데 재미말곤 떠오르지 않아서 나도 답답하다!!!

 

🎁 위코드를 선택한 이유?

나는 위코드에 가기 전, 타 학원에서 파이썬 백엔드 과정을 배웠었다. 그 학원은 동기들이 4명으로 적었다. 거기다 한사람은 온라인으로 참여했고 수강생들끼리 교류가 전혀 없었다. 팀 프로젝트도 백엔드 총 4명과 프론트는 강사님이 맡아서 진행했었다. 하지만 뭐랄까 동기들이랑 우리가 스스로 해낸 프로젝트다!라는 느낌보다 강사님이 이렇게 해야한다고 하셨으니 그대로 작성한 코드들이 많았다. 수료하고 나서 포트폴리오를 작성하는데 내가 맡은 기술인데도 불구하고 왜 코드를 이렇게 작성했고 왜 해당 라이브러리를 사용했는지 나혼자서도 대답할 수 없었다.

학원 수료 후 이력서를 작성했지만 그 어떤 회사에 아무 지원도 하지 않았고 그대로 이력서는 접어뒀다. 이대로는 개발자로 취직할 수 없겠다, 해서도 안된다는 생각이 강했다. 뭔가를 알아야 회사에서도 뽑지 하지만 난 이미 학원이 끝났는데 어쩌나 하는 공허함과 막막함의 연속이였다. 그래도 배운 내용들이 아까워서 강의때 배운 개념들을 혼자 복습하며 구글링하던 차에, 여러 블로그들에 태그가 되어있던 "위코드"를 보고 위코드를 처음 접했다. Flask보다 Django를 많이 사용하던 시장에 맡게 위코드는 장고를 사용해 프로젝트를 진행하고 있었고, 또 그 2번의 프로젝트 모두 수강생들이 0부터 9까지 모두 빌드한다고 했다. 멘토도 상주해있어서 모르는 걸 물어볼 수 있다길래 위코드를 선택하게 됐다.

결과적으로 위코드를 선택한 건 대만족이다. 멘토들에게 더 다가가서 많은 걸 뽑아먹지(?)못한건 아쉽지만, 대신에 함께 개발자의 길을 걸어갈 동기들을 얻었고 2번의 팀 프로젝트를 통해 소통과 협업이 왜 개발자의 필요역량인지 깨닫게 되었다. 그리고 주입식으로 이뤄지는 대부분의 국비학원과 다른 점도 좋았다. 실제로 타학원에서 주입식으로 교육을 받긴 했지만 분명히 머리로는 알겠는데 실제 개발이 안되서 수료후에도 붕~ 뜬 느낌을 받았다. 위코드에서는 세션이 실질적으로 적었다 아주 많이 적었다. 대신에 혼자 공부하고 자습하는 시간을 더 많이 줬다. 모르는 개념이 등장하면 구글링 하고 공식문서도 찾아보면서 혼자 공부하는 방법을 터득했는데, 덕분에 3개월 차 기업협업에서 빛을 발했다. 협업으로 참여하게된 기업에서는 자바스크립트/노드/익스프레스라는 새 언어와 프레임워크를 사용하고 있었고 1주일의 시간을 준 뒤 과제로 1차때 진행했던 프로젝트를 리빌딩하라 부여받았는데 나는 기한내에 추가 사항까지 모두 구현할 수 있었다.

위코드를 통해 소통,협업의 중요성을 깨달았고 개발 공부를 혼자서 하는 방법을 배웠다.

 

🎁 힘들었던 적?

아무래도.. 체력적으로 많이 힘들었다. 프로젝트 기간에는 1시에 취침하고 5시에 기상했다. 정신력으로 버틴다는 말이 맞는 것 같다. 잠을 많이는 못잤지만 글쎄 학원에서 존 적은 없었다. 정말 재밌었다. 계속 뜨던 오류가 새벽에 딱 해결이 됐을때의 그 쾌감. 사람을 미치게한다 ^_^

본론으로 돌아가서 위코드 기간동안 힘들었던적은.. 음 체력빼고는 2차 프로젝트 때가 생각이 난다. 1차 프로젝트 경험이 있어서 그런가 2차때는 다들 긴장이 조금은 풀어졌고, 기업협업도 있다보니 전반적으로 어수선했다. 프로젝트 기간으로 2주는 실질적으로 길지 않다. 프로젝트 마지막날에는 해당 프로젝트 녹화본을 가지고 발표하는 시간이 주어진다. 마지막 발표일이 금요일이였으니까 조금 여유를 가지고 E2E 테스트를 진행했어야했는데 우리팀은 목요일 밤9시경에 통합테스트를 시작했다. 

프론트끼리 코드를 다 합친 뒤 백엔드와 E2E 테스트를 진행하는데, 내가 담당했던 회원가입/로그인/토큰 부분에서 오류가 발생한다고 전해들었다. 나는 오류가 정말 재밌다. 또 어떤 오류가 발생했을까? 어떤 오류가 나의 데이터베이스에 쌓이게 될까? 그렇게 나만의 DB에 쌓여서 동기가 똑같은 어려움을 겪고 있을 때 빠르게 해결해줄 때의 그 뿌듯함. 타인에게 좋은 영향을 줄 때 난 행복하다.

역시 마찬가지로 또 어떤 오류일까 신나는 마음으로 코드를 살펴봤다. 포스트맨 통신시에 아무 오류도 뱉지 않았지만 그럴 수 있지 어디선가 내가 로직을 잘못작성했겠지 처음부터 하나하나 뜯어봤다. 회원가입/로그인은 문제없는데 로그인 한 이후에 방을 예약하면, 로그인 한 사람의 예약리스트에 담기는 게 아니라 8번 유저의 예약리스트에 계속 데이터가 생성되고 있었다. 왜일까 토큰에 유저id를 하드코딩으로 박아놨다? 장바구니에 담을 때 유저id를 하드코딩했었나? 코드를 몇번이고 살펴보고 print문을 코드 한줄마다 찍어보며 디버깅에 들어갔다. 그렇게 한시간, 두시간, 세시간이 흘렀고 내 코드가 아니라 프론트단에서 뭔가 잘못된게 아닌가 라는 확신이 한 80%들었다. E2E테스트가 밤늦게 이뤄지다 보니 다들 예민했었고 에러가 발생해도 해당 기능을 구현했던 담당자는 이미 집에 가서 없고 총체적 난국이였다. 한참 E2E테스트중이라 정신없었던 pm에게 실례를 무릅쓰고 프론트 코드를 보여달라 말했다.

본다고 내가 뭘 알겠나 자바스크립트 문법 1도 모르는데 그래도 어딘가 잘못됐겠지 파라미터를 변수로 받는 부분은 동일할꺼야 라고 생각하며, 지금 에러난 부분과 연결된 프론트부분의 코드가 어디냐고 pm에게 물어봤다. 코드를 읽다가 결국 잘못된 부분을 발견했다!!! 변수명으로 계속 전달받은 값이 변해야하는데, 하드코딩되어있던 url뒷부분!!!! 그때의 감정 너무 생생하다. 해당 부분을 고치고 나니 제대로 돌아가는 사이트를 보며 정말 행복했다 ㅋㅋㅋㅋ 아싸 내가 해결했다!! 난 역시 대단해 라는 행복함과? 동시에 이게 이렇게 오래 걸릴 일이였나 내가 작성했던 토큰 생성/복호화 하는 코드에 대해 제대로 숙지하고 사용했다면 지금보다 더 빨리 해결할 수 있었을텐데.. 내가 제대로 알았다면 조금더 빨리 해결할 수 있었을텐데.. 잘못된 코드를 작성했던 프론트에 대한 원망보다 나에 대해 화가 났었다. 그래도 해당 경험을 통해 이래서 모르고 쓰는 게 위험하다는 (^_^) 값진 경험을 했고 프론트 코드도 백엔드가 잘못된 부분을 찾아낼 수 있다는 자신감이 생겼닼ㅋㅋㅋ.

내 코드에는 문제없어 프론트문제 아니냐며 내치지 않고 나는 내 코드를 먼저 살펴봤다. 두세번 검토 후에도 문제가 없다면 담당자(가 없어서 pm이 남의 코드를 살펴보느라 에러를 못찾았지만)의 코드도 살펴보면서 서로 하나하나 맞춰가다보면 에러를 해결할 수 있다. 나 역시 지쳐있었지만, 이 재미난 오류의 원인이 뭘까? 왜그럴까 어떻게 그럴 수 있지? 신기하다 알아내고 싶다는 생각이 더 컸기에 포기안하고 해결할 수 있었다고 생각한다. 내문제 아니야, 니탓이네 내탓이네 안하고 이 기회로 나는 또 하나를 배웠다라는 마음가짐으로 넘어갔는데 이 역시 참 잘한 것 같다.

 

🎁 어떤 개발자가 되고 싶은가?

단기적으로(주니어) 1인분을 하는 개발자가 되고 싶다. 실질적으로 이 개발이란 직군은 참 의사소통이 끊임없다고 느꼈다. 잘 쓰고, 읽고, 듣고, 말해야한다. 위코드 멘토님께 내가 모르는 걸 질문하기 위해서는 내가 무엇을 모르는 지 똑바로 설명할 수 있어야 했고 멘토들이 설명해주는 걸 기억했다가 적용할 수 있어야했다. 프로젝트를 진행하면서도, 프론트와 명확한 소통을 해야 효율적으로 개발을 할 수 있었다. 잘 쓰고,읽고, 듣고, 말하면서 1인분을 해내서 시간대비 고효율을 만드는 신입 개발자가 되고 싶다.

중기적으로는 연차가 3,4년 정도 됐을라나? 업무상 권태기는 3,6,9에 찾아온다. 아마 이렇게 재밌어하는 개발도 업이 되면 재미가 없어질 수도 있겠지. 맨날 똑같은 로직, 재미없어지는 날도 올거라 생각한다. 그때는 재미가 찾아오길 기다리지 않고 재미를 만드는 개발자가 되고싶다. 예를 들어 뭐 사내에서 개발문화를 구축한다던지, 개인적으로 사람을 모아 토이 프로젝트를 진행한다던지, 사내 프로젝트에 내 아이디어를 반영하기 위해 의견을 낸다던지 하면서 고여있지 않는 개발자가 되고 싶다.

장기적으로는 많은 개발 지식이 쌓여있는 나를 꿈꾸고 있다. 내가 배운 지식들을 나눠줄 수 있는 개발자가 되고싶다. 1인분을 했던 주니어, 주니어에게는 1인분도 어려울 수 있다. 어려움을 겪는 동기나 주니어들에게 내가 알고있는 지식들을 쉽게 전파해줄 수 있는 영향력있는 개발자가 되고 싶다. 기회가 된다면 나도 교육을 통해 내 주니어들을 키우고 싶다는 포부가 있다. 남에게 좋은 영향을 준다는 건 언제나 짜릿하니까!

 

 

728x90