-
늦은 23년 상반기 회고🖊생활/🖋회고 2023. 8. 25. 21:42
늦었지만 22년 말을 포함한 ㅎㅎ 23년 상반기 회고를 해보겠습니다.
22.11 - 23.01
취업과 현업
코드스쿼드를 수료하고, 운 좋게 빠르게 취업을 하였다.
다행히 파트장님이 좋게 봐주셔서 스타트업 회사에 합류할 수 있게 되었다.
현업을 처음 와서는 아이비가 이야기했던 부분들을 많이 느꼈다.
내가 만든 앱들은 항상 뭔가 실제 앱과 다른 느낌이 들고, 뭔가 부족해 보인다는 느낌을 많이 받았었는데
현업에 와보니 이유를 알 수 있었다....실제로 내가 많이 허접이었던 것..... 물론
지금도...코쿼를 수료하고, 난 시키는 거 정도는 다 할 수 있어!라는 생각이었는데
처음으로 받은 앱에서 가장 간단한 화면 하나를 다시 만드는 일을 완료하고 파트장님의 부름에 달려가보니
OO님 이거 한번보세요
파트장님이 테스트 폰인 폴더블 폰을 여시자마자 UI가 난리가 나는 현상을 보고 헉... 이게 뭐지 해버렸다
텍스트는 여기저기 날아가고 어떤 버튼은 늘어나고 어떤 버튼은 작아지고....
이미지도 마찬가지
너무 당황해서 어버버 하는 중 홈 버튼을 누르고 다시 돌아오니 메뉴가 증식하고....
정말 당황했던 거 같다.
다행히 파트장님께서 차근차근 설명해 주셨고, UI와 얘기만 듣던 생명주기에 대한 이해도가 많이 올라가는 기회였던 거 같다.
3주 만에 앱하나 맡아 버리기~~
그렇게 소소한 일을 하며 코드를 이해하던 중 내 바로 위에 분의 퇴사 소식을 알게 되었다.
그리고 온 지 1달도 안되어서 그분이 만들던 앱 팀으로 이동하여 인수인계를 받게 되었다.
이것이 스타트업인가...
일단 그 당시 배포 프로세스와 아키텍처, 코드에 대한 내용들을 인수인계받고, 그는 떠났다....
그리고 나는 새로 오신 IOS분과 함께 신규피쳐를 만들게 되었는데...
1달 만에 다시 파트장님 밑으로....
신규피쳐를 만들던 중 많은 일이 있었다.
외근도 가고~~
내가 운영하게 되었던 서비스의 B2C가 수입이 잘 나지 않고 대표님의 관심밖으로 밀려났고,
개발팀 3분이 더 퇴사, 같이 하던 IOS분도 퇴사를 하시면서 신규 피쳐는 개발이 팬딩 되고 나는 다시 주력 서비스 쪽으로 팀을 자연스럽게 옮기게 되었다.
2달 만에 2번의 팀 이동 하지만 뭔가 크게 이동을 하거나 하지 않고 자연스럽게 하던 업무가 바뀌어서 딱히 크게 와닿거나 스트레스를 받는 부분은 없었던 거 같다.
다만 친하게 지내던 동료가 처음으로 퇴사를 하니 멘탈이 조금 흔들렸던 거 같기는 하다 ㄷㄷ
둘다해요?
처음에는 메인 서비스의 자잘한 UI 수정을 몇 주 진행하였다.
뭔가 다들 바쁜데 나만 한가해서 전에 맡았던 서비스의 배포 자동화를 구축해 보았다.
기존에 서비스를 배포할 때는 version 코드를 바꾸고,
BaseUrl에 Build_Type을 false로 돌리고 (
사실 잘 기억 안 남)AAB를 직접 빌드하고 그 파일을 Google Play Console에 올리고 firebase에 테스트 앱을 올리는 수도 방식이었는데
fastlane을 이용해서 명령어 한 줄로 배포가 가능할 수 있도록 스크립트를 짜보았다.
(버전 자동으로 올릴라고 Ruby도 쪼오오오금 공부해 봄 )
그리고 Cx 팀에서 문의 사항이 들어오신다고 하셔서... 치명적인 에러도 하나 해결했는데
특정 기능을 이용하면 다시 켤 수 없는 앱이 되어버리는 버그가 있었다....
그렇게 메인 서비스와 서브 서비스를 함께 운영을 하다가 서서히 메인 서비스로 이동!
일을 주세요. 없으면 만들어서 하자..!!
메인 서비스로 돌아오고 메인 서비스의 아키텍처가 일을 분배하기 너무 어려운 상태라서 나는 한동안 일이 없었던 거 같다.
그렇게 파트장님을 졸라서 일을 몇 개 받다가 재미있는 요구사항을 처리할 기회가 오게 되었다
광각 카메라를 사용할 수 있게 해 달라는 요구사항이었다.
나는 팀장님의 조언대로 CameraX를 조사해 보았다.
그리고 먼저 샘플앱을 만들어서 사진촬영 -> 카메라 선택 -> 광각 카메라 사용 형식으로 CameraX에 대한 학습을 진행하였다.
기존에는 외부 라이브러리를 사용해서 간단하게 구현이 되었던 기능이었는데 그 라이브러리는 광각을 지원하지 않아서 샘플 앱을 기반으로 CameraX로 마이그레이션을 진행하게 되었다.
CameraX도 편하게 광각 카메라를 지원하는 기능은 없어서 처음에는 CameraSelector를 이용해서 카메라의 개수를 파악하고, 마지막 인덱스를 가진 카메라를 사용하도록 해볼까? 했는데 기종마다 광각 카메라의 카메라 인덱스가 달라서 포기를 하고 카메라의 초점 거리를 찾아서 광각 카메라와 같은 초점 거리를 갖은 카메라를 사용하도록 구현을 하였다.
23.02 - 23.08
도메인 스터디 졸업
입사했을 당시 신입분들이 많이 들어와서 다 같이 도메인 지식을 올리고 비즈니스에 대한 부분을 알면 좋겠다 싶어서 도메인 스터디를 리딩했다.
타 팀에서 개발팀으로 들어오는 요청들은 한 주간 하루씩 정리해서 본인이 맡은 날에 일어난 일에 대한 정보를 공유하며 왜 그런 문제가 발생했는지, 어떤 업무를 하는 중에 그런 게 필요한지 등등을 공유하며 비즈니스가 이렇게 흘러가는구나를 알 수 있게 하는 스터디였는데
23년부터 채용 동결 및 퇴사로 스터디가 마무리되었다....
그래도 많이 친해질 수 있었고 (실제로 다들 연락하고 지냄) 회사 적응에 많은 도움이 되었다.
외국인을 위한 기능 추가
당시 우리는 해외 서비스도 있었는데 해외 서비스가 문을 닫으면서 한국 서비스와 합치자는 제안이 왔고, 그러면서 자연스럽게 외국인을 위한 기능들이 필요해졌다.
이 피쳐에서 나는 보증금 관련 기능을 만들게 되었는데
처음으로 한 기능 개발이었다.
기능 자체는 뷰를 그리고 Api를 통해서 bff에서 불러온 데이터를 RecyclerView에 보여주고 결제, 환급등을 진행하는 플로우를 개발하는 역할이었다
비록 어렵거나 큰 부분은 아니었지만, 재미있게 일을 할 수 있었다.
QR 개선과 사이드 프로젝트!
카드 인식, 면허 인식 등을 위해 Ocr 관련 기술을 서치 했는데 QR 시스템이 개선이 될 거 같아서 시도해 보겠다고 했다!
안드로이드앱의 QR 인식 속도가 좀 느려서 나도 불편하다고 생각하던 부분이라 개선을 해보았다.
ML kit에 바코드 인식 안에 QR 인식 기능도 있어서 CameraX와 함께 ML kit도 사용하도록 마이그레이션 하였고, 실제로 인식 후 api를 쏘기까지 1초 이상이 걸리던 작업이 0.5초 아래로 빨라진 것을 확인하였다 뿌듯했던 작업이었다.
ML kit을 분석하면서도 동료들에게 자료를 공유하려고 샘플앱을 만들었는데 그때 회사에 잠깐 오셨던 시니어분께서 Compose에 대한 지식도 많으시고 조언도 많이 해주셔서 이걸 사이드프로젝트로 디벨롭해 볼까?라는 생각이 들었다.
그래서 Menual Memo 앱을 만들게 되었다.
Compose를 공부하면서 만들었더니 재미있었다.
시니어분께서 많이 알려주시고, 이것저것 해보고 싶은 것들을 해볼 수 있어서 재미있었다.
Dialog도 넣어보고 accompanist에 권한 허용 기능도 써보고, 스테이트 호이스팅, 상태관리 등 여러 가지로 배울 수 있는 시간이었다.
경로 찾기 기능 구현
경로 검색 기능도 구현하게 되었다.
이번에는 메인 기능을 맡게 되어서 코드 리뷰도 받으면서 열심히 개발했다.
출발지, 목적지를 정하면 api로 데이터를 보내고 받아온 경로를 overlay로 그려서 차도와 도보의 경로를 선택해서 보여주는 기능이었다.
최근 검색 기능도 있었는데 처음에 Room으로 만들었다가 시니어님께서 Room은 비용이 크다 어차피 10개 정도의 데이터면 직렬화해서 String으로 저장하면 훨씬 빠를거다 라는 조언해주셔서 리팩토링을 진행했더니 성능이 정말 많이 좋아졌었다.
이 프로젝트는 혼자 개발을 하면서 lifecycle에 대한 생각을 많이 하게 되었는데
출발지/목적지 변경을 하면 이전화면으로 돌아갔는데 이때 onResume을 사용하지 않아서 경로가 겹쳐버리고 마커가 여러 개가 되는 등의 문제를 겪었다.
UI부터 홈버튼, 백버튼 등등 신경 쓸게 많고 아직도 부족하다는 걸 많이 느꼈다
이용권 선물하기 기능
경로 검색을 마무리하고, 바로 다음? 거의 동시에? 환승 이별처럼 투입되었는데
탑승권 선물하기 기능이었다
연락처를 불러와서 정렬하고 초성으로 정리를 해서 보여줘야 하는 요구사항이 있었는데
항상 서버에서 내려주는 대로 보여주다가 클라족에서 로직으로 데이터를 가공해서 보여줘야 하니 부담감도 있고, 재미도 있었다.
이 기능을 구현하면서 무작정 생각하면서 개발하는 게 아니라 미리 요구사항을 적어보고 정리하고 쓰면서 개발하는게 얼마나 중요한지를 느꼈다.
주석으로라도 미리 적어놓고 하니 정리가 잘 되고 나름의 설계도 해보면서 개발할 수 있었다.
나의 아픈 기억...
내가 한창 국비를 다닐 때 유튜브에서 프런트 개발자분이 하신 얘기를 본 적이 있다.
"코드에 애정을 가지면 안돼요. 갑자기 그 화면이 사라지거나, 기획이 변경되는 일이 많거든요. 하나하나 애정을 갖으면 너무 힘들어져요"
이 얘기를 들을 당시에는 난 자바 백엔드를 공부할 때라 오 프런트는 그렇구나 하면 안 되겠다 ㅋㅋ 하고 넘겼는데
내가 안드로이드를 시작하고, 회사에서 일을 해보니 저 말을 많이 새기게 되었던 거 같다.
하루아침에 디자인이 바뀌고, 화면이 사라지는 일이 몇 번 있었는데
최근에는 다른 회사와 함께 하기로 했던 프로젝트가 통째로 무산이 되었다.
좋은 경험이었고, 사이드 이펙트, 클린 코드 등 어떻게 하면 유지보수가 좋은 코드일까에 대한 고민도 많이 했고,
다른 팀 안드로이드 아키텍처나 기술은 어떤지도 들어볼 수 있는 좋은 기회였다.
하지만.... 그래서 저 말을 더 깊이 생각하게 되었던 거 같다.
아마 다른 회사들과 비슷한 기능을 다시 작업할 거 같아서 코드는 남겨두었지만, 직접 파견까지 갔었는데 참으로 아쉬운 7월이었다
컨퍼런스
컨퍼런스도 가보았다.
많이는 아니지만 확실히 가보면 이직, 취업, 컴포즈, 아키텍처 등 많은 주제들이 있는데
다른 분들은 어떻게 공부하시는지 조금 느낄 수 있었고, 기술 동향도 살펴볼 수 있어서 좋았다.
컨퍼런스에서 배운 것들은 회사 프로젝트에는 써볼 수 없었지만 사이드 프로젝트에 조금 적용해보기도 했다. (상태 관리에 대한 것)
(이번에 새로운 UI는 컴포즈를 써서 만들어 보자고 건의를 했는데 다들 알겠다고 하셔서 이제 컴포즈 관련 정보들도 적용해 볼 수 있을 거 같아서 재미있을 거 같다)
처음에는 혼자 갔는데 코쿼 친구들을 만나서 ㅋㅋ 재미있었고, 회사분도 같이 가자고 하셔서 몇 번 같이 다녀왔고, 송도 뒤풀이 너무 재미있었다.... 나도 언젠가 연사를....
그리고 얼마 전에 알게 된 건 회사에서 지원이 되는 듯하다....
사비로 갔는데.... 그래도 좋았으면 됐어!
길다면 길고 짧다면 짧은 기간이지만 많은 일이 있었고, 성장을 했다고 생각한다.
쓸데없는 일들로 스트레스도 받기도 했지만, 좋은 동료들도 만나고, 많은 개발과 기여도 해보고, 주변 친구들도 취업 소식도 들려와서 좋았던 커리어의 시작이었던 거 같다.
'🖊생활 > 🖋회고' 카테고리의 다른 글
민관 협력 공모전 회고 (0) 2025.03.26 221025 ~ 221026 TIL - feat: 하루 돌아보기 (0) 2022.10.26 221022 - TIL - 운영체제, 알고리즘 (0) 2022.10.22 221022 - TIL - feat: 회고.... (0) 2022.10.22 221018 - TIL - DI, 알고 (0) 2022.10.19