대학교 프로젝트에서 Spring을 사용하면서 자연스럽게 백엔드 개발자의 길을 시작하게 되었다.
졸업 후에 혼자 취준을 하면서 인프런강의를 100만 원어치를 결제해두고 닥치는 대로 공부를 했던 것 같다.
당시 인프런에서 들은 강의를 기반으로 빠르게 만들었던 포트폴리오용 프로젝트들의 관심사는 기능 구현이었다.
하지만 취업시장에서 이런 개발자들은 생각 보다 많고 회사에서 원하는 개발자가 아니었다는 것을 2개월 정도
취준을 하면서 금방 깨닫게 되었다.
그럼 회사가 원하는 개발자는 뭘까???????
지극히 개인적인 의견이지만 제품에 대해서 고민을 하는 사람이 아닐까? 생각한다.
내가 만드는 제품이 어떤 제품인지 특성과 정책에 따라서 리소스의 양도 구현 방법도 달라진다. (물론 구현능력도
중요하다)
하지만 이런 것들을 충분히 고민하지 않고 만든 프로젝트는 코드의 퀄리티뿐만 아니라
전반적으로 불필요한 기술을 사용하여 리소스를 낭비하거나 최신 기능을 갖다 붙여 있어 보이게 끔하여 포트폴리오
를 보는 사람의 합리적인 의심(?)을 하게 한다.
이는 신입 취준에서 생각보다 불리하다. 최신 기능 쓰면 당연히 좋은 거 아니야?라고 생각할 수 있다 물론 잘
하면 좋다 그런데 그 기술을 실무에서 사용할 수 있을 만큼 깊이 고민하고 사용했냐는 것이다. 그냥 사용법만
익히고 같다 붙이는 것은 누구나 할 수 있다.
이렇게 해서 붙었다 한들 면접에서 깊게 들어오는 기술적인 질문 공세를 이겨내지 못하고 탈락한다...
하지만 이런 고민을 하는 것이 나쁜 것이 아니다 대부분의 개발자들은 최신 기술들과 화려한 기술들을 좋아하는
것은 당연하다고 생각 한다.
단지 신입이 취준 할 때 더 중요한 걸 놓치고 최신 기술만 쫓는 것은 취준에서 오히려 마이너스가 될 수 있다는 것이다.
서두가 너무 길었다.
위의 고민들을 혼자 있을 때는 하지 못했다.
누군가에게 내가 가고 있는 길이 맞는 건지 물어보고 싶은 욕구가 생겼고 부트 캠프들을 알아보기 시작했다.
처음에는 빠르고 쉽게 취업을 할 수 있다는 문구와 강의로 이루어져있어 언제든 들을 수 있다는 부트 캠프 광고에 구미가 당겼다
후기를 몇 개 찾아보니 내가 원하는 방식은 아니었고
부트 캠프를 찾다 보니 유튜브 알고리즘에 우연히 F-lab 광고가 나오게 돼서 한번 알아봤는데 문구가 꽤 맘에
들었다 답을 찾을 수 있는 능력, 답을 절대 알려주지 않는다
등등 ... 뭔가 스파르타식의 그런 문구였다.
(그런데 진짜로 그냥 답을 안 알려주신다. 답을 찾지 못해 2주 동안 찾은 경험이 있다)
어쨌든 나는 답을 알려주는 것보다 내가 직접 답을 찾고 싶은 마음이 컸고 사실은 잘하는 개발자와
1 대 1로 개발 관련 얘기를 하고 질문할 수 있다는 점이 네트워크가 전혀 없는 나에게는 큰 도움이 될 것 같아
부트 캠프가 아닌 F-lab을 신청하게 되었다.
처음에 F-lab을 진행하면서 어려운 점도 많았다.
F-lab을 신청한 이유를 망각하며 멘토님께 답을 요구하거나 질문하는 법을 몰라서 잘못된 질문을 하는 등등...
멘토링을 처음 하면서 어려운 점도 많았지만
결론부터 말하자면 F-lab을 신청한 것은 대성공이었다.
F-lab을 진행 하서 정말 많은 것들을 얻었지만 몇 가지만 공유해보겠다.
멘토링 시간에 매주 공부한 것들에 대해서 멘토님이 사랑의 매를 주신다
나는 꽤 그럴싸한 답변을 준비해도 항상 매를 맞지 않는 날이 없었다. 하지만 너무 절실했던지라 감사했다.
딥 다이브를 하면서 평소에 몰라서 궁금하지 않았던 것들을 알게 되었고 이것을 원동력 삼아 기술에 대한 깊이 있는 이해를 할 수 있었다.
딥 다이브를 하면서 이론과 인터넷에 떠다니는 정보들에 대해서 얘기할 때마다 테스트해 봤냐고 맨날 물어보셨다.
멘 : "테스트해 보셨어요 ?"
나 : 아니요? ㅋㅋ..
멘 : 귀찮죠? 무섭죠?
나 : 네
멘 : 해보시면 별거 아니에요
지금은 테스트가 재밌다 테스트를 하다 보면 이론과 실제로 테스트할 때는 다른 결과가 나올 때가 꽤 많다.
책에서 본 JMH를 이용한 벤치마킹 테스트나, 부하 테스트, 기술 비교 테스트 등등 현재 환경에 따라서 결과가 달라진다.
그 과정에서 결과가 다르다면 어떤 이유 때문인가?
잘 됐다면 정말 테스트가 잘 된 건지 검증을 하면서 자연스럽게 기술에 대한 트레이드오프도 비교할 수 있게 되었다.
그리고 이때 얻은 테스트 결과를 수치화시켜 자연스럽게 포트폴리오 적용할 수 있는 일석삼조의 효과를 거두었다.
(물론 굳이 하지 않아도 되는 테스트까지 해서 제지를 당한 적도 있다.)
매주 사랑의 매를 맞을 때 대부분은 기술면접 형태로 진행이 됐다.
멘토링을 진행하면서 내가 생각하고 있던 것을 말로 표현하는 것이 정말 서툴다는 것을 알게 되었다.
멘 : GC가 뭔가요?
나 : GC는 FULL GC 가있고 Minor Gc가 있는데 이게 어쩌고저쩌고 ...
멘 : 그래서 GC가 뭔가요?
나 : ?
처음에는 대답을 할 때 미괄식으로 말했고 스스로 말하면서 질문이 뭐였는지 기억도 하기 힘들었다.
이대로 면접에 갔으면 아마 큰일 났을 것 같다.
이때부터 면접 때 두괄식으로 말하는 방법을 연습했고 아직도 잘 되진 않지만 처음보다는 훨씬 좋아졌고
멘토님과 매주했던 모의 면접을 통해서 오히려 실제 면접은 더 쉽고 질문의 난이도도 멘토님과 했던 기술면접보다는 쉬웠다.
f-lab 커뮤니티에서는 잘하시는 개발자분들이 많다 여기서는 스터디 구인, 질문 방, 취업 정보, 개발 정보 등등 많은것들을 얻을 수 있다.
멘토님도 주 분야가 아니거나 모르는 부분이 있을 수 있는데 이때 이 네트워크를 이용하면 정말 좋다.
다양한 의견과 피드백을 받을 수 있어서 문제에 대한 다양한 방법들을 시도해 볼 수 있다.
뿐만 아니라 F-lab에서 주관하는 다양한 행사들이 있는데 이것들이 도움이 많이 된다.
Ex) 이력서 첨삭, 개발자 세션 등등 ...
(이력서 첨삭에 참여했는데 F-lab Fitz 님의 날카로운 피드백이 정말 좋았다.)
나는 여기서 개발 스터디를 구했고 8개월이 지난 아직도 함께 공부하고 있는데
같이 공부하는 동료분들이 다들 훌륭하신 분들이라 동기부여도 돼고 배울 점이 많아 현재까지도 많은 도움을 받고 있다.
정말 재밌고 흥미 있는 개발 썰을 들을 수 있다.
카테고리는 다양하다 책에서는 배울 수 없는 실무 노하우, 서비스 장애 썰 등을 들을 수 있다.
이 부분이 멘토링의 묘미?라고 생각한다 이런 얘기를 듣는 게 정말 재밌고 도움이 많이 된다.
나는 그래서 멘토님이 장애가 나서 늦게 오는 날은 어떤 썰을 들려줄지 항상 기대를 하곤 했다.
이외에도 많은 것을 얻었지만 소개는 여기까지 하겠다.
일단 결론부터 말하면 현재는 신입 취준에 성공했다.
원하던 회사에 입사해서 현재는 잘 적응 중이다.
F-lab이 경력자들의 비율이 높고 신입은 별로라는 평도 있는데 나는 오히려 신입이라서 더 좋았다.
깨끗한 도화지에 정말 잘 그리는 화가가 그려주는 기분이랄까
신입이라 무엇을 해야 하고 뭘 준비해야 할지 막막했지만 F-lab의 든든한 서포트를 받으면서 나는 열심히 공부만 했던 것 같다.
어디서나 열심히 하면 좋은 성과가 있겠지만 열심히 하는 사람이 F-lab과 함께 한다면 더 좋은 시너지를 낼 수 있지 않을까 생각한다.
개발자로서 배울 점이 많은 글이었습니다. 감사합니다.