인프런에서 강의를 찾아보다가 인프런에도 멘토링 탭이 있다는 것을 발견했다. 거기에 백엔드쪽인 사람들을 리스트를 뽑아 고민하다가 가격도 합리적이고 시간대도 괜찮고 후기도 좋은 멘토분이 계셔서 신청하게 되었다! 그게 바로 우연
님!!
나는 평소에 고민을 하고 질문을 하고 싶어하는 편이다. 근데 주변에 같은 분야가.. 그렇게 많지 않아서 전에도 커피챗을 두 번정도 한 경험이 있다.. 그런데 국비를 하고 본격적으로 다시 공부하기 시작하면서 궁금했던 것이 하나 둘 씩 늘어났는데 국비 강사님은 24명을 혼자 관리하셔서 모든 걸 다 물어보기는 힘들었다.. 그래서 7월달부터 커피챗을 고민하고 있었다. 그러다가 신청하게 된 것
먼저 원하는 시간, 날짜 연락처, 이메일 등을 기입한다.
나는 지식공유자에게 남길 메세지에 노션에 적어둔 질문사항 들을 적어냈다.
그리고 결제하고 나면 멘토분이 받으시면 이렇게 카톡으로 연락이 온다.
디스코드
로 접속해서 음성으로 상담을 진행하였다!! 내가 보낸 모든 사전 질문에 대한 답변을 준비해오셨다 ㅠㅠ 질문 양이 꽤 된다.. 심지어 마지막에는 정리하신 노션 페이지도 보내주셨다..😍 멘토링 시간은 신청시간은 30분인데 1시간 가량 해주셨다 ㅠㅠㅠ
질문한 것을 바탕으로 정리해보고자 한다.
Q. 학교에서도 자바를 하고 국비에서도 자바를 듣고 문법은
어느정도
아는 것 같으면서도 부족한 것 같아요. 그런데 기초 자바 문법 강의를 보면 대부분은아는 내용
이에요 코드를 짜려하면 조금만 복잡해지면 초조해지면서 머리가하얘져요
보면 간단한 코드인데 생각 안날 때도 있고 코드 짜는연습
을 해야할 것 같은데 자바 언어로 코딩테스트 문제를 풀면 조금 나아질까요? 문법 부분 심화까지 다시 복습하기에 좋은강의 추천
해주실수있나요?
A. 문법 강의는 많이 볼 필요 없다고 한다. 문법 강의는 딱 한번만 보면 된다고 한다. 아~ 이 문법이 있구나 정도고 개발할 때 사용하다 보면 계속 반복되니까 자연스럽게 익혀진다고 한다.
자바 심화 학습은 Java 8
의 주요 기능[람다식 등]을 배우는 것을 의미한다고 생각하신다고 하는데, 자바 8을 다루는 강의는 많지 않아서 강의 보다는 도서 추천하신다고 아래의 2개의 도서를 추천해주셨으며, 내용이 쉽지 않으니 인프런에 모집 공고 활용해서 그룹 스터디 할 것을 춫
Q. 유투브나 주의에서 들어보면 개발자는 구글꺼지면 코딩 못한다는 말과 프로그래밍 언어 문법을 다 익히려고 하지말고
클론 코딩
을 해봐라라는 경우가 많은데.. 그럼어느 수준
까지 알아야 할까요?
A. 구글꺼지면 코딩 못한다는 말 반정도는 맞다고 하셨다!! 클론코딩이 많이 도움이 된다고 한다. 그리고 말그대로 클론 코딩
은 따라 쳐서 배우는 것으로 사람은 모방의 동물이며, 따라하며 배워 체득하고 체득 되었을 때 깨달음이 있다고 한다. 그것을 채워 나가면 되는 것이라고 한다. 이렇게 짤 수도 있는거다 정도 알면 된다고 하셨다.
그래서 클론 코딩도 따라치는 게 대부분인데 어떻게 도움이 된다는 걸까요?
A. 클론 코딩을 전부 체득해낸다는 느낌이 아니라 이런 코드를 이렇게 할 수도 있구나 정도 알면 된다고 한다. 결국 클론 코딩의 코드 자체도 다른 사람이 코드를 짠 것이기 때문에 하나의 템플릿
이라고 보면 된다고 나중에 내가 그와 비슷한 코드를 짤 때 '아 나 클론 코딩 때 그 부분을 배웠는데 그 부분을 응용해서 해볼까' 이런 느낌으로 알면 된다고 하셨다!
Q. 공부를 해도 자꾸 다시 잊어버리는 느낌이 강해서 불안해요
반복학습
만이 답일까요?
A. 반복학습은 반드시 도움은 되나, 외우기 위한 공부와는 다르다고 생각한다고 하신다고 한다. 그래서 내가 해야하는 개발과 하고 싶은 개발을 나눠서 생각해야 한다고 현재 하고 있는 공부가 하고 싶은 개발이냐고 여쭈어보셔서 해야 하는 개발쪽에 가깝다고 하니 꼭 어느 정도는 자기가 해보고 싶은 공부를 해서 재미를 붙여야 하며, 궁극적으로 해야하는 개발을 하고 싶은 개발로 만들어보는 것이 중요하다고 한다.
ex.
나는 Java + API 만드는게 좋은 개발자인데 Python을 이용해야 한다면? → Python으로 API서버를 만들자
그리고 반복학습
의 경우에는 벨로그와 노션에 기록한다고 했더니 그렇다면, 잊는다는 느낌이 들 때마다, 그 정리된 글 벨로그를 보면서 잘못된 개념이 있는지를 확인하고 반복학습하며, 키워드로 연결고리를 만들어서 남에게 설명할 수 있는 정도로 체득하면 GODD이라고 하셨다!
Q. 백엔드 kdt를 듣고 있고 서울에 있는 전문대 전공심화로 공학학사 졸업했어요 괜찮은 si나 중소기업이 목표입니다. 괜찮은이라는 기준이 돈은 적더라도 코드리뷰가 있고 사수분이나 제가 배울 분이 있었는 곳이며, 일단 유투브에 나온것처럼 경력 뻥튀기해서 파견보내는 그런곳이 아니었음 좋겠다요 그리고 칼퇴해서 개인공부할 수 있는 곳이요(같은 대학 동기가 si 들어갔는데 작은 회사인데 사수 부분 빼고는 다 괜찮더라고요) 거를 수 있는 기준이 있을까요?
A. 기준코드 리뷰, 배울 분을 찾는 것은 자기소개서가 통과되고 기술 면접
때 충분히 질문해보고 배울 분이 맞는지 검증하는 것을 직접해야 한다고 하신다.
Q. 그래서 면접에는 인사 담당자만 들어올 수도 있지 않나요?
라고 질문을 했는데 그런 경우는 거의 없다고 하셨다. 기술 면접 때 여기 코드 리뷰가 있는지, 기술적으로 궁금한 것들
을 역으로 면접관들에게 던져야 한다고 하셨다. 그걸 질문하면서 답변이 어떻게 나오는 지에 따라 그 회사의 기술 수준을 알 수 있다고 한다.
또한 칼퇴도 중요하고 개인 공부 방향성만 정해진다면 무조건 추천하지만 무슨일을 하더라도 회사 업무가 1순위가 되어야 한다고 하셨다. 특히 이쪽 업계는 좁아서 연챠가 많은 시니어 분들이 퇴직하거나 이직하실때 CTO로 많이 가시는데 열심히 하고 기술적으로 좋은 개발자로 보이면 나중에 데려가시기도 하니 무조건 회사 생활을 열심히 하라고 하셨다.
Q. 중견기업 이상(유명한 기업)
목표
가 아니라면코테
는자바
로 공부해도 될까요? 자바만 해도 완성한 느낌이 안 드는데 코테는 파이썬으로 하면 자바 언어를 또 잊어버릴까봐요.
A. 준비하기 나름인데 자바를 주 언어로 선택했고 다른 길로 셋다가 돌아오는 것이 두려워하는 것 같아 보인다고 하셨다. 예를 들어 한국인이 어학연수갔다가 와서 한국생활했을 때 다녀온 경험이 해가 되는 경우를 본 적이 있는지 생각해보면 득이 되면 득이됐지 실이 되지는 않는다며, 자바를 공부하다가 파이썬을 공부해도 다양한 경험을 해볼 수 있으며, 진짜 자바만 팔 것이 아니라면 코딩테스트시 파이썬이 훨 편하기에 파이썬 추천한다고 하셨다.
Q. 새로운 언어나 새로운 기술을 공부할 때의 방법이 어떻게 되나요?
A. 언어의 경우는 기본 문법을 공식문서 or 강의 or 책으로 익힌다고 하시며, 관련된 토이프로젝트를 하나 진행한다고 하셨다. (간단한 CRUD 기능 ex. 투두리스트) 하지만 이 부분은 사람마다 다르기 때문에 3가지 중 하나 선택하거나 병행해서 하면 좋을 거라고 하셨다.
Q. 9월부터 프로젝트를 국비에서 진행하게 됩니다. 학교에서 전공했지만 학교는 안드로이드 개인 프로젝트나 IoT 부분만 진행했기에 깊은 팀프로젝트는 처음입니다. 피해 안주고 열심히 하고 싶은데 혹시 프로젝트 관련해서 조언이나 참고할 수 있는 사이트 추천해주실 수 있나요? 도커나 쿠버네티스, 엘라스틱 서치 등 중 하나 이상 써보고 싶은데 한달 반이라는 프로젝트 기간 + 혼자 좀 더 공부하는 기간 2-3주하면 구현할 수 있을까요?
A. 새롭게 도전하고하는 모습도 대견스럽지만 현재 팀 프로젝트가 처음이라면 감을 익히는 것이 좋을 것 같다고 하셨다. 그리고 시간적으로 너무 촉박하다고 그렇기 때문에 어떻게 해야지 서비스가 굴러가는지 파악하는 것이 중요하며, 전체적인 틀과 감각을 익히는 게 좋다고 하셨다. 특히 적극적인 의사소통
모르는건 모른다고 확실하게 의사표현하기가 중요하다고 하셨다. 말 한마디 한마디가 다 코드와 연관되며 제대로 한 번에 말하지 않으면, 다시 말하게 되어 있고 시간 지연이 되니 깔끔하게 말하고 등돌리는게 좋다고 조언해주셨다.
Q. 프로젝트를 하면서 제 실력도 향상시킬 수 있는 방법이 있을까요?
A. 깊게 이해하고 많은 고민들을 하기 한줄을 코드를 작성하더라도 이게 맞나? 라는 습관을 들이다 보면 퀄리티 높은 메소드 → 클래스 → 서비스 → 모듈 → 어플리케이션
이 될 것이라고 하셨다.
Q.다들 프로젝트 할 때나 자신의 사이드 프로젝트를 만들 때 자신이 원하는 코드를 넣고 원하는 정보를 찾는 것이 대단하다고 느껴집니다. 해커톤 사람들 보면 어떻게 하면 내가 원하는 코드를 딱딱 짜 낼 수 있을까 생각이 듭니다… 어떻게 하면 가능할까요?
A. 자신이 원하는 코드는 걱정하지 말고 요구사항을 분석하고 정의할 수 있으면 된다고 하셨다고 원하는 기능을 구현하는건 어렵지 않다고 이미 먼저 고민한 사람들이 정리를 잘해둔 글들이 있고 그저 보고 이해하고 마음대로 쓸 수 있으면 그것이면 된다고 조언해주셨다. 그 해커톤에 있는 사람들도 처음에는 그렇게 하나하나 해나갔을 것이라고 하셨다. 그리고 이 부분은 해커톤으로 후기 작성하신 분께도 댓글로 여쭈어 보았을 때 답글을 받았다. 이 부분도 참고하자!
Q. 항상 제가 부족한 것 같아 걱정입니다. 면접 볼 때가 가장 무서운데 여러번 보다 보면 나아질까요?
A. 이력서 전달 주시면 진짜 부족한 사람인지 객관적으로 검증해주시겠다 해서 이력서는 없고 진짜 뭣도 없다고 말씀 드렸더니 그럼 벨로그 링크 보내주시면 확인하겠다고 하셔서 링크 보내드렸다!! 그랬더니 그래도 잘 정리하고 있다고 이걸 기반으로 이력서 쓸 때 키워드 성실함, 기록성, 꾸준함
을 적어내라고 조언해주셨다.
그리고 면접은 무조건 경험이라고 공고문도 9월달 부터 많이 나옴 이력서 서류 난사 → 면접 경험 쌓기 진행 필요하며, 이후 가고 싶은 회사 서류 넣고 최종 합격까지 갈 수 있는 발판 만들라고 조언해주셨다.
Q. 저는 면접에서 제가 답하지 못할까봐 그게 두려워요..
너무 걱정하지 말라고 그 질문을 모르고 던지는 면접관들도 많다고 그리고 남이랑 비교한다고 하셨는데 그런 애들은 다 좋은 데 가고 잘하는 사람은 어딜가든 많다고 너무 걱정하지 말라고 하셨다. 공감도 해주시고 잘하고 있다고도 해주셔서 굉장히 위로를 많이 받았다.
public class Calculator {
public int add(int a, int b) {
return a + b;
}
public static void main(String[] args) {
int a = 10;
int b = 5;
// 어떤 사람은 이렇게 더하기를 구현 할 수 도있고
a + b;
// 어떤 사람은 이렇게 구현할 수 도 있음. 단지 이것의 차이를 알고 있으면 됨.
add(a, b)
}
}
이렇게 짜는 이유는 단순히 누가봐도 이해 될 수 있게 코드를 짜야한다. 예를 들어 유치원생이 더하기라는 말은 알지만 더하기를 수식으로는 모를 수 있기에 누가 봐도 알 수 있게 코드를 짜는 것이 중요하다 그 후에 캡슐화나 재사용성이 따라오는 것...!!
항상 고민하던 질문에 대한 답변을 받아서 그런지 방향성이 잡혔다. 그리고 위로도 많이 받았으며, 명확한 답을 얻어서 좋았다. 사전 질문에 대한 답변을 정말 성실하게 다 준비해주시고 답변해주셨으며, 추가적인 질문에도 빠르게 답변해주셨다. 준비성이 철저하신 분이다!그 외의 좋은 오픈카톡 방 추천도 해주셔서 빠르게 들어갔다! 멘토분께서 덜 어색하게 대해주셔서 많은 질문을 할 수 있었던 것 같다. 좋은 점을 추려보자면,
1. 사전 질문에 대한 답을 철저하게 준비해주시며, 그에 대한 답변 또한 정리해주신다.
2. 가격도 합리적이며, 나는 너무 채찍만 맞으면 우울해하는데 방향성도 잘 잡아주시고 응원해지시고 자신감 회복이 되었다
3. 사전 질문과 추가 질문에 대한 답이 많아서 30분 멘토링 시간에서 넘어가 1시간 가량을 진행했는데 너무 걱정하지 말라고 하시며, 자신은 열심히 하고 욕심 있는 분들의 도움이 되는 걸 좋아한다면서 답변해주셨다.
4. 예시를 적절하게 대입해주셔서 이해가 쉽게 되었으며, 그에 대한 답변 또한 인상 깊게 남았다.
부담 없이 여러번 멘토링 신청하기에도 좋은 가격대이며, 멘토링 받은 시간이 정말 값진 시간이었으며 도움도 많이 받았다. 현업에 대한 질문을 하고 싶다면 주저 말고 신청해보길 권한다.
회고록에 적어뒀다! 즐거운 시간이었다!!