Light Blue Pointer
본문 바로가기
Developing/개발일지

2023-10-20 Today I Learned

by Greedy 2023. 10. 20.

일단 부트캠프를 듣기로 한 걸 정말 잘 했다고 생각한다

혼자 있었으면 아무것도 안 했을텐데 일정이 있어서 따라가려고 하는 것만 해도 그렇고 열심히 하는 사람들을 온라인으로도 본다는 게 나한테 긍정적인 영향을 미치고 또 멘토분들도 특강이나 상담으로 도움을 좀 주셔서 내가 더 나아가는데 상당히 도움이 된다 의지력도 점점 생기는 거 같다

 

부트캠프에서 키오스크로 주문하는 과제 내줘서 하는데 내가 부전공으로 처음 코딩을 시작했을때 받은 과제랑 비슷해서 그때 생각이 났다 그때는 Main에다 모든 if else를 다 써서 코드가 정말 길고 복잡했다 

그때 짜던 코드가 하도 허접했어서 그때에 비해 좀 발전했나 싶기도 한데 아직도 if else로 난리나고 Main을 떠났다고 하더라도 한 데 뭉쳐서 분리도 잘 안 될 뿐더러 상속 개념도 잘 이용하지 못한다는 생각이 들었다

1인분 하는 개발자가 되려면 아직도 먼 것 같다 그냥 자바 언어에 대한 책 한 권을 뗀 상태고 개발에 대한 건 아직 내 뇌에 형성이 전혀 안 되어있다는 생각이 들었다 앞으로 많이 성장해야 좀 봐줄만 한 상태가 될 것 같다 부트캠프에서 코드 리뷰를 해준다는데 그게 기대된다

 

그리고 19일 저녁에는 멘토링을 한시간 정도 받았는데 상당히 도움이 많이 되었다 

거의 멘토분이 말씀하는거 듣기만 하긴 했지만 내가 적극적으로 질문하고 사람에게서 나에게 도움될만한 조언을 이끌어 낼 수 있는 사람은 아니기에 나에게 적합한 멘토분이라고 생각했다

 

멘토 분이 생각하는 좋은 개발자란 자기객관화가 잘 된 개발자라고 한다 내가 뭘 알고 뭘 모르는지 모르고 도움을 청하지 않으면 자존심때문에 모든 문제가 시작된다고 하는데 과거에 내가 그런 적이 있기 때문에, 그리고 내가 대충 사는 모습이 남들에게는 오만하게 보일 수 있다는 걸 알고 들으니 좀 더 뼈아팠다. 생각해 보면 맞는 말이다 성장하려는데 벽이 없으면 없을수록 도움이 되지 낯가림이든 배움을 청하지 않는 자세든 도움이 될 리가 없지

사실 대충 하는 건 오만한게 맞기도 하다고 생각한다 꿈이 있으면 그걸 성취하기 위해서 최선을 다 해야 하는데 하고 싶은 일만 힘들지 않을 정도로 하면서 꿈을 이루고 싶어하는게 오만한 게 아니면 뭐지?

나의 오만함을 반성했다 나의 성장 가능성을 내가 저해하는 모습은 당장 그만두는 것이 좋겠다

 

나는 어떤 개발자가 되고싶은지 그렇게 깊게 생각을 해 본 적이 없다

미래를 생각하며 코드 유지 보수가 용이하도록 코드를 잘 설계해서 짜는 개발자라고 그냥 어디서 주워 들은걸 내 의견인 양 면접 비슷한 것만 있으면 말하고 다녔지만 그건 내 생각이 아니다. 내가 되고싶은 개발자는 뭘 맡겨도 구현에 성공하는 개발자, 아무 회사나 들어가서 당장 취업을 할 수 있는 개발자, 개발을 해서 해외를 나갈 수 있는 개발자, 그 정도였다 

그런데 개발자라는 직업이 이렇게 대충 임해서 할 수 있을 직업인지에 대한 생각을 좀 하게 됐다

그리고 개발자가 된다는 건 이런 마음가짐으로 해서는 될 일이 아니라는걸 깨달았다

개발자가 되고 싶다고 예전에 말한 것과 앞으로 내가 개발자가 되고싶다고 말하는 것은 의미가 완전히 달라졌다고 생각한다

예전에는 그냥 아무 회사에나 취업해서 돈을 버는 사람이었는데 앞으로는 그 이상의 가치와 능력을 추구하는 사람의 의미일 것 같다 스스로 멋지다고 생각하는게 돈이나 회사에서 오는 게 아니라 내가 얼마나 통찰력있고 생각이란 걸 잘 하는지에 기인하게 될 거 같다고 생각한다

 

그리고 하루동안 다른 개발자 선배들 의견도 물어보고 좀 생각해봤다.나는 아직 개발자로 일하면서 경험과 생각이 쌓인 것도 아니고 나 스스로를 개발자라고 칭할 만한 능력도 없어서 지금 내가 생각해낼 수 있는 것에는 한계가 많을 것이라 생각한다. 

아무튼 내가 지금 되고싶은 개발자는 두가지이다.

 

1. 코드에 이유가 있는 개발자

2. 무엇을 왜 개발해야 하는지 정확히 이해하고 효율적으로 설계하는 개발자

 

1번은 부트캠프에서 사전캠프 후 미니프로젝트를 하면서 느꼈는데 나는 그때 "뭘 맡겨도 구현을 할 수 있는 개발자" 가 추구하는 바였기 때문에 알지도 못하는 자바스크립트랑 제이쿼리를 하루종일 구글링하고 조금의 힌트라도 얻으면 그거에서 유추해서 추가로 구글링하거나 적용해보고 그게 되면 쾌감과 안도감을 느꼈다 그리고 맡은 바를 구현해 내서 팀에 짐이 되면 안 된다는 생각에 계속 일했다 근데 팀원이 내가 짠 코드에 대해 질문하면 나도 모른다고 대답했다 왜나하면 작동이 될 때까지만 하고 넘어가서 다음 일을 바쁘게 했기 때문이다

반면 팀원은 할 수 있는 일을 빠르게 잘 하고 남은 시간은 코드를 뜯어보며 분석하고 파일 구조나 함수 구조를 개선하는데 썼다 

사실상 뭘 자꾸 개발하려고 일만 비효율적으로 맨땅에 헤딩하면서 해대고 생각은 안 하는 태도가 성장이랑은 거리가 멀지 않을까 생각했고 한 줄을 써도 거기에 대한 이유를 댈 수 있는 개발자가 되고 싶어졌다

 

2번은 본캠프 시작하고 키오스크 개인 과제를 하면서 생각하게 됐다 나는 상속 구조랑 뭘 어떻게 처리해야하는지 생각하지 않고 그냥 습관적으로 함수로만 짜기 시작했는데 어떤 사람이 클래스 구조에 대해서 고민하는 글을 고민방에 올린 걸 보고  이렇게 돌아가기만 하는 코드가 목표인 것보다 더 상위의 개념의 목표를 가져야 한다고 생각하게 되었다

 

미니프로젝트가 끝나고 며칠간 늘어져 있었는데 다시 열심히 살아야겠다고 느낀다

그 전에는 남들이 하는 만큼은 해야 한다고 느끼면서 목표가 남들만큼 열심히 사는 것 그 자체여서 항상 허덕거렸던 것 같다

열심히 하는 것은 상태이지 목표가 되면 안 되고 뭔가 그것을 초월한 상위개념의 목표가 있으면 자동적으로 그렇게 되는 거 같다고 생각하게 되었다

 

그리고 멘토링을 받으면서 면접에 가서 내가 자신있게 말할 수 있는건 내가 이걸 구현했어요 가 아니고 내가 이걸 어떤 생각으로 어떻게 설계했어요 인 것을 알게되었다 여태까지 쓴 자소서가 다 쓰레기였다는 것을 막연히 알고 있었지만 어떤 의미에서 쓰레기였는지 더 명확하게 알게 되는 유익한 시간이었다. 

 

그리고 다양한 걸 많이 개발해보고 나중에 디자인 패턴 아키텍쳐 등을 공부하고 다시 뜯어고치는 실습 재료로 사용하라고 했다 키오스크 과제를 하는데도 예전이랑 다른게 눈에 들어오긴 하니까 더 공부하고 다시 보면 또 다를 거 같고 그때 바로 연습할 대상으로 삼을 수 있는 샘플들을 어느정도는 확보해 두는게 좋을 것 같다

 

코딩테스트 공부도 하루 전에야 시작했는데 나의 현재 상태는 프로그래머스 Lv.1 푸는데도 파이썬 딕셔너리도 모르고 효율적이고 간결하게 이용하지도 못하는 상태이다

내가 코딩테스트 공부를 시작하면서 세운 목표는 그냥 문제를 그냥 푸는거, 동작하는 코드를 만들어서 매일 제출하는 거, 그것 뿐이었는데 코드 제출하고 나서 남들이 쓴 코드를 공부할 겸 보니까 내 코드가 너무 질이 낮아 보였다

다른 사람들 코드는 간결하고 멋지고 간결한 코드에서 미학적인게 느껴진다 

코테 푸는데 수능 기출 처음 돌릴때 느낌이 났다 내가 그만큼 허접하다는 증거겠지 ㅋㅋ 

앞으로 기출마냥 달달달 풀어서 좀 스스로 할 줄 안다고 느끼는 사람이 되고싶다

AI가 1단계 5개 이상 풀어야 다음 문제 추천해 준다길래 1단계부터 풀었는데

부트캠프 튜터분들이 0단계 추천하는 걸로 봐서 걍 0단계 풀면서 기본기나 제대로 닦는게 더 좋을 수도 있을 거 같다

애초에 파이썬 한번 훑어만 보고 제대로 체화가 안 된 상태이기 때문에 그냥 0단계부터 차근차근 늘려가기로 했다

나는 살아오는 내내 의지력에 비해 욕심이 많았기 때문에 1단계 문제도 포기를 못 해서 1단계 문제도 날마다 하나씩 풀면서 0단계 문제를 5개씩 풀기로 했다 그리고 파이썬으로 한 번 풀고 자바로도 한 번 풀기로 했다

 

그리고 이틀에 걸쳐서 하루 4시간정도 개인과제를 했는데 정병이 싹 치료되었다

내가 짠 코드가 코딩 처음 시작했을때 내가 Main에다 하드코딩하던거랑 다르고 좀 간결하게 잘 정리해낸 거 같아서 기분이 좋다 그때보다 진짜 많이 성장하긴 했구나 하고 느껴진다

static을 너무 많이 쓰긴 했어도 좀 잘 한듯!

 

 

 

 

 

 

 

 

 

 

 

'Developing > 개발일지' 카테고리의 다른 글

2023-10-25, Today I Learned  (0) 2023.10.27
2023-10-23 Today I learned  (0) 2023.10.23
2023-10-19, Today I Learned  (1) 2023.10.19
2023-10-10, Today I Learned  (0) 2023.10.10
2023-10-07, Today I Learned  (0) 2023.10.07