두달, 짧으면 짧고, 길면 긴 날들이다.
그동안 프로젝트 하나(소중한 프로젝트!!!)가 끝났다.
프로젝트 github : https://github.com/Starlight258/BDBD
우리 팀 성과
아이디어톤: 팀워크상
카테캠: 라춘상(1등~~~) 받았다.
애정이 담긴 프로젝트를 종료하며 이번 프로젝트를 하며 느꼈던 것들을 적어보려고한다.
팀장으로서의 나
나는 백엔드 팀장을 맡았다.
사실 나는 팀에서 테크리더를 맡고 있는데, 우리 팀 팀장이 프론트 분이고 백엔드에 팀장 역할을 맡을 사람이 필요해서 맡았다.
팀장을 하면서 느낀 것들이 참 많다.
팀원들을 파악하고 역할 분담하는 것이 팀장이다.
팀장은 일을 앞에서 이끌어야한다.
그 말은 팀원들의 output을 파악할 수 있어야하고, 적절한 업무를 할당할 수 있다는 뜻이다.
초반에, 나는 팀장으로서 해결되지 않은 팀원의 일을 다 맡아서 했었다.
하지만 그건 협업이 아니라, "그냥 내가 다 할게" 마인드이다. 그렇게 해서는 전체적으로 좋은 결과물을 얻을 수 없다.
또한 팀원들이 성장하는 기회를 막아버린 셈이 된다. 그 일을 해결하므로써 그 사람이 얻을 수 있는 지식을 가로쳐버린게 된다.
그땐 프로젝트 한달 반이라는 짧은 시간 속에서 다 알려주면서 하기가 어려웠기때문에,, 그랬던 것 같다.
읽는 사람은 예상했다시피 중반에 번아웃이 세게 왔다.
내가 극 J인데, 매주 쏟아지는 기능 구현 목표와 팀원들이 맡은 부분 코드 리뷰, 버그 수정, 팀 관리 + 잘해야한다는 압박감과 함께 점점 다가오는 제출기한... (+인턴 플젝..)
(읽기만 해도 😔)
우리팀 팀장(프론트)에게 말하고 팀원들에게도 내 상황을 말하고,, 하루동안 회사도 휴가 내고 아무생각 없이 누워있었다.
내 스스로 너무 많은 짐을 지고 있었다.
결과물이 좋아야하는데,, 팀장으로서 예상한 기한까지 다 구현되어야있어야하는데,, 구현 안된 부분은 어떻게든 시간을 쏟아서 구현해야지,,이런 것들
그 이후로 역할 분배에 대해 생각해보게 되었다.
각자 할 수 있는 것들.. 누군가 a를 잘하면 다른 누군가는 b를 잘한다. (아무것도 못하는 사람은 없다-의지부족빼고)
혹시 내가 과소평가한게 있는지 살펴보고, 남은 것들 중에 누가 어떤것을 맡으면 좋은 결과가 나올지 생각하는 시간을 가졌다.
그리고 팀원들과 각자의 사정을 이야기하고 공감하고,, 프로젝트가 진행될 방향을 논의했다.
그 이후로 나는 잔소리 폭탄이 되었다. 😄(미친거 아님...)
팀원들에게 적절히 일을 분담하고, 도움이 필요할때 허들을 켜며 각자가 맡은 일을 다 하도록 했다.
기한이 얼만큼 남았다,, 지금은 어떤 기능이 완료될 시기이다,, 이렇게 잔소리도 많이 하고
어려운거 있어? 도움 필요해? 잘 되고 있어? 진행도를 파악하기 위한 질문도 많이 했다..
그리고 물론, 나도 팀장으로서 맡은 일의 그 이상을 해내며 최선을 다했다.
역할 분담이 잘 된 시점 이후에는 막혔던 기능 일정들이 술술 풀려나가고, 구현할 양 그 이상을 할 수 있었다.
내 스스로도 스트레스가 덜 해서 프로젝트의 다양한 부분을 고려하고, 팀원들의 코드를 파악할 수 있었고,
정말 무엇보다도 팀 분위기가 더 좋아졌다.
그 전에는 해야할 일 뭐뭐. 이런식이었다면 지금은 ~~구현하는데 ~~가 잘 안된다. 기능 구현해봤는데 어떤지 등등 적극적인 소통 분위기가 생겼다.
내가 체력이 더 좋았더라면 팀장이 해야할 일이 무엇인지 깨닫지 못할 일들이었다.
(번아웃은 4일도 안되서 지나갔다-번아웃을 느낄만큼 여유롭지가 않다..흑흑)
즉, 팀장은 단순히 일 많이하거나 일 시키는 사람이 아니라 팀이 함께 일을 하도록 만드는 사람이다.
기억할 것, "모든 팀원은 자신이 팀에 도움이 되길 바란다."
1등하고나서 삼겹살에 소주하면서 우리 팀 회식하는 자리를 가졌다.
잔소리 폭탄인 나에게 좋은 말이 오려나,,혹시 혼나지 않겠지 내심 기대하고(??)갔는데
감사하게도 덕분에 마감기한 잘 지킬 수 있다고 고맙다고 하고 능력자라는 칭호도 받고 팀한테 없어서는 안될 사람이라고 감동섞인 말도 듣고 진짜 울 뻔했다..
앞으로도 팀장을 맡을 기회가 오겠지만 이번 프로젝트를 하면서 쌓은 경험으로 더 나은 팀장이 될 수 있을 것 같다.
팀원으로서도 모범형 팔로우쉽이 뭔지 제대로 보여줄 수 있을 것 같다.
팀장은 팀 분위기를 만들어가는 사람이다.
팀장은 팀 분위기를 만들어가는 사람이다.
영향력이 많은 사람일수록 사소한 말까지 다른 사람들에게 영향을 미칠 수 있으니 조심해야한다.
나는 처음에 우리 플젝하러 모였고, 멋진 플젝 하나 만들면 된다! 이 마인드였고 그 외에는 생각을 안했다.
하지만 어떻게 보면 이런 비즈니스적 마인드가 항상 최고의 결과물을 내는가?에는 회의를 가지게 되었다.
동료들과의 스몰토크, 서로의 상황에 대한 이해, 공감이 팀 분위기를 부드럽게 하고,
좋은 팀 분위기는 팀원들이 팀에 애정을 갖게 하는 이유가 된다는 사실을 알았다.
애정이 생기면, 팀원들이 팀에 기여하기 위해 더 열심히 노력한다.
마감기한 2-3주 전부터는 연구실에 모여서 밤 엄청 새고 공 7 2-3시에 시끄럽게 이야기 하는 사람들 보면 우리였을 정도로 다들 고생이 엄청 많았다.
이런 고생은 팀과 팀원을 사랑하는 마음,, 그리고 밤을 새며 만들어진 전우애 덕분에 이겨낼 수 있었다.. ㅎㅎㅎ
팀 분위기를 내가 만든 건 아니지만, 팀 분위기를 좋게 만드는 두 친구 (☘️🐤) 를 보며 나도 말을 둥글둥글하게 말하려고하고
공감하기 위해 노력하고 그랬던 것 같다.
다음에 협업을 하게 된다면 팀 분위기를 부드럽게 하는데에 나의 기여도가 어느정도 있으면 하는 바람이고,
팀장이 된다면 더욱 더 팀 분위기를 신경쓰도록 할 것이다.
테크리더로서의 나
이번 플젝은 사용자와 사장님 모두를 위한 플랫폼이 목표였다.
그래서 프로젝트 시간(1달 반)동안 구현할 기능도 엄청 많았고, 구현 난이도도 있었다.
예약 시스템 + 관리 시스템이 핵심이었는데 그 부분은 내가 맡았다.
사실 아까 말하기도 했는데 번아웃이 올정도로 열심히 했다.(캡스톤보다...)
회사가 6시에 끝나는데 이때부터 밥도 안먹고 9시-10시까지 개발하고 회의하고
집 와서 새벽 2-3시까지 개발하고 주말에는 어림도 없지 연구실 가서 하루종일 개발하고
믿기지 않겠지만 추석 내내 밥도 안먹고 연구실에 틀어박혀서 코딩을 했다.
테크리더 + 백엔드 팀장으로서 맡은 일 + 팀원들이 구현하지 못한 코드 구현 + 팀원 코드 리뷰 + 버그 수정 + 인턴.. 진짜 과로사 올 뻔 했다(자랑은 아님)
중반부터는 내가 할 일 + 팀원들 코드 리뷰가 내 담당 부분이라 스트레스도 덜 했고, 오히려 프로젝트에서 신경 쓸 부분을 더 볼 수 있는 시간이었다.
일화라면, 중간에 내 스스로 알을 깼다고 생각한 시기가 있었는데(아브락사스?) 추석 마지막 날 이었다.
막차 시간을 예상하며 9시에 연구실에서 개발하고있었는데, 갑자기 인텔리제이 코드들이 선명하게 보이는 거다.
술술 잘 읽히기 시작했는데, 아마 그때부터 개발 퍼포먼스가 확 늘었던 것 같다. (양치기의 효과.? 🐑)
다음 프로젝트에서는 구현 뿐만 아니라 퍼포먼스를 높이기 위한 기술 접목도 해보고 싶고
refresh token, redis, elastic search 꼭꼭 써보고 싶다! ㅠㅠ
팀원으로서의 나
나는 백엔드의 팀장이기도 하지만, 10조의 팀원이기도 하다.
팀원으로서 하나의 알을 깬 시기가 있어서 이야기해보려고한다.
때는 아이디어톤이다.
사실 아이디어톤때는 2단계 우수자 영상 찍는다고 준비하느라고 100% 집중하지도 못했고,
잘 되겠지..하며 내가 맡은 일만 했던 나다.
그냥 딱 멀리서 봤을때 적당히 열심히 하는 팀원 1 정도였다.
2박 3일동안 열심히 하며 춤도 추고(지금 생각해도 너 왜 췄니..?) 머리 쥐어뜯으면서 기획하고 꽤 열심히 했던 것 같다.
하지만, 마지막 시상식에서 우리 팀이 수상을 하지 못했다.
레크레이션에서 레고를 제일 높게 쌓아서 받은 팀워크 상을 받았다. (하지만 다들 수상을 원했다구 T.T)
수상작 발표후 풀죽어있던 팀원들 모습, 누워서 골골거리던 팀원들 (나도 그랬다) .. 너무 마음이 아프고 슬펐다.
과연 내가 최선을 다한것이 맞나? 내가 팀에 기여할 수 있는 최대치만큼 기여했는가? 라는 의문이 들었다.
"능력있는 누군가와 함께 팀이 되길 바라지 말고, 능력있는 누군가가 내가 되도록 노력하라" 라는 말을 되새겼다.
그 이후 테크리더도 맡고 백엔드 팀장도 맡고 내가 할 수 있는 최대의 output을 살려 도전하고, 결과를 얻기 위해 노력했던 것 같다.
그 결과 순간순간 성장했고, 값진 경험을 얻을 수 있었다.
개발자로서의 나
멘토링을 받고, 팀원들과 협업하면서 느낀 것들이 있다.
1. clean code
코딩 컨벤션에 맞추기, 변수명, 메서드명 신경쓰기, 하드코딩하지않기, 메서드 분리하기 등등
남이 봤을때 이해하기 쉽고 가독성 좋은 코드를 작성하는 것이 중요하다는 것을 깨달았다.
2. 설계와 문서화
설계가 정말 정말 정말 중요하다는 것을 다시 한번 깨달았다.
특히 ERD와 API 문서 !!!!!
비즈니스 이해 후 설계하는 과정에서 예상 결과물과 도입될 기술, 제공하는 서비스(비즈니스)를 생각하며 주의깊게 설계해야한다는 것을 배웠다.
계속해서 수정이 될 수밖에 없겠지만, 탄탄하게 설계를 잘 해놓으면 변경해야할 범위가 적어지고 구현도 더 쉽게 할 수 있다.
또한 프론트엔드와 공유하는 API 문서는 처음부터 서로 협의해서 잘 써놔야 후에 API 연동시 수월하다.
잘 몰라서 플젝 후반에 많은 부분을 고쳤고 시간이 많이 소요되었다.
앞으로는 설계와 문서화(잊지말자 시퀀스 다이어그램 !!)를 정말 중요하게 생각해야겠다.
3. 테스트의 중요성
개발한 코드에 대해 테스트 코드를 무조건 만드는 것이 규칙이라 정말 많은 에러를 조기에 파악할 수 있었다.
그리고 개발 후 배포에서 알파테스트, 베타 테스트는 선택이 아님 필수임을 깨달았다.
배포 후에 예약 테스트에서, 백투백 예약이 안되는 그런 심각한 상황을 방지하기 위해서라도
배포 후 테스트는 한번 할 거 두번하고, 두번 할거 네번 하자.
그리고 에러를 고치면, 또 다른 에러가 기다릴 수 있으니
여러 부분에서 많은 횟수로 테스트를 하여 안정성을 검증할 것!
4. 협업하기 좋은 사람이 되자.
프로젝트는 사람과 함께 하는 작업이다.
여러 사람과 하다보면 의도치 않은 오해도 생길 수 있고, 서운한 감정이 생길 수 있다.
그때 혼자서 의기소침해 있지말고, 서로의 상황을 이해하며 소통하는 것이 중요하다.
또한 회의할때 경청하고 공감하고 반응해 주는 것이 정말 중요하다.
이야기 한 후에 썰렁한 그 분위기 다들 느낀 적이 있을 것이다.
이해가 안되는 부분은 물어보고, 같이 ~~하자! 하면 으쌰으쌰해주고 잘하면 갑자기 칭찬해주고
사소해보이는 것들이 팀 분위기를 살리고 협업하기 좋은 분위기를 만드는 것 같다.
나도 사실 칭찬을 많이 하는 편인데, 이 습관은 꼭 계속 이어나갈 것이다.
마지막으로, 대화를 할때 맥락을 설명하는 것이 중요하다는 것을 깨달았다.
말을 시작할때 듣는 사람은 그 말을 하기까지 내가 겪었던 것들을 알지 못한다.
"내가 어떤 상황에서 어떤 것을 겪었고 그래서 ~~하다" 이렇게 맥락 공유를 하면 불필요한 시간을 줄일 수 있고 오해도 덜 생긴다.
5. 일부러라도, 여유를 가지자.
멘토링을 받으면서 워라밸을 꼭 지켜야한다는 말을 들었다.
번아웃 온 뒤에 더욱 더 그 말의 가치를 느끼게 되었는데, 삶이 무너지면 개발자로서의 나도 무너지는 듯 하다.
그리고 마인드가 여유로워야 사람을 대할때 편안하고, 소통도 잘 되는 것 같다.
개인적으로 멘토님 덕분에 백엔드 팀이 에너지도 많이 얻고 다시 달릴 수 있었는데, 멘토님이 주신 여유와 편안함 + 철저한 피드백 덕분인 것 같다.
마인드가 여유로운 사람은 사람들을 편안하게 해주고, 팩폭을 날리는 피드백에도 감정이 생기지 않고 감사함만을 주는 그런 사람이다.
개인적으로 내가 굉장히 딱딱하고 목표를 제외하고 옆을 둘러보지 못할 때가 있다고 생각이 드는데,
나도 그런 여유로운 마인드를 가지며 나무뿐만 아니라 숲을 보는 개발자가 되고싶다.
적어보니 정말 많은 것을 느꼈던 소중한 프로젝트였다.
결과물도 굉장히 마음에 든다 ㅎㅎ
멋진 프로젝트를 경험해 볼 수 있도록 기회를 제공해주신 카카오테크캠퍼스와 운영진님,
매니저님 멘토님 너무 감사하다
그리고 우리 팀!!! 정말 고생 많았고 사랑한다.
이런 프로젝트 기회가 가까운 시기에 꼭 또다시 생겼으면 한다.
무엇보다도 고생했어 내 자신!! 😊
'회고' 카테고리의 다른 글
데이터베이스 면접 스터디 회고 (0) | 2024.04.10 |
---|---|
소통이란? 좋은 팀원의 특징 (0) | 2024.01.19 |
1129 앞으로의 마음가짐 (2) | 2023.11.29 |
나는 왜 실패했는가_230427 회고 (0) | 2023.04.28 |
2023 05- 계획 (1) | 2023.04.22 |