thumbnail
으랏챠피디아 프로젝트 회고(2021.12~)
Career
2021.12.24.

Github

https://github.com/ZB-Online/uratcha-pedia

개인 회고 (프로젝트 전반)

프로젝트 목표

개발자의 길을 걷기로 한 순간부터, 이번 프로젝트에 이르기까지 크고 작은 프로젝트 협업 경험을 몇 번씩 겪어봤지만 신기하게도 그 때마다 새로운 점을 깨닫는다. 새로운 주제로 새로운 환경에서 새로운 사람들과 함께 하는 일이니만큼 어찌보면 당연하다고 생각이 들기도 하지만 다르게 생각하면 그만큼 내가 아직 경험이 부족하고 배워야 할 것이 많다는 것이라는 생각이 들었다.

이번 프로젝트에서 나는 가장 중요하다고 여기는 단 하나의 목표가 있었다.

내 부족한 부분을 객관적으로 파악하고 개선할 방법을 강구하는 것.

메타인지를 통한 성장 경험

독학의 단점 중 하나는 현재 자신의 수준을 객관적으로 파악하기 어렵다는 점이다. 이를 전문용어로는 메타인지라고 하는데 개인적으로는 개발자가 메타인지를 하는 가장 좋은 방법은 팀 프로젝트를 하는 것이라고 생각한다.

다른 팀원들과 같은 주제에 대해 이야기하고, 서로의 작업을 봐주는 과정을 통해 내가 생각하지 못한 부분을 발견하거나, 새로운 시야를 넓히는 기회를 많이 가질 수 있기 때문이다.

이번 프로젝트에서는 특히 그런 기회가 무척이나 많았다. 프론트엔드 개발자로서 제대로된 팀 프로젝트 진행이 처음인 이유도 있었지만, 팀원들 모두 나와 다른 방향과 영역에서 웹을 공부해왔기 때문에 내가 미처 알지 못했던 부분을 도움 받거나 반대로 내가 도움을 주는 경우도 있었다.

대표적인 사례로 git의 경우 개인 프로젝트 당시에는 그다지 유용함을 느끼지 못했지만, 협업 과정에서는 git의 중요성과 활용도에 대해 제대로 느낄 수 있었다.

또한 팀원들과 리팩토링을 진행하면서도 내가 미처 생각지 못한 부분을 다른 팀원들이 아이디어를 제시하고 그 아이디어에 대해 토론하는 과정 속에서 내 사고의 범위가 한층 확장된다는 느낌을 얻을 수 있었다.

하지만 아쉬운 점도 분명히 있었다. 열정과 실력을 갖춘 팀원들과 함께 프로젝트를 할 수 있었던 것은 행운이었지만, 빡빡한 일정 속에 몸이 지쳐있는 상태에서 협업을 하려니 멘탈이 흔들리는 경우가 종종 있었다. 그러다 보니 협업과정에서 수동적으로 임한 감이 있고 더 팀에 기여할 수 있었음에도 그러지 못했다는 느낌에 아쉬움이 남는다.

개인 회고(기술)

코드의 재사용성

특정 기능을 개발할 때, 단순히 작동만을 위한 기능 개발이 아닌 그 기능이 앞으로 어떻게 사용되고, 더 큰 활용 범위가 생겼을 때를 고려해서 개발해야한다고 느꼈다.

내가 이번 프로젝트에서 가장 비중을 둔 것은 UI, 특히 메인 UI라고 할 수 있는 캐러셀(Carousel) 파트였다. 처음에는 단순히 캐러셀 기능만 구현하면 된다고 생각했지만 막상 구현을 하고 보니 다른 기능과의 호환성, 재사용성을 고려하지 않고 작성한 코드였기 때문에 그 가치가 현저히 떨어질 수 밖에 없었다. 결국 많은 시행착오와 함께 코드를 개선하고 나서야 비로소 코드를 한줄을 작성하는데 공을 들여야 하는 이유가 무엇인지 확실히 깨달을 수 있었다.

비동기 코드에 대한 이해도 증가

또 다른 하나의 성과라 할 수 있는 부분은 비동기 코드에 대한 이해도가 확실히 증가했음을 느껴볼 수 있었다. 과거에 이해가 부족한 상태에서 어플리케이션을 구현할 때는 값을 할당할 때 왜 값이 아닌 프로미스 객체가 반환되는지 이해도 안된 상태에서 비동기를 사용했을만큼 무지했다.

그러나 제대로된 기본 이론을 공부하고 실전에 적용함으로써 배웠던 개념들을 어떻게 활용하는지 경험할 수 있었다. 또 여기서 만족하는 것이 아니라 새로운 분야에 대한 학습을 할 때도 개념 지식을 알고 있어야하는지에 대한 이유를 다시 한번 깨달은 프로젝트였다.


© 2022 Developer Abel, Powered By Gatsby.