티스토리 뷰

회고록

2019년 회고록

Clover(린생) 2020. 1. 9. 21:31

안녕하세요. 린생입니다.

올해 2020년 부터는 회고록을 써 볼려고 합니다.

취업

레진코믹스 입사 10월 01, 2018

iOS개발을 시작하고 처음으로 서비스 개발을 하는 회사에 입사를 하였습니다. 만화를 어린 시절 부터 좋아하고 이미지 처리를 잘 하고 싶은 욕심도 있어서 레진코믹스의 입사는 매우 만족 스러웠습니다.

레진코믹스를 처음으로 입사를 하고 3개월을 수습기간을 진행 하였습니다. 수습기간 동안 팀장님이 미션을 주면 그 미션을 수행하고 그 결과를 통해 수습기간을 종료하는 프로세스를 진행하였습니다. 제가 처음으로 했던 업무는 전역적으로 분포 되어있는 UIColor를 한 곳으로 정의하고 사용 할 수 있는 Common한 class를 만드는 업무를 하였습니다. 다소 어려운 작업이 아니였지만 입사 당시 MVC패턴으로 개발을 해왔던 저는 MVVM 패턴을 적용된 코드속에서 어떤 방식으로 UIColor 시스템을 적용을 해야 할 지 고민을 많이 했습니다.

사실 상 MVVM패턴과 MVC 패턴에서 UIColor시스템을 사용하는 것은 그렇게 어려운 문제는 아니였지만 VIewController에서 주입을 해야하는지 ViewModel에서 주입이 되어야 하는지 많은 고민을 하였습니다.

위의 결과를 적용하고 저는 정식으로 레진코믹스 수습기간을 마무리 하였습니다.

RxSwift 도입

회사 팀장님과 이야기를 하면서 서로 RxSwift를 도입을 하자는 이야기가 나왔습니다. RxSwift를 도입 전 대부분의 회사 코드는 Obj-c코드로 구성이 되어 있었고 RxSwift를 도입하기에는 조금 무거운 느낌이 있었습니다. 하지만 Obj-c 코드를 Swift로 Conversion을 하고 다시 Swift코드를 RxSwift로 Conversion하는 것 보다는 Obj-c코드를 RxSwift로 Conversion하는 것이 더욱 좋다는 판단에서 RxSwift를 도입하게 되었습니다.

처음 RxSwift를 사용 할 때 로그인 페이지를 팀장님과 같이 변경을 하였습니다.

그 당시 참고 했던 것은 아래의 자료를 많이 참고 하였습니다.

[RxSwift][Swift3]POP를 이용하여 더 나은 MVVM 구조 만들기

 

[RxSwift][Swift3]POP를 이용하여 더 나은 MVVM 구조 만들기

MVVM MVVM 구조가 잘 작성되어 있는 예제가 많이 없다보니 어떻게 구조를 작성해야할 지 시작하기 어렵습니다. 그 와중에 킥스타터에서 자사 앱을 오픈소스로 공개했습니다. 여기에서 제가 주목한 점은 MVVM 아키텍처를 적용한 프로젝트였다는 점입니다. 그전에 MVVM을 한번 살펴보도록 합시다. -출처 : MSDN Model은 ViewModel에 notification를 전달하고, ViewModel은 View에 notification를 전달합니다. View

minsone.github.io

위의 내용은 간단하게 설명하자면 Input, Ouput을 가지는 MVVM 구조를 만들어서 사용을 하자는 것입니다.

이런한 구조를 공부하면서 점차 RxSwift의 대한 기본 지식과 적응을 할 수 있었습니다.

오픈소스 개발

iOS 공부를 시작하면서 매번 생각 했던 것이 나도 오픈소스를 하나 만들고 보고 싶은 욕심이 있었습니다. 이러한 생각을 했던 이유는 개발 공부를 하고 앱을 만들면서 많은 오픈소스를 사용하게 되었습니다. 오픈 소스를 처음 사용하던 당시 재밌다는 생각을 하면서 동시에 사용하기가 힘들다는 생각을 하였습니다.

사용하기 힘들다고 생각 했던 이유는 사용법과 왜 이걸을 사용하는지의 대한 이유를 모르고 무조건 사용을 하다보니 그렇게 생각을 하게 된 것 같습니다. 그래서 저는 오픈 소스를 개발을 하면 누구나 쉽게 사용 가능하고 어느 앱에서 사용을 할 수 있는 것을 만들고 싶었습니다.

jungseungyeo/SwiftlyIndicator

 

jungseungyeo/SwiftlyIndicator

😀⚙️ SwifitlyIndicator . Contribute to jungseungyeo/SwiftlyIndicator development by creating an account on GitHub.

github.com

위의 오픈소스는 아래의 조건을 생각하고 만들었습니다.

  • 함수 한 줄을 실행이 가능해야한다.
  • 어느 앱에서나 사용 할 수 있어야 한다.

두 가지 조건을 가지고 생각한 것이 Indicator였습니다. Indicator는 어느 앱에서 있고 대기 시간동안 유저에게 노출이 필요하여 만들게 되었습니다.

그래서 많은 UIWindow에서 View를 addsubview를 하고 Center에 위치를 시켜 View에서 Start 함수만 호출하면 자동으로 센터에 Indicator가 나타나게 하였습니다.

오픈 소스를 처음 만들다 보니 배포버전을 1.0.0에서 잘 못 작성된 코드를 넣게 되어 1.0.2버전까지 수정을 하여 배포를 진행하였습니다.

아미톤

AWSKRUG - AWS 한국사용자모임

 

AWSKRUG - AWS 한국사용자모임

국내 최대 클라우드 커뮤니티를 아시나요? AWS 클라우드 기술을 함께 배우고 공유하는 모임입니다. 다양한 학습 소모임과 네트워킹에 참여하세요.

awskrug.github.io

개발자로 생활을 하면서 해커톤을 한번은 꼭 나가보고 싶었다. 해커톤을 기존에 나가지 않았던 이유는 해커톤에서 내가 할 수 있는게 아직은 없을 거 같다는 생각이 많이 들었기 때문이다. 해커톤은 짧은 기간에 많은 것을 만들어야 되는데 나의 개발 속도로는 부족하다는 생각을 가지고 있었고 최근의 들어서야 내가 혼자서도 무엇가를 할 수 있겠다는 생각이 들어 도전을 하게 되었습니다.

아마톤은 AWS기술을 사용해야 하기 때문에 iOS 개발자로 내가 해야하는 역할은 크게 있지 않았다. 그래서 인지 개발 시간 보다 다른 사람들과의 이야기와 어떤 주제를 어떤식으로 풀어내는지를 많이 볼 수 있었다. 다음 해커톤에서는 iOS 기술을 잘 활용 할 수 있는 해커톤이 되었으면 좋겠다는 생각을 했다.

디프만

안녕하세요, 디프만입니다.

 

안녕하세요, 디프만입니다.

디자이너와 프로그래머가 만났을 때

medium.com

구직 활동을 할 당시 iOS를 같이 공부하고 싶었던 저는 디프만이라는 동아리를 가입하여 활동을 하였습니다. 처음 활동 당시 매우 만족하고 새로운 것을 매일 배우는 느낌으로 활동을 하였습니다. 그러다가 운영진 활동을 하게 되었고 3기, 4기, 5기 그리고 6기까지 활동을 하게 되었습니다.

디프만를 처음 활동 당시만해도 Swift도 모르고 있던 저는 어느세 MVC, MVVM, RxSwift, 오픈 소스개발을 할 수 있게 되었습니다. 디프만 활동 당시 많은 사이드 프로젝트를 진행하였고 많은 실패를 경험해 보았습니다. 어떤 방식으로 프로젝트를 진행하면 실패를 하고 사이드 프로젝트를 하면서 어떤 방식으로 진행을 하는게 좋은지등 개발뿐만 아니라 서비스를 만들기 위한 설계도 배울 수 있었습니다.

디프만을 좋아했던 저는 활동을 그만하고 싶었진 이유는 사이드 프로젝트의 한계를 느껴서 그런거 같습니다. iOS 사이드 프로젝트를 하면서 많은 화면을 만들어 보았지만 대부분이 List형태를 가진 CollectionView또는 TableView의 형태를 가지고 있었습니다. 이러한 화면은 기본적으로 만들기가 어렵지 않고 점차 알고 있지만 오래 걸리는 화면을 만드는 내 자신을 보게 되었습니다. 그래서 더 이상 사이드 프로젝트에서는 내가 만족 할 만한 UI를 찾기가 어렵다는 생각을 가지게 되어 디프만 활동을 그만하게 되었습니다.

마무리

2019년의 회고록을 작성을 하면서 느낀 점은 내가 많은 도전을 하지 않은 생각이 들었다. 다들 하는 것을 그냥 해보고 그 경험과 이야기를 쌓는 해였던거 같다. 신기술을 누구보다 빠르게 도입을 한 것이 아닌 안정화가 어느 정도 되고 협업 개발자들이 이미 많은 노하우와 경험을 있는 상황에서 RxSwift를 도입 했던 거 같고, 다들 학생 시절부터 도전하는 해커톤을 직장을 가지고 도전을 하였고 사용하기만 편한 오픈소스 개발을 했던거 같다.

2020년에는 신기술을 누구보다 빠르게 사용하고 실패를 누구보다 빠르게 느끼고 새로운 도전이라고 말 할 수 있는 것을 할 수 있는 한 해가 되고 싶다.

'회고록' 카테고리의 다른 글

2022년 회고록  (422) 2022.01.07
2020년 회고록  (398) 2020.12.26
댓글