저는 지난 4년간 온라인 리서치 회사에서 온라인 설문 관련 웹개발을 수행하며 회사 경험을 쌓아왔습니다.
점점 모바일 웹페이지 개발의 수요가 늘어남에 따라 모바일 환경의 UI/UX를 고민하게 되었고 자연스럽게 모바일 앱 개발에 관심을 갖게 되어 모바일 앱 개발자로의 길을 가기로 결심하게 되었습니다. 앱 개발자가 되겠다 하더라도 이전 회사에서의 웹 개발 경험을 살려 웹과 모바일을 개발을 모두 수행할 수 있는 멀티플레이어를 목표로 하고있습니다.
서른이 넘은 나이에 회사가 주는 안정성을 포기하고 모바일 앱 개발 공부에 집중하고 싶다는 마음으로 퇴사를 결심했습니다.
퇴사 후에는 국비 지원 교육을 통해 6개월간 안드로이드와 플러터 교육을 수강하며 2개의 안드로이드 프로젝트와 1개의 개인 플러터 프로젝트를 진행했습니다.
안드로이드 프로젝트를 진행하며 팀원 간 git을 활용한 협업 능력을 키웠습니다.
기능 단위로 issue를 발행하고 작업이 완료되면 pull request를 올려서 팀원끼리 코드 리뷰를 진행했습니다.
코드 리뷰를 마치면 머지를 통해 메인 브랜치에 머지하는 방식으로 협업을 진행했습니다.
첫 번째 팀 프로젝트는 대학생들의 졸업 작품을 매입하여 전시, 판매하는 판매 플랫폼 앱이었습니다.
저는 해당 프로젝트에서 회원 프로필, 정보 수정, 전시실 방문 기록 및 신청 기능을 담당했습니다.
Glide 라이브러리를 사용하여 이미지를 안정적으로 불러오고 에러를 처리하는 방법을 배웠습니다.
파이어베이스 연동을 통해 코루틴을 사용한 서버와의 비동기 통신 및 DB 연동, 리포지터리 패턴을 배울 수 있었습니다.
또한 ViewModel과 데이터 바인딩, 옵저버 패턴을 사용하여 MVVM 패턴을 구현 하는 방법을 터득했습니다.
두 번째 팀 프로젝트는 개발자(취준생)들을 대상으로 하는 스터디 앱이었습니다.
해당 프로젝트에서는 파이어베이스 인증 기능을 활용한 회원가입 기능 구현을 담당했습니다.
파이어베이스 공식문서를 참고해가며 이메일 회원가입, SNS 계정 회원가입, 전화번호 인증 등을 구현했고 공식 개발 문서를 참조하며 개발하는 방법을 터득했습니다.
두 번째 팀 프로젝트는 기간이 첫 번째 프로젝트에 비해 짧았던 관계로, 시간이 부족했던 다른 팀원들의 남은 미구현 기능들을 도맡아 추가로 작업하며 팀원들을 돕기도 했습니다.
국비 지원 교육을 들으며 개인적으로 진행한 플러터 프로젝트는 이상형 월드컵 앱이었습니다.
본인이 찍은 사진과 앨범으로 만들 수 있도록 해주는 앱이었습니다.
플러터는 pub.dev에서 공식과 다른 개발자들이 만든 유용한 라이브러리를 찾아 사용할 수 있어 프로젝트를 진행하면서 다양한 라이브러리를 찾아서 활용할 수 있었습니다.
상태 관리는 Provider를 사용했으며, sqflite 라이브러리를 통해 사용자가 만든 이상형 월드컵을 로컬(sqlite)에 저장해주었습니다.
이상형 월드컵 우승 결과를 카카오톡 공유하기를 통해 다른 사람들에게 공유할 수 있는 기능도 구현했습니다.
개인 프로젝트인 만큼 남이 많이 시도하는 것 보단 제가 하고 싶은 아이디어를 실제로 구현하고 싶었습니다.
실제로 프로젝트를 진행하면서 국비 지원 교육에서 받은 교육 내용 보다 제가 직접 구글링과 개발 문서를 찾아가며 구현한 부분들이 더 많았습니다.
이러한 경험을 통해 비전공자이고 남들에 비해 앱개발 경험이 적지만, 목표를 이루기 위해 자기 주도적으로 해결 방법을 찾는 연습을 하며 앱 개발에 대한 자신감을 기를 수 있었습니다.
귀 사에서 더욱 많은 앱 개발을 경험하며 귀 사에서 앱 개발자로써의 커리어를 계속 쌓아나가고 싶습니다.