본문 바로가기

회고

19명의 iOS개발자와 8일간 진행한 프로젝트 회고

반응형

멋쟁이 사자처럼에서 벌써 앱스쿨을 진행한지 3개월이 넘어간다. 

시간이 정말 빨리 지나가는 느낌이고 실력도 많이 늘었다.(나 뺴고 다들 잘하는 느낌)

 

이번 프로젝트는 12월 26일부터 1월 4일까지 약 8일간 진행됐다. 

그리고 이번 프로젝트가 특별한 점은 무려 우리팀에 iOS 개발자가 19명이나 있었다는 것이다. 

 

어떤 방식으로 협업을 진행했나?

프로젝트 전체를 관리해주시는 분을 기준으로 어떤 앱을 만들지 정하였고 

소비자앱과 관리자앱으로 팀을 나눠 진행을 했다. 

소비자앱과 관리자앱도 1분씩 관리해주시는 분이 계셨다. 

 

"파이어베이스"를 이용해 멋사만의 세미나를 등록하고 관리하는 소비자, 관리자 앱 2개를 기획했다. 

"소비자앱"에서는 세미나를 조회(카테고리 분류, 날짜 분류 등)하고 신청, 신청한 세미나에 대해 질문하는 기능이 주를 이뤘다. 

"관리자앱"에서는 세미나를 만들고 수정하고 세미나 출석 등록, 질문 조회 등 기능이 주를 이뤘다. 

 

다들 iOS 개발자를 목표로 이곳에 모였지만 각 자의 백그라운드가 정말 다양했다.(컴퓨터, 디자인, 기획 등등)

그래서 어쩌면 컴퓨터 전공만 모였을 때보다 더 수월하게 협업을 진행했던 것 같다. 

디자이너분들께서 3분이나 계셔서 의견을 내는 바로바로 UI가 만들어져서 너무 좋았다...

 

그리고 첫날 우리의 고민은 앱의 사이즈였다. 

단기 프로젝트였기 때문에 처음부터 너무 많은 기능들을 기획하면 나중에 기능을 만들어내지 못했을 때, 앱의 완성도가 떨어질 수 도 있었기 때문에 처음부터 최대한 앱의 사이즈를 줄이자는 얘기들이 많이 나왔다. 

하지만 아직 배우는 입장이기 때문에 너무 많은 기능들을 넣지는 않되, 만들어보고싶은 기능은 최대한 넣어보기로 했다!

 

 

그래서 나는 QR코드를 통해 세미나 출석을 할 수 있는 기능을 제시했다. 

새로운 아이디어를 제시할 때도 인원이 많다보니 하고싶다고 바로 할 수 있는 것이 아니라 나름의 타당한 이유가 있어야 했다. 

그리고 QR에 대한 기능이 추가된다고 했을 때, 더욱 책임감을 느끼게 되었다. 

 

 

내가 맡은 역할은 무엇인가?

QR스캔이 완료되면 다음과 같이 질문하기 버튼이 나타난다. 

내가 맡은 역할은

관리자 앱의 로그인 화면과 기능,

Visionkit을 활용한 QR스캐너 생성 및 인식 기능,

소비자 앱에서 유저 정보를 담을 수 있는 QR코드 생성,

QR스캐너가 찍혔을 때 소비자앱에서 질문할 수 있도록 하는 비동기처리 기능 등이 있었다. 

(QR 생성 뷰는 다른 iOS개발자분이 도와주셨는데 생각보다 너무 뷰를 잘 만들어주셔서 감사했다.ㅠ)

 

특히 QR스캐너 기능을 만들때는 공식문서를 정말 많이 찾아봐야했다. 최근에 나온 기술이기도 했고 예시코드도 나와있는게 없었다..

이번 기간동안 공식문서와 좀 더 친해졌던 것 같다. 

https://developer.apple.com/documentation/visionkit

 

Apple Developer Documentation

 

developer.apple.com

https://developer.apple.com/videos/play/wwdc2022/10025/

 

Capture machine-readable codes and text with VisionKit - WWDC22 - Videos - Apple Developer

Meet the Data Scanner in VisionKit: This framework combines AVCapture and Vision to enable live capture of machine-readable codes and...

developer.apple.com

느낀점, 좋았던 점, 아쉬웠던 점

8일간 많은 분들과 함께 개발을 진행하면서 배울 수 있는 것들이 정말 많았다!

우선 잘하시는 분들이 정말 너무너무 많다. 평소에는 나의 코드만 보기 때문에 다른 코드를 볼 일이 적었지만 다른분들의 코드도 보면서 

'이렇게도 할 수 있구나'를 정말 많이 느꼈던 것 같다. 

 

또한 개발자는 개발을 잘해야하는 것도 중요하지만, 함께 하나의 앱을 만들어가는 과정에서 희생해주신 분들도 정말 많다. 

총괄을 맞아주신 분, 디자인을 맞아주신 분, 파이어베이스 구조를 만들어주신 분, 앱에 직접적으로 보이는 부분들은 적을지 몰라도 그분들 덕분에 더 빠르게 작업이 가능했었던 것 같다. (감사합니다)

 

그리고 앱을 관리하시는 분들께서 일정관리를 계속해서 해주셔서 앱의 사이즈를 너무 크고 작지 않게 개발 기능에 딱 맞는 사이즈를 만들었던 것 같다. 

 

하지만 한 두가지 정도 아쉬운이 있었다. 하나는 코드컨벤션, 그리고 주석이다. 

많은 인원이 함께 하기 때문에 나중에 가니, 자신만의 코드로 비슷한 기능을 또 만들고 있었다. 

코드 컨벤션에 대해서 얘기가 나오긴 했지만, '빨리 시작해야해'라는 생각에 어느순간 규칙을 정해야 하는 일을 빼먹었다...

개발에 들어가기 전에, 미리 규칙을 더 정했다면 시간을 더 줄일 수 있었을 것 같고, 중복되는 코드의 양도 줄일 수 있었을 것 같다는 생각이 들었다. 

 

그리고 각자 맡은 기능을 만드는 것에서 끝나는 것이 아닌 기능을 다른 뷰에 붙여야할 일들이 많았는데 

 

처음 다수의 인원과 함께 프로젝트를 진행한다고 했을 때, 사실 걱정이 많았지만 지나보니 정말 얻은 점이 많았다. 

 

이제 9월부터 시작한 앱스쿨도 점점 끝을 향해 가는데, 남은 기간 동안 더 많은 iOS 동료분들을 만나보고 싶고 

아직은 부족한 swiftUI에 대해서도 공부를 더 이뤄나가고 싶다. 

반응형