[회고] git-flow도 모르던 내가 소공전 총장상?!

손시연·2022년 12월 3일
0

회고

목록 보기
1/3
post-thumbnail

소프트웨어공모전을 준비하며 느꼈던 점을 정리해 보았습니다.

프로젝트 깃허브서버 깃허브데모 영상

📈시작

🍃휴학

6개월 간의 휴학동안 백엔드 공부를 시작했다. 나의 22살을 놀면서 낭비하긴 싫었다. 나중에 되돌아 봤을 때 후회하기 싫었다. (자세한 휴학 내용은 이곳에 기록하였습니다.)
5개월(2022.02.~2022.06.) 동안 본가에서 혼자 spring 강의만 주구장창 들으니 이젠 협업을 해보고 싶었다. spring 프레임워크를 이해하고 java8 공부를 했다. 비즈니스 로직까지 짤 수 있을 정도의 실력이지만 여전히 부족함을 느꼈다. 그렇게 휴학을 2달 앞두고 여름방학 때 공모전을 나가기로 마음 먹었다. 그동안 혼자 공부하며 쌓은 지식들을 협업을 통해 활용하고 싶었기 때문이다.

막상 협업을 시작하려고 하니 소위 백엔드는 API 서버를 구축한다고 하는데, 프론트가 어떻게 내가 만든 API를 사용하는지, 어떻게 API를 전달하는지 알지도 못했다. 협업과 관련된 지식이 너무 부족했던 것이다. 인강을 들으며 받아쓰기한 코드 뿐이라 생각했기 때문이다. 프론트엔드에서 내가 만든 API를 어떻게 사용하는지도 궁금했고, www.google.com 과 같이 나의 도메인도 만들어보고 싶었다.
그렇게 7월 초, 소프트웨어공모전을 위해 상경했다.

🫀간 때문이야

나(😇)의 친구의 친구로 구성된 팀 "간 때문이야"가 만들어졌다. 프론트엔드(🥭), 백엔드(🦖,😇), AI(👨‍🔧), 디자인(👩‍🎨) 로 구성되어 있다.
초반에는 🥭, 😇, 👨‍🔧 세 명으로 시작했다. 기획 중 아이디어를 확장하는 과정에서 온라인 미술간 느낌을 원했고, 디자인의 중요성이 크게 다가와 👩‍🎨을 영입하게 되었다.
팀 프로젝트가 처음인 나는 서버 개발이 막막했고, 운이 좋게도 🦖가 영입되었다. 뒤에서 얘기하겠지만 덕분에 많이 배웠고 개발자로서 존경한다.


📚기획

🖋️AI

ML/DL을 적용하면 겉보기에 멋진 프로젝트를 만들 수 있을 것 같아, 2주 간은 기획을 구상했다. 시키면 뭐든 잘 해내는 AI 개발자를 믿었기에 기획 초반부터 말도 안 되는 아이디어들을 막 던졌다. 챗봇, 영상처리 등 다양한 인공지능 기술을 고민했지만, 학습 알고리즘인 GAN, CNN 을 적용하기로 했다.
그렇게 만들어진 기획 초안은 다음과 같다. 이때까지만 해도 블록체인(NFT)를 적용할 거라곤 생각도 못했다.

🔑 GAN 알고리즘 : 특정 데이터 집합으로부터 판별자 모델과 생성자 모델이 서로 적대적으로 학습하면서 실제와 가까운 이미지, 동영상, 음성 등을 자동 생성하는 알고리즘
🔑 CNN 알고리즘 : 필터링 기법을 인공신경망에 적용하여 행렬로 표현된 필터의 각 요소가 데이터 처리에 적합하도록 자동으로 학습되는 과정을 통해 이미지를 분류하는 기법
🔑 NFT : 블록체인 기술을 이용해서 디지털 자산의 소유주를 증명하는 가상의 토큰


🔧개발

🎶보여줄게 완전히 달라진 나


7월 중순부터 9월 초까지 개발만 했다. 매일 도서관과의 약속이 생겼다😇 학교 중앙 도서관 2층에는 CPA/공무원 시험 준비생과 개발자들이 모여있는 곳이 있다. 오픈런해서 마감까지 찍고 가는 대단한 사람들,,, 나중에는 나도 그들 중 한 사람이 되어 있었다.

한번은 🦖에게 "개발이 취미야?" 라고 물어본 적이 있다. 답변은 충격적이게도 "응 그런 것 같은데" 였다. 개발이 취미라니.. 취미가 개발이라니.. 그 당시엔 다소 충격이었고 신기했지만, 지금 생각하면 내 취미도 개발이 되어버렸다😁

소공전 이후 가장 달라진 점이라면, 개발이 재미있어졌다는 것이다. 이전 프론트엔드 개발을 할 때는 "음 어떻게 짜지? 아 이렇게 하는 거구나.. 그렇구나.." 흐름이었다면, 소공전할 때는 "와! 이런 것도 있어? 와! 이게 이거였어?" 였다. 휴학하며 배운 것들 혹은 유튜브 이곳저곳을 방황하며 들은 것들을 실제로 적용해보고 공부하니 재미있을 수 밖에 없었다.

👧응애에서 개린이로

지금 생각하면 무슨 자신감으로 공모전에 도전했는지 참 패기있었던 것 같다. 함께 백엔드 개발을 할 🦖이 첫 회의 후 나에게 보낸 메시지이다.그렇다.. 난 git도 몰랐다...
첫 회의 때 카카오톡 로그인 로직은 미리 짜놨고 🦖께 검토를 받았는데, 첫 질문이 "왜 master 브랜치에 바로 커밋하셨어요?" 였다. 그렇다.. 난 git branch 전략도 몰랐다...

공모전을 하며 merge하는 것, commit 컨벤션에 따라 작성하는 것, 브랜치를 업데이트하는 것 등 많이 혼나며 배웠다. 지금 생각하면 브랜치도 못 다루는 팀원과 협업을 한 🦖께 너무 미안한 마음이 크다🙏

git도 다룰 줄 몰랐던 내가, NFT까지 해낼 줄은 몰랐다. 기획 단계에서 시간나면 NFT 해보자였는데, 두 달간 온 정신을 프로젝트에 몰두하다보니 점점 욕심이 났고 결국엔 해냈다✌️

💻개발 스타일의 변화

처음 프로젝트를 시작할 때, 팀원들에게 모르는 것을 물어보는 게 겁이 났다. "이것도 모르냐?!" 라고 생각할 것 같았기 때문이다.(그 예가 브랜치 전략과 머지하는 방법이었습니다 ^^) 그러나 어려운 것 있으면 항상 말해라~ 같이 고민하자~ 라고 말하는 팀원들을 보면서 마음이 한결 편안해진 것 같다.

비단 백엔드 팀원끼리 뿐만 아니라 백엔드-프론트엔드, 백엔드-인공지능, 백엔드-디자인 등 모든 팀원들과 커뮤니케이션을 해야 서로 이해관계가 조금이라도 좁혀진다고 생각한다.

개발은 새벽에 혼자서 하는 느낌이었는데, 이젠 열린 공간에서 사람들과 소통하며 이것저것 물어보고 개발하는 이미지로 바뀌었다. 개발은 혼자하는 것이 아니다. 내가 당연하게 생각한 것을 남이 모를 수 있고, 또 그 반대가 될 수 있다. 설명해주면서 내가 가진 지식을 상기시켜보고 탄탄하게 할 수 있어 장점이 크다.

😿공모전의 한계

이번 공모전을 통해 엄청난 성장을 이뤄냈다. 잘 하고 싶다는 욕심 + 휴학 후 첫 공모전이라는 생각 + 힘들어도 이겨내겠다는 믿음 + 팀장으로서의 책임감이 합쳐져 좋은 결과를 이끌어냈다.🔥 또 구멍없이 최선을 다하는 팀원들과 함께 시너지를 이뤄냈다.🎇

다만 공모전을 하며 크게 느낀 공모전의 한계는 더이상 이어나가기 힘들다는 것이다. 물론 플바플(프로젝트 by 프로젝트), 팀바팀(팀 by 팀)이긴 하지만, 지금 해왔던 모든 공모전들은 공모전이 끝나고, 시상을 하고, 상금을 받으면 그대로 끝이었던 것 같다.

미슐간 프로젝트를 계속 이어나가고 싶다는 생각이 많이 들었다. 특히 사용자가 많아지고 대용량 트래픽을 처리해보고 싶다. 서버 부하 테스트를 진행해보며, 언제 내 서버가 터지는지 등을 알고 이에 대비하는 연습을 해보고 싶다.


✌️결과물


🥇총장상

결국 우린 총장상을 받게 되었습니다!!


👜총평

  1. 내 인생에 있어 가장 후회없는 순간 1위
    • 후회하지 않을 만큼 최선을 다했고, 성장했고, 달라졌다.
  2. 개발은 재밌다!
profile
Server Engineer

0개의 댓글