많이 부족함을 느꼈던 실전 프로젝트 1주차였다.
팀원들과 의욕적으로 프로젝트를 계획하고 나름 세밀하게 앞으로의 목표들을 설정하였다고 생각했으나 실상은 그렇지 않았다. 돌이켜보면 요구사항들을 작성하지 않은 채 실제 기능들을 작성할 때 로직들을 구현해봐야겠다고 넘어간 부분들이 많은 것 같다. 팀 프로젝트를 살펴본 기술 매니저님도 이러한 부분들을 짚어주셨다. 정확하게는 특정 기능에 대해서 이런 기술을 써야지라는 접근법이 아닌, 특정 기능을 어떤 식으로 구현할 것이고 이에 맞는 기술은 어떤 게 있을지 찾아보는 과정이 필요하다고 피드백하셨다. 아무래도 막연하게 MSA를 해보고 싶다라는 생각만 가지고 있었기에 이러한 일이 발생한 것 같다. 다행인 것은 1주차에 이러한 문제들을 직접적으로 느낄 수 있었고 빠르게 이를 수정할 수 있다는 점이었다. 설계의 중요성이 얼마나 큰지 느낄 수 있는 1주차 과정이 아니었나 싶다.
다시 검토해야할 문제는 총 3가지이다.
1, 계획한 프로젝트의 요구사항 분석
-> 기존에 이 부분을 제대로 작성하지 않았기 때문에 디테일한 부분에서 팀원들의 토의가 발생했던 것 같다. 명확하게 이러한 조건에서 이러한 이벤트가 발생한다가 아닌, 이러한 이벤트가 있을 것이다라고 생각하고 결론을 내렸기 때문에 다시 설계를 시작하는 2주차에서는 해당 부분들을 확실하게 짚고 작성하며 넘어갈 계획이다. 사실상 설계만 완벽하다면 코드 작성에서도 효율적인 시간 투자가 이루어질 것이라고 생각하기 때문에 2주차 시간 전부를 설계에 투자하는 것도 나쁘지 않다고 생각한다.
2.MSA
-> 기존에는 단순히 서비스를 최소단위로 쪼개어 필요한 서비스 기능을 부분적으로 서버증설이 가능한 방식이라고 생각했다. 물론 이러한 개념이 MSA가 가진 장점이라고는 할 수 있으나 MSA 그 자체라고는 볼 수 없다. 따라서 MSA에 대해서 좀 더 깊이있게 공부하고 MSA를 효과적으로 설계할 수 있는 Domain Driven Design에 대해서 공부하고 프로젝트에 적용해볼 생각이다.
3.사용하고자 하는 기술들과 기술적 의사결정
-> 프로그래밍을 공부하면서 가장 힘들었던 것은 생소한 단어였다. 단어자체가 워낙 어렵게 느껴지다보니 해당 기술도 어렵게 느껴지는 일이 많았다. 하지만 스프링을 처음 공부할 때처럼 이러한 두려움은 기술적 무지때문에 생겨난 것 같다. 결국 해당 기술을 적절하게 선택하고 효과적으로 이용하기 위해서는 기술의 발생 배경과 기대되는 효과들을 살펴볼 필요가 있다.
그래도 긍정적인 건 잠시 잊고 있었던 재미를 다시 되찾았다는 점이다. 처음에는 이걸 할 수 있을까, 시간이 부족하지 않을까하는 걱정들로 꽤 조급해했던 것 같다. 좋은 팀원들과 함께 프로젝트를 잘 해보고 싶다는 욕심이 컸기 때문에 재미보다는 걱정이 앞섰던 것 같다. 게다가 기본 배경지식들이 팀원들 중 가장 떨어진다고 생각했기 때문에 이런 부분들을 어떻게 커버해야할지의 고민도 깊었다. 하지만 1주차 과정을 지난 지금은, 비록 타 팀과 비교해서 느린 스타트라고 할 순 있겠지만, 본격적으로 어떤 것을 공부해야하고 무엇을 알고 있어야하는지 윤곽을 잡을 수 있었다. 어려운 과제지만 모르는 것들을 알아가는 과정이 곧 놀라움을 느낄 수 있는 과정이라는 걸 알고 있기 때문에 이전처럼 막연한 걱정이 들지는 않는다. 오히려 어떤 것을 배울 수 있을지 꽤 기대가 된다.
실전 프로젝트에서 가져가고 싶은 개인의 목표는 어떤 것인가라고 질문했을 때, 나는 단순히 코드만 잘 작성하는 것이 아닌 전체적인 흐름을 이해하고 이에 맞는 아키텍처를 결정할 수 있는 사고력과 판단력을 키워보고 싶다고 말할 수 있을 것 같다. 남들이 프로그래밍 공부를 왜 시작했냐고 물어볼 때 나는 재밌어보여서, 게임을 하다보니 컴퓨터로 어떤 서비스를 만드는 게 궁금해져서, 개인의 성장이 시각적으로 보이고, 이러한 성장은 곧 팀의 성장으로 직결돼서 라는 이유들로 답을 했던 것 같다. 모두 맞는 말이지만 진지하게 이런 프로그래밍 공부를 시작한 이유를 생각해보면 궁극적으로 '안주하는 삶을 살고 싶지 않아서' 이다. 대학생 때까지만 해도 안주하는 적당한 삶이 목표였는데 왜 이렇게 바뀌었을까 라는 생각이 든다.
돌이켜보면 나는 크게 굴곡없이 인생의 중요햔 이벤트들을 통과했던 것 같다. 내신성적을 잘 쌓고, 적당한 수능 성적에 무난한 대학교를 들어가고, 이해가 잘 되지 않는 전공공부를 하면서 평범하게 학점을 받고 조용하게 졸업했다. 이 후에도 별다른 노력없이 계약직으로 일하면서 앞으로 어떻게 취업할 것인지에 대해 고민하는 삶을 살고 있었다. 그렇게 내가 대학교 때 바랬던 안주하는 삶의 로드맵을 잘 따라가고 있었던 것 같다. 그러다 문득 지금 삶이 재밌나? 라는 생각이 들었다. 삶의 어떤 목표가 있는 것도 아니고 그렇다고 내가 무엇이 되겠다라는 생각은 없었는데, 내가 재밌어하는 삶인가에 대한 질문은 무시할 수 없었다. 내가 재밌어하던 게 뭐였지라는 질문이 들었던 것도 이 때쯤인 듯 하다.
그 길로 하던 일도 관두고 집에 돌아와서 아무것도 하지 않는 삶을 살았던 것 같다. 내가 재밌어하는 것을 찾을 때까지라는 데드라인을 설정해두고 시간을 보냈다. 남들 눈에는 하는 것도 없이 집에만 있는다고 비춰졌던 거 같은데 이 때만큼 고민이 많이 됐던 시간은 없었던 것 같다. 자아실현, 사회활동, 경제적 독립으로 직결되는 취업에 대한 계획을 세워야할 때 나는 내가 재밌어하는 걸 찾고 있었다. 그리고 그 답은 생각보다 가까운 데서 찾을 수 있었다.
마음에 드는 게임이라면 꽤 오랫동안 푹 빠져서 플레이하곤했다. 대개 축구랑 관련된 게임들이긴 했는데, 이 전까지는 단순히 해당 게임을 플레이하는 게 재밌다고만 생각했었다. 그러다 이 게임을 컴퓨터로 어떻게 만든거지? 라는 생각이 들었고 컴퓨터로 어떤 서비스를 구현한다는 거에 호기심이 생겼다. 구글링을 통해 코딩이라는 것을 알게 되었고 코로나 기간 때 개발자에 대한 수요가 엄청 높았다는 점, 또 요즘은 너무 많은 사람들이 코딩을 공부한다는 인터넷 투정도 찾아볼 수 있었다. 모든 정보를 제쳐두고 개발이라는 것이 내가 해보고 싶은 것인가라고 스스로에게 질문했을 때, 개발 캠프 지원과 자기소개 영상을 제출하는 것으로 답했다. 실제 부딪혀보고 어떤지 생각해봐도 늦지 않겠다는 생각이 들었기 때문이다.
결과적으로 나는 내 지금 모습이 꽤 마음에 든다. 스스로가 필요하다고 느껴서 공부를 하고, 이 과정에서 놀라움을 많이 느끼고, 더 나아가 좋은 사람들과 의견들을 교환하면서 더 좋은 코드, 프로그래밍에 대한 접근방법들을 익히는 과정들이 즐겁다. 예전부터 무의식적으로 꽤 갈구했지만 쉽사리 느낄 수 없었던 재미를 경험하고 있다. 진부한 표현이지만 사막에서 신기루처럼 느껴지던 오아시스에 걸어들어온 느낌이 든다. 무엇보다 당장 오늘 하루가 어떨지, 힘들지만 않았으면 좋겠다 와 같은 걱정이 아닌 오늘은 어떤 걸 배우고 이를 활용할 수 있을까라는 생각을 가지고 살아간다는 점이 좋다. 안주하지 않은 채 발전하고 싶어하는 삶을 산다는 건 정신적으로 꽤 건강한 삶인 것 같다.
매번 회고를 쓸 때마다 느끼지만 갑자기 이상한 길로 빠져서 쓸데없는 소리들을 늘여놓은 것 같다. 나중에 읽어보면 좀 부끄러울 것 같다. 그래도 지금 느끼는 감정 그대로의 날 것을 느끼기에는 이만한 쓸데없는 소리도 없을 듯 하다. 어쨌든 요즘은 꽤 행복하다. 스스로가 좀 더 발전하고 싶어하는 걸 느낄 수 있고, 이 욕심이 유쾌하게 느껴지기 때문이다. 과거의 현 상황에 안주하고, 또 안주하는 삶을 살고 싶어했던 내 모습은 어쩌면 발전하는 자기 자신을 제대로 못 느껴봤기 때문이라는 생각도 든다. 오늘 회고를 기점으로 앞으로 누군가 내게 왜 개발 공부를 시작했냐고 물으면 '안주하지 않고 노력하는 삶이 이렇게 재밌는 건 줄 몰랐는데, 개발 공부가 이를 알게 해주었다' 라고 답할 수 있을 것 같다.
쨌든 앞서 말한 세 가지를 중점적으로 2주차도 열심히 달려가봐야겠다.
'프로젝트 회고 > 주차별 회고' 카테고리의 다른 글
이노베이션 10주차 실전 프로젝트 회고 3 (0) | 2023.08.20 |
---|---|
이노베이션 9주차 실전 프로젝트 회고 2 (0) | 2023.08.14 |
이노베이션 7주차 클론코딩 회고 (1) | 2023.07.27 |
이노베이션 6주차 미니 협업 프로젝트 회고 (0) | 2023.07.21 |
이노베이션 3,4,5 주특기 회고 (0) | 2023.07.13 |