ji-park

기술을 듣고 눈으로 이해하면 삼류

기술을 직접 따라해보면 이류

기술을 이해하고 적용하면 일류

01. 42서울을 하기전

부모님 영향으로 컴퓨터 소프트웨어 공학과에 입학했습니다.

저는 대학교에서 시키면 시키는대로 그냥 코드를 작성하며 시간을 보냈습니다.

프로세스, 스레드도 제대로 모르는 저는 학교에서 중국식 양산형 프로젝트를 많이 만들어봤다고, 개발이 쉬운 줄 알았던 것 같습니다.

지금 생각해보면 참으로 무지하고 깜찍한 시절입니다.

02. 왜 42서울을 한 걸까?

사실 큰 뜻을 가지고 지원한것은 아니였습니다.

경상도 사나이로서 “마 함 해보자!” 마음 먹고 42서울에 저를 던졌습니다.

상황이 저를 바꾸니깐요.

03. 42서울을 하면서..

정말 좋은 사람들을 많이 만났습니다.

라피신 과정에서 같이 공부한 9명 모두 2020년 9월에 합격했습니다.

합격을 하고 지금까지 서로 도와주며 공부를 하고 있습니다.

제가 42서울에서 얻은 것들을 정리 해보겠습니다.

개발은 정답이 없다.

수학처럼 정답이 나오는게 아닙니다. 만약 개발에 정답이 있다고 해도 내일이 오면 정답은 바뀝니다.

지금의 상황에 알맞고 가장 적합하다고 생각하는 개발을 하면 되는 것입니다.

왜? 라는 질문을 계속 자신에게 던져보면 본인이 알고 있는 지식들이 얼마나 얕은지 알 수 있을것입니다.

기록

사람은 다 잊어먹습니다. 문서로 남기면 누구에게 인수인계를 할 때도 편하고 설명할 때도 편합니다.

그리고 배운 지식들을 직접 기록하고 그림을 그려보면 어떤 부분을 놓쳤는지 알 수 있습니다.

42서울은 모든 과제를 코드리뷰를 통해 진행하니 그냥 코드만 보여주는것 보다 왜 이렇게 코드를 작성했는지 설명하고,

어떻게 했는지 도식화해서 보여주면 보는 사람도 좋고 설명하는 사람도 좋습니다.

개발자의 기본 마인드

내가 어느 출신인지는 하나도 중요치 않습니다.

물론 좋은 회사, 좋은 대학, 좋은 교육기관이 그 사람을 보기전 까지는 큰 영향을 끼칩니다.

자신을 소속으로 증명하는것 보다 실력으로 증명하는게 좋다고 생각합니다.

썩은 정신 개조

42서울은 대부분 C언어로 과제들을 진행합니다.

그래서 저는 C언어를 공부하는것이 불만이였고, 42서울이 대한민국에 안맞다고 잘못된 생각을 했었습니다.

현재 저는 “언어는 개발자가 표현할 수 있는 방법” 이라고 생각합니다.

물론 언어마다 특징과 수단이 다르고 배움의 깊이에 따라 숙련도도 달라집니다.

근데 시대는 발전하고 언어는 계속 생길 것입니다.

그래서 저는 문제를 정의하고 지혜롭게 함께 해결하는 방법을 배워야 한다고 생각을 바꾸었습니다.

그리고 팩트는 언어가 대한민국에서 많이 사용하는 JAVA가 되었든 C가 되었든 기본이 되어 있는 사람은 뭘해도 잘합니다.

동료 학습

좋은 동료들을 얻었고, 어떻게 해야 사람들에게 호감을 얻는지 배웠습니다.

혼자서는 42일 함께하면 42시간이라는 말이 있는것 처럼 동료들과 함께 개발하세요.

저는 슈렉에 나오는 귀여운 고양이처럼 표정을 짓고 다가가니깐 사람들이 저를 좋아한것 같습니다.

아닌 것 같기도 하고요.

04. 2020년 4월 탈락 후기

42서울을 들어오고 2020년 4월쯤에 판교에 있는 기업에 첫 면접을 보았습니다.

채용 프로세스는 코딩 테스트, 인적성, 기술면접, 컬쳐면접였습니다.

저는 기술면접에서 탈락했습니다.

떨어진 이유를 지금 생각 해보면 제가 무엇을 했다만 강조했지, 왜 했냐를 말하지 않아서 떨어진 것 같네요.

무엇을 한지는 중요하지가 않은 것 같습니다.

그리고 제가 무엇을 한것에 대해서만 강조하려다 보니, 물어 보지도 않은것 까지 설명을 하게 되었고, 스스로 뇌절했습니다.

즉 있어 보이려 하다가 망했습니다.

그래서 결론적으로 물어보지 않은 것은 말하지 않는것이 좋다고 생각합니다.

질문을 유도할 수 있도록 키워드만 깔끔하게 말하면, 면접관이 알아서 물어보게 됩니다.

05.이력서에 관한 나의 생각

클론코딩은 내 기술이 아닙니다.

요즘 클론 코딩이 넘쳐납니다. 클론 코딩은 실제로 배포를 해서 서비스를 운영하는 것이 아닌 학습을 위한 프로젝트라고 생각합니다.

그리고 클론코딩을 하다보면 왜? 라는 생각을 안하게 되는 경우가 많이 생깁니다. 이미 문제 정의와 해결이 다 나와있기 때문입니다.

또 사설 부트 캠프에서 수 많은 프로젝트들을 제작해본 개발자들이 엄청 많습니다.

채용 담당자들이 다 똑같은 클론 CRUD 프로젝트를 본다면 엄청 지루할 수 밖에 없습니다.

그래서 저는 무엇을 만드는것이 중요한게 아닌 내가 왜 이렇게 생각했고, 어떻게 사용했고, 무엇을 배웠는지를 기록해서 보여줘야 한다고 생각합니다.

깔끔하게 !

남들 다 한다고 따라하지 말기

요즘 대용량 서비스에 대해 경험이 있다면 모든 기업이 우대합니다.

그래서 MSA(마이크로 서비스)를 저 또한 공부를 조금했었습니다. 근데 문득 생각이 들었습니다.

“내가 지금 서비스를 운영해서 사용자 수 때문에 골치를 겪고 있는게 아닌데 왜 이걸 공부하고 있는거지? “

“간단한 서비스를 제작해서 배포도 안해봤는데 MSA(마이크로 서비스)를 지금 할 필요가 있을까?”

그냥 남들 한다고 따라하고 있는 저를 발견할 수 있었습니다.

그래서 저는 그냥 뭔지만 알고 다음에 필요할 때 적용시키기로 마음 먹었습니다.

자기가 필요해서 사용한 기술이 아니고 그냥 남들 다 한다고 따라했다면 이력서에 적었다가는 먹잇감이 될 수 밖에 없습니다.

만약에 이 부분에 대해서 관심이 많이 생겨 공부를 했다면, 솔직하게 아는것 까지 말하는게 좋은거 같네요.

내가 화려하게~ 뭐 MSA를 했다! 그래서 뭐 좋더라! 이런식으로 하면 안된다고 생각합니다.

42서울인과 프로젝트

우리는 42서울이라는 대규모 커뮤니티에 포함되어 있습니다. 인맥을 잘 사용합시다.

옆을 보면 프로젝트를 같이 진행할 수 있는 동료들이 있습니다. 루피가 되어서 자기와 잘맞는 여러 동료들을 찾아보세요.

그리고 수준에 맞는 MVP(최소 기능 제품)를 만들어 봅니다.

먼저 집단 지성을 통해 문제점을 찾아 정의하고 해결합니다.

이 부분은 https://42place.innovationacademy.kr/archives/2042 를 보면 정말 자세하게 이호준 멘토님이 설명해주셨습니다.

다 만들고 나서 42 슬랙에 관심을 가져달라고 하면 사용자가 생깁니다.

그리고 사용자들과 의사소통하며 피드백을 받고 직접 그 부분들을 개선해보세요. 재미있고, 좋은 이력이 될 것입니다.

이력서에는 많은 프로젝트가 필요없다고 생각합니다. 특히 주니어가 프로젝트가 많으면 물어 뜯길 수 밖에 없습니다.

이유가 담긴 프로젝트 하나면 충분합니다.

06. 2022년 1월 합격 후기

이번에 합격한 기업은 제가 정말 가고 싶은 곳이였습니다.

제가 하고 싶은 도메인이며, 마음이 따뜻한 CTO님이 있기 때문입니다.

채용프로세스는 사전면접 -> 기술과제 -> 기술면접 1차-> 기술면접 2차 -> 임원면접였습니다.

제가 자주 사용하던 프레임워크는 NodeJS(Express)였지만,

회사는 Python 기반의 Django를 사용했고, 저에게 Django를 사용해 과제를 해결하라고 제안했습니다.

새로운 스택을 사용하는게 막막했습니다.. 하지만 42서울인 아인교?

먼저 소과업들을 나누고 기간을 정했습니다. 그리고 7일 안에 먼저 정상적으로 돌아가는 프로그램을 목표로했습니다.

그리고 남은 기간동안 코드를 계속 개선했습니다.

또 과제에서 스스로 중요하다고 생각되는 부분을 2개 정도 잡아서 개발했습니다.

만약 기술 과제를 한다면 저는 모든 기능을 무난하게 하는 것보다 문제 정의를 한 후 방향성을 잡은 뒤 중요한 포인트를 한 두개 정도 잡는게 좋은 것 같습니다.

모두가 다 똑같은 과제를 하기 때문에 자기만의 이야기가 담겨있지 않으면 그냥 단순 CRUD API가 되어버리기 때문입니다.

기술면접은 총 3시간 정도 걸렸습니다.

기술면접 1차에서는 제가 제작한 프로젝트를 설명하고, 코드 리뷰를 진행했습니다. 42서울에서 단련된 것인지 큰 어려움은 없었습니다.

기술면접 2차는 특수한 상황을 저에게 던져주고 순차적으로 어떻게 그 상황을 해결할 지 토론했습니다.

임원면접은 기술적인 질문30% 인성 질문 70%였습니다.

07. 멘토링(상근, 비상근)을 적극 사용하기

42서울에는 여러가지 좋은 것들이 있지만 가장 좋은것은 멘토링입니다.

정말로 피가 되고 살이 되는 조언들을 많이 해주십니다. 멘토님들은 우리의 미래 모습입니다.

그리고 만화 나루토를 보시면 ‘카카시’ 라고 남의 기술을 카피하는 닌자가 있습니다.

단순 카피 하는 것을 넘어 자기만의 기술로 바꿉니다.

멘토님들의 기술을 카피하고 자기만의 기술로 바꾸세요.

그렇다고 또 무지성으로 멘토님들이 말씀 하시는것들을 또 다 카피하진 마세요. 스스로 생각하는 시간이 필요합니다.

저는 42서울하면서 멘토링을 많이 받았습니다.

사실 멘토링을 한 이유를 적어보자면 (고민 해결 + 인맥 + 의욕상승)입니다.

고민 해결도 중요하지만 인맥도 정말 중요합니다.

제가 언제 대한민국에서 이렇게 뛰어난 멘토님들과 이야기를 해볼 수 있을까요?

여러분들도 인맥을 쌓아놓고 주기적으로 연락을 하세요. 멘토님들도 다 좋아하십니다.

42서울에서 1년 반 동안 멘토님들에게 정말 많은 것들을 배웠지만

기억에 남는 명대사들만 적어 놓겠습니다.

허광남 멘토님

남들 다 한다고 그냥 따라하지마라.

이호준 멘토님

니가 뭐한지는 하나도 중요하지 않다. 어떻게 사용했는지 왜 그렇게 사용했는지 니 이야기를 해라.

차경묵 멘토님

잘하고 못하고, 맞고 틀리고를 떠나서 니 이야기를 잘 설명할 수 있는 사람이 되어라.

박수현 멘토님

개발을 추측 하지말고 직접 해보고 느껴라.

배권한 멘토님

어려워서 못했다는 말은 하지마라. 그냥 일단 해라

이광헌 멘토님

개발 구조를 그림으로 표현하면 소통하기 쉽다.

08. 마무리

안녕하세요. 여러분의 동료 ji-park 입니다.

미숙한 저의 글을 읽어주셔서 감사합니다.

제가 적은 글은 살아오면서 느끼고 배운 내용입니다.

필요한 부분은 카피 하시고 필요없는 부분은 그냥 넘겨주시면 됩니다.

그리고 42서울은 정말 좋은 교육과 개발의 기회를 제공 해줍니다.

자기와 안 맞다고 생각이 들어도 그냥 묵묵히 해보세요. 상황이 사람을 만드니깐요^^

마지막으론 여러명의 멘토분들에게 멘토링 받아보세요. 그리고 싹싹하게 행동하시면 다 좋아하실거에요!