View

300x250

벌써 올해도 절반이나 지나가버렸다. 그치만, 올해에는 벌써 배운 것도 너무 많고 이룬 것도 너무 많아서 좀 뿌듯한 기분!

달리기를 시작했다.

3월부터 달리기를 시작했다. 처음에는 진짜 1km 6:30 페이스로 조금만 뛰어도 너무너무 숨차고 힘들었는데, 매일 주말 일요일에 여의도 공원을 달리고, 아침 6시 30분에 크로스핏 하러가기 전에 3-5km 달리기를 하거나 40분 사이클을 주 2~3회 하다보니 체력이 많이 늘었다. 달리기 실력에도 욕심도 생기고, 또 달릴 때 그 속도감이 주는 쾌감이 좋아서 꾸준히 하게 되었던 것 같다.

매번 달리기를 하러 나갈 때 마다 체력이 올라오는게 느껴졌고, 630 그룹에서 500 그룹으로 올라가면서 “내가 체력이 그지였던건 그냥 유산소를 안해서였구나”를 뼈저리게 느꼈다. 진짜 3개월동안 엄청 성장했다! 그리고 6월 9일, 내 인생 첫 마라톤 대회에서 10km를 52분 52초라는 기록으로 들어왔다!! 사실 10km를 1시간에 뛴다는게 그리 쉽지만은 않은 일인데, (거의 뭐) 인생의 첫 유산소를 시작한 지 3개월 치고는 꽤나 좋은 성적이 나온 것 같아서 기분이 너무 좋았다. 그동안 수고했으니 상으로 나한테 러닝화도 하나 선물해줬다 ㅎㅎ

 

체력적으로 뭔가에 도전한다는거에 부담이 없으니, 이것저것 재미있어 보이는 대회나 축제는 다 눈이 가기 시작했다. 그리고 제 1회 쉬엄쉬엄 한강 3종 축제에도 다녀왔다. !무려 한강을 수영으로 횡단하는! 무지막지하게 재미있어보이는 행사였다. 못참고 또 신청해버렸다. ㅋㅋㅋ 수영을 마지막으로 해본 게 중학생 때인 것 같긴 하지만, 한강을 수영으로 건넌다는 것에 로망을 가지고 있던 터라 그냥 냅다 신청해버렸다. 그리고 성공했다 😄 수영 좋아하는 친구가 있거나 가끔 성취감과 보람이 필요할 타이밍에, 1년에 딱 한 번 정도 해볼만한 액티비티였던 것 같다.

그리고 또 못 참고 저질러버린 사람, 바로 나. 이번 10월에 춘천마라톤 풀코스를 신청했다. 😮 사실 내년 3월에 있는 마라톤에 풀코스를 신청하려 했다가 일정이 겹쳐서 취소했는데, 올해 10월 마라톤으로 바꿨다. 목표 시간은 5시간인데, 완주에 성공할 수 있을 지도 모르겠다 ㅋㅋㅋ 일단은 한 번 도전해보는거지 뭐.

예전에 그런 영상을 본 적이 있었다. 사람이 근력운동이나 무산소 운동을 자주 하면 순간 집중력이 좋아지고, 유산소 운동을 자주 하면 긴 시간동안 집중을 유지하는 능력이 좋아진다고. 거의 몇 년동안 근력운동을 했다보니, 나의 경우에도 순간 집중력을 확실히 좋은 편이였던 것 같다. 한창 집중해서 일을 처리할 때는 누가 불러도 모를 정도로 완전히 몰두해서 작업해보기도 했고, 딱 집중하는 순간에는 주변에 무엇이 있는지 모르는 것처럼 확 집중해서 파바박 문제를 풀어내는 경우가 꽤 있었던 것 같다. 심지어는 시험을 치자마자 친구들이 00문제에 답 뭐했냐고 물어볼 때 그런 문제가 있었는지 전혀 떠올리지 못하는 경우도 있었다 ㅋㅋㅋㅋ 아마도 다른 문제에 또 팍 집중하면서 기억들이 지워진게 아닐까 싶었다. 그런데 이런 장시간의 운동을 안해서 그런지는 몰라도, 길게 집중하는 능력은 확실히 보완할 부분이 많다고 느껴진다. 한 3시간씩 한 자리에 앉아서 쭉 뭔가 처리해내는 사람들을 보고있으면 대단하다는 생각과 함께 참 부러운 능력이라고 느꼈다. 물론 이것도 태생이라면 태생이겠지만, 또 “노력을 안했기 때문에 없는 능력” 일 수도 있지 않을까? 달리기처럼! 지금부터 천천히, 그리고 꾸준히 달리기를 계속 할텐데, 이게 나의 장기 집중력에 새로운 변화를 불러오기를 기대한다. 연차와 함께 체력이 점점 쌓여나간다면 정말 남 부럽지 않은 사람이 될 수 있지 않을까 싶다.

WeHavit 앱을 드디어 출시했다.

작년 캡스톤에서 과제로 진행하던 앱을 드디어 출시했다. 정말 오래걸렸다 🥲🥲

 

이렇게나 오래 걸릴거라고 생각하지는 않았었는데, 생각했던 것보다 작업량도 많았고 학교 수업이나 과제, 따로 구매한 강의 수강을 병행하려고 하다보니 작업시간이 예상보다 덜 나왔던 것 같다. 그래도 어떻게 보면 기획~디자인~개발 까지 온전히 내 힘으로 만들어낸 첫번째 앱이 아닐까 싶다.

캡스톤 발표를 끝내고 나서는 코드가 마음에 안들어서 리펙토링을 한 두 번 진행하느라 2달을 내리 써버렸고, 그 다음에는 또 기능 기획과 디자인을 새로 갈아엎느라 몇 주를 썼다. 여기에서도 사실 기술적으로 배우거나 깨달은 바가 매우 많아서, 하나도 아깝지 않은 시간들이였던 것 같다.

먼저 기획부터. 일단, 내가 바라는 서비스가 있을 때, 내 머릿속에 있는 전체 기능의 25%만 있어도 이미 그럴듯한 앱이라는 걸 이번에 깨달았다. 내가 사람들에게 선보이고 싶어하는 맛은 쟁반짜장이라면, 이미 사람들은 짜장 소스 단계에서도 서비스를 사용하는 만족감과 앞으로의 기대감을 느낀다. 어쩌면 이건 내가 앱 서비스를 기획할 때 효용의 관점에서 “내가 설계한 방법대로 사람들이 가치를 얻고 효용을 느끼는 것”을 바라기 때문일지도 모르겠다. 쟁반짜장이 이렇게 맛있는데, 너희들도 쟁반짜장 한 입 씩 먹어보면 좋을 것 같아! 라고 생각했지만, 사람들은 쟁반짜장보다는 그냥 배를 채우고 심심한 입을 달랠 수 있는 먹을거리만 있어도 충분히 만족을 하는 것 같다. 물론 “짜잔! 이게 쟁반짜장이라는거야!” 라면서 내가 설계한 대로 사람들이 가치를 느낄 수 있는 서비스 전달 방식도 있겠지만은, 사람들에게 이런 맛, 저런 맛을 보여주면서 쟁반짜장까지 가는게 더 나은 방식이지 않을까 싶다.

개발에서도 똑같이 적용되었던 것 같다. 기술적으로 “좀 더 최적화! 좀 더 나은 방식! 좀 더 깔끔한 코드 분리!”를 외치면서 기능을 구현하다말고 구조를 수정한다거나 하나의 기능을 더 나은 방식으로 뜯어고치고 있었는데, 이런 방식으로는 끝이 없겠구나 를 이번에 느꼈다. 정말로 개발하면서 기능을 더 나은 방식으로 재설계하고 고치고 수정하는데에 시간이 무지막지하게 많이 들어서 프로젝트의 마감을 쳐낼 수 없는 것도 있겠지만, 이번 프로젝트에서는 코드를 고치면서 내가 기술적으로 성장했고, 그렇게 성장한 나의 눈에는 다시 고칠 점들이 들어오는 사이클의 반복으로 인해 앞으로 나아갈 수 없었다. 물론 학습의 관점에서는 이런 방식이 정말 최고이고, 짜릿하고, 늘 새로운 그런 좋은 형태이겠지만, 어찌되었든 중간중간에 마일스톤 결과물이 튀어나오기를 바라는 나에게는 고치면 고칠수록 결과물의 산출이 미뤄져서 아쉬워지는 결과를 가져왔다.

그래서 이제는 개발을 진행하면서 수정해야할 것 같은 부분이 있으면 “뭔가 아쉬운 이 부분이 크리티컬한가? 아니면 조금 더 나은 방식이 있는것인가?” 를 먼저 생각해보고 우선순위를 따지게 되었고, “현재 개발된 플로우에서 반드시 필요한 기능인가? 아니면 새로운 플로우에 포함된 기능인가?” 에 따라서 플로우를 이번 스프린트에서 채택할 지 말 지에 대해서 선택하는 기준이 생긴 것 같다. 당연히 내가 생각하는, 내가 설계한 방식대로의 가치를 전달해주기 위해서는 반드시 반드시 필요한 플로우와 기능들이지만, 그게 없어도 사용자들은 또 다른 만족을 느낄 수 있는 형태일까? 에 좀 더 집중하게 된 것 같다.

앱 내 컴포넌트들의 디자인, 앱 사용성 같은 영역들은 개발자가 아닌 사용자의 입장에서 어떤게 더 나을지 고민해야하고, 이런게 내가 잘하는 영역이라고 자신하고 있다. 그런데, 앱을 통해 느끼는 가치 또한 “개발자”를 기준으로 생각하지 말고 “사용자”를 기준으로 생각해야하는 영역이라는걸 놓치고 있었던 것 같다. 어쩌면 이번에 혼자서 개고생을 하면서 배워가는 중요한 포인트가 아닐까 싶다.

디자인 실력도 꽤나 늘었다. 뭐, 디자인이야 개발하듯이 인터넷을 뒤져서 괜찮은 레퍼런스들을 10개 정도 모으고, 얘네를 합쳐서 나의 기획 의도에 적합한 깔끼한 디자인을 만들어내는 정도라 진짜로 디자인을 잘하는 사람들의 발끝도 못따라갈테이다. 내가 이번에 디자인을 하면서 많이 성장한 부분은 피그마의 “컴포넌트”와 세밀한 디자인 시스템의 중요성에 대해 깨달은 것이다.

일단 피그마에서 오토레이아웃과 컴포넌트를 사용하는 실력이 많이 늘었다. 앱개발에 필요한 다양한 중복되는 하위 위젯들을 컴포넌트로 만들어 전체 디자인에 한 번에 적용하고 통일시키면서 디자인을 개선하고 진행해나가는 실력이 꽤나 늘었다. 또, 오토레이아웃을 잘 적용해서 내가 원하는 대로 컴포넌트들을 설계하고, 이를 그대로 개발할 때 레이아웃으로 활용하여 화면을 설계하는 방식에 좀 더 익숙해진 것 같다.

 

그런데, 이것들을 쳐내면서 체계적인 디자인 시스템의 중요성이 오히려 더 크게 느껴졌다. 일단 나는 각 뷰에서 필요한 요소들을 컴포넌트화 했지만, 실제로 개발을 하면서 앱 내에서 전체적인 디자인 통일감을 주기 위해서는 여러 뷰에서 공통적으로 하나의 디자인 문법을 따라야 했고, 부득이하게 형태는 똑같지만 파라미터나 로직이 다른 위젯들을 만들게 되었다. 이로 인해 중복되는 코드가 꽤나 만들어졌다고 생각한다. (이런 것들을 개선하려고 하다가 “크리티컬하지 않다”고 생각하고 작업을 뒤로 미루긴 했음 ㅋㅋㅋ) 처음 개발할 때에도 각 뷰에 종속된 컴포넌트라고 생각했기에, 파일의 위치도 각 뷰 폴더로 배치하였고 이름도 해당 컴포넌트가 사용되는 뷰의 이름을 따서 지었었다. 그러다 보니 다른 곳에서 재활용하려면 이름을 변경하거나 코드를 추상화해야하는 등 번거로움이 있었다. 디자인 단계에서 오히려 뷰에 종속된 컴포넌트로 디자인을 하지 않고 앱 내에서 재활용될 수 있는 컴포넌트라고 생각하면서 추상적인 형태로 디자인을 진행해야 하고, 각 컴포넌트의 역할이 정해졌을 때 여러 역할을 한 번에 수행할 수 있도록 파라미터와 로직, 위젯 형태를 설계해야 함을 배웠다.

다음 번에 디자인 작업을 하거나, 디자이너와 함께 디자인 시스템을 구축해야 하는 경우에는 정말 잘 할 수 있을 것 같다. 물론 그 때에도 또 작업을 하다가 성장을 하고, 깨달음을 얻고, 모든 것들을 다 새로 만들고 싶고, 뭐 그러지 않을까? 😉

개발에서도 이번에 많이 성장했다고 느낀다. 특히 아키텍처같은 부분이나 비동기를 다루는 UI 를 이런 방식으로 처음 만들어봤는데, 꽤나 괜찮은 경험이였고 꽤나 괜찮게 만들어낸 것 같아서 뿌듯하다. 트러블슈팅 과정들을 아티클로 기록해둔 것도 유의미했던 것 같다. 앞서 말했지만 장기 기억력이 좋은 사람은 아니라서, 내 문제에 대해서 내가 쓴 글에서 해답을 찾는 경우도 한 번씩 있었다 ㅋㅋ.

지금의 생각으로는 내가 클린아키텍처의 정수를 깨달았다고 생각하고 있다. 물른 어디 가서 이렇게 이야기를 꺼내면 다들 “그 부분에 대해서는 이야기가 길어질 것 같으니 잠시 후에 이야기해봐요” 라고 하면서 다들 할 말이 많아보였다. 그치만, 정말인걸! 이제 앞으로는 TCA나 마이크로 같은 더 무시무시한 아키텍처들을 마주해야할텐데, 이런 아키텍처들을 상대할 때 어떤 생각을 하면서 뜯어봐야 할 지에 대해서 감을 잡은 것 같다.

비동기 UI도 이번에 처음 이렇게 건드려봤다. 이전에 프로젝트를 하면서 개발시간이 1주일 / 2주일, 이런 식으로 주어지니깐 사실 네트워크를 활용하는 서비스를 만들 엄두가 나지도 않았었는데, 개발 기간을 길게 잡고 뭔가 만들어보려고 하니까 비교적 가벼운 마음으로 공부하면서 만들어볼 마음의 여유가 났던 것 같다. 덕분에 이전에 만들었던 앱들보다 훨씬 시판앱 스러운 느낌이 나게 된 것 같다. 생각했던 것보다 cost 대비 결과가 만족스러워서 앞으로는 이런 방식을 잘 활용해서 UI 개발에 적용을 할 것 같다. Swift에서 이런 것들을 구현하는 방식에 대해서도 빠르게 배울 수 있을 것 같다.

 

비동기 UI를 개발하면서 디자인 시스템에 비동기 데이터를 다루는 경우에 “데이터가 들어오는 중에 보여줄 UI” / “데이터로드에 실패하면 보여줄 UI” 등을 같이 디자인해둬야 한다는 것도 알 수 있었다. 그저 그냥 Happy Path의 디자인만 만들면 될 거라고 안일하게 생각하고 작업했는데, 생각보다 내가 디자인하지 않았던 것들이 너무 많아서 개발 페이즈에서 좀 당황스러웠었다. 좋은 디자인 시스템이라면 이런 비동기의 부분들도 함께 고려되어야 함을 느꼈다.

아마도 예상이지만, 다음 나의 UI 개발 단계에서의 성장 빅스텝은 위젯의 데이터 로드에 의한 사이즈 변화에 따른 자연스러운 애니메이션 주기가 되지 않을까 싶다. 지금은 비동기 UI는 잘했지만, 뭔가 새로운 셀이 생기고 없어지거나 위젯 사이즈가 변경되면 딱딱하게 틱틱 변경되는데, 이걸 훨씬 자연스러운 UI로 만들어보고싶은 니즈가 있다.

그래도 작업하는 동안 너무 재미있게 작업했다. 지금부터는 추가 기능 개발과 최적화로 기능을 개발하게 될텐데, 또 얼마나 많은 것들을 깨닫게될 지 기대가 된다. ㅎㅎ

이게 다 위해빗 작업량! 몇 달 동안 정말 고생했네 😆

 


이번 2분기를 살아내면서 체력도 점점 늘어나고 있고, 나를 다루는 방법에 대해서도 더 잘 알게되었다. 나를 좋게 봐주는 긍정적인 인연들도 엄청 많이 만날 수 있었고, 새로운 것에 도전하는걸 무서워하던 내가 점점 대범해진다는 느낌이 드는 한 분기였던 것 같다. 다음 분기에는 인턴을 하면서 또 더 많은 새로운 것들을 배우고 도전하고, 그러면서 늘 그래왔던 것처럼 깨지고 부서지고 슬퍼하고 다시 일어서고, 그러면서 더 단단해지면 좋겠다.

최근에 이런 문구를 읽었다.

밝은 사람은 밝게 태어난 사람이 아니라, 그늘을 부지런히 빛으로 채우는 사람이다

 

근데 뭐랄까, 너무 나의 가치관이랑 딱 들어맞는 말이라서 이 문장을 읽는 순간 혼자서 몇 번이고 되뇌었다. 자전거를 타고 작업실을 왔다갔다 하면서도 따사로운 햇살을 보면 자꾸 생각나는게, 아무래도 꽤나 내 마음에 들었나보다. 생각난 김에 여기에도 적어두고 나중에 회고를 읽으러 찾아오면 또 한 번 더 되뇌어야겠다.

320x100

'경험 기록' 카테고리의 다른 글

🥳 24년 1분기 회고  (0) 2024.03.27
[Swift] 야곰 iOS 리팩토링 강의 후기  (0) 2024.03.26
4주 동안의 갓생 챌린지  (0) 2024.01.29
2023년 상반기 회고  (1) 2023.10.04
Share Link
reply
반응형
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31