coding etude
[codestates] 2주 프로젝트 회고 본문
첫 시작, 첫 프로젝트
처음이라는 말은 언제나 혼란스럽고 겁이 난다.
첫 프로젝트.. 모든 것이 혼란스러웠다. 프로젝트를 시작하는 느낌은 마치 '자음과 모음을 배웠으니, 이제 장편소설을 하나 써보세요'와 같은 느낌이랄까..?
물론 첫 프로젝트를 진행하면서 나에게 바라는 것 '그냥 겁먹지도 말고 오버하지 말고 단어를 써보거나 가능하면 문자를 써볼까요?' 정도의 수준이랄까...
프로젝트팀과의 첫 미팅에서 하루가 부족할 정도로 많은 것을 정하고 토론하고 작성하고, 기획 자체는 거대 플랫폼 저리 가라 할 정도로 기획을 했다.
고난의 시작이였다.....
Back-end 란 무엇일까?
나에게 부여된 역할은 서버 구현과 DB의 관리. 계속 Front-end 만을 생각해 오다가 갑자기 Back-end 라니...
하지만, 이것이 오히려 배움의 기회가 될지도 모른다고 생각했고 검색, 검색, 검색,, 폭풍 검색을 하면서 어떻게든 만들어 나갔다. Front-end 와의 다른 점이라면.. API와 Schema를 얼마나 효율적으로 만드는 가에 달려 있다고 생각했다.
서버의 구현이 어렵지는 않았지만 DB 간의 관계 설정과 MVC 패턴의 controller 관리가 오히려 더 어려웠던 것 같다.
AWS (EC2, RDS)를 사용해보고 관리하는 일은 굉장히 신선했지만,, 생각보다 쉽지는 않았다.
기술은 배우면 되고 사용서 익숙해지면 된다지만.. schema는 도대체 뭐란 말인가.. 각 DB의 관계 설정을 해주고 sequelize로 associate를 설정해주는 것은 너무 어려워서 몇 날 며칠을 밤을 새 가며 공부헀던 기억이 난다...
개인적인 느낌으로.. Back-end의 꽃은.. schema가 아닐까 조심스레 짐작해본다..
소통의 중요성
서비스를 만들어 가면서 처음의 계획과는 다르게 기능들이 점점 축소되고, 2주라는 주어진 시간 내에 가능한 기능들만을 구현하기로 했다. 많은 의견을 주고받았고, 특히, Front-end와 데이터 전달부터 API의 처리방법까지 공유하면서 각자의 의견이 다른 경우, 의견은 같지만 방법이 다른 경우 등 여러 가지 문제점을 만나게 된다. 이런 상황에서 내 생각이 무조건 적으로 옳다는 생각을 버려야 한다. 나와 다를 뿐 틀린 것은 아니기 때문에 조금 돌아가더라도 각자의 의견을 존중하고 실행 후에 결과를 확인하는 것이 더 빠른 방법인 경우도 있었다.
결과를 보고 작동하면 하나의 다른 경험을 한 것이고, 안된다면 다른 경우의 수를 테스트해 볼 수 있는 좋은 기회였다.
2주 프로젝트를 마치며...
단순한 기능만을 구현했지만, 2주라는 시간은 나에게 많은 가르침을 주었다. 머릿속으로만 알던 지식들을 구현하고
또, 오류를 해결해 나가면서 나에게는 적지 않은 경험치가 쌓였고 그만큼 더 발전했다고 생각한다.
새로운 프로젝트를 진행하더라도 겁먹지 않고 꾸준히 진행해 나갈 수 있는 값진 경험을 이였다.
하나의 언어, 프레임워크, 모듈을 사용하기 위해서 그 기능을 자세히 알고 있어야 한다고 생각했고 앞으로 더 많은 것들을 공부해야겠다는 생각도 들었다.
스스로 공부하고 배우지 않으면 오히려 남에게 피해가 될 수밖에 없기 때문에 나를 위해서도, 나와 함께하는 동료를 위해서도 내가 발전해야 한다는 생각이다.
마지막으로.. 머릿속에 있는 지식을 직접 구현해봐야만 진정한 내 것이 된다는 것이다. 외우는 것도 중요하지만 직접 경험해 보지 않으면 보이지 않는 문제들이 많기 때문에 무엇이든 빠르게 읽어 본 뒤 하나씩 실행해 보는 방법이 좋은 것 같다.
'Dev Dialy' 카테고리의 다른 글
[project] React-TypeScript TODO List 회고 (0) | 2021.03.03 |
---|---|
[codestates] 4주 프로젝트를 마치며.. (0) | 2021.01.06 |
[codestates] 4주간의 Full PRE course를 마치며.. (0) | 2020.08.28 |