Contact.
Email. [email protected]
Channel.
Blog.
GitHub.
Linkedin.
Introduce.
10년 뒤에도 함께하고 싶은 동료로 남고 싶은 iOS 개발자 오준현입니다.
새로운 기술을 학습하고, 직접 적용해보는 경험 그리고 많은 사용자에게 긍정적인 영향을 주는 경험을 좋아해 많은 앱 서비스들을 개발 / 배포 / 운영하고 있습니다.
주로 iOS 앱 개발을 하며 필요한 경우 서버, 앱 디자인, 기획의 역할을 겸하고 있습니다.
함께라는 가치를 중요하게 생각합니다. 혼자서는 하지 못하는 일을 같은 지향점을 가진 사람들이 함께하면 비즈니스적 성장을 이뤄낼 수 있음을 믿기 때문입니다.
다양한 팀 프로젝트 경험으로 이 가치의 중요성을 알고 있고, 팀원 모두의 동의를 끌어내 지속해서 팀의 업무 프로세스를 디벨롭한 경험, 그리고 에이블리에서 개발 이외에도 3번의 이터레이션을 이끌어낸 피쳐를 만들어낸 경험도 있습니다.
반복되는 일을 자동화하고 비효율적인 일들을 개선하는 일, 기술/비즈니스적으로 풀고 있지 못하는 일을 포기하지 않고 시도해 풀어내는 일을 하며 보람을 느낍니다.
이런 이유로, 얻게 된 경험들은 저와 팀 구성원들의 반복적인 업무를 줄여주기 위해 fastlane
, Github Action
, Xcode Cloud
,CircleCI
을 이용한 빌드/테스트/배포 자동화를 도입해 본 경험, 다양한 비즈니스 모델 구현, Custom UI, 딥링크 시스템 추가, 비즈니스/마케팅팀에서 필요한 요구사항을 클라이언트(iOS)에서 해결해낸 경험 등이 있습니다.
Work Experience.
iOS Engineer
2021.04~현재 2년 6개월
에이블리 - 2천만의 AI 쇼핑메이트
에이블리
버티컬 커머스(전문몰) 플랫폼 1위 에이블리 iOS 앱 개발
- MAU 720만 / DAU 133만 앱에서
crash free 99.98% 유지
하며 1주일 배포 주기 유지
- 기술 스택 :
Swift
ReactorKit
RxSwift
UIKit
SwiftUI
Async/Await
- 에이블리 앱 유지보수 주요 내용
- Server Driven UI를 주도적으로 구현, 에이블리 앱 전반적으로 적용
- 데이터 중심의 실험을 통해 스쿼드 기반의 팀에서 수십번의 이터레이션을 진행
- 기술 중심의 조직구조에서 앱 개선
- emergetool / Sentry등 기존에 적용하지 않았던 툴을 찾고 적용
- crash free 99.40% ⇒
99.98%로 개선
- 여러 개선 작업으로 에이블리 앱
설치 용량 109.5mb → 79mb
약 30% 개선
- app local 서버를 통한 앱 어드민 구축
- 프로젝트 모듈화 진행 - 에이블리 / 4910 / 벨라투 3가지 앱
(스크린을 제외한 사용자 통계, 리소스, 내부 디비, 유틸, 싱글턴 등)
- 애플 API / 각종 함수를 async/await로 리팩토링
- SwiftyUserDefaults를 property wapper를 이용해 인하우스로 리팩토링
(이외에도 TouchAreaInset 라이브러리 제거/리팩토링)
- Storyboard기반의 화면 SnapKit 기반의 Codebase 화면으로 리팩토링 진행
- CI/CD 도입을 통해 구성원들의 반복적인 업무 개선 / 문화적으로 개선
- release / tag 추가 자동화 추가
- 테스트 코드 필요성을 느끼고 테스트 커버리지 알리미 추가 & 커버리지 📈
- PR 등록시 assignee 등록, PR title을 통한 라벨 등록, 마일스톤 등록 자동화
- 마스터 머지시에 관련 브랜치, 릴리즈, 마일스톤 삭제 자동화
- 앱스토어 배포 상황 슬랙 공유 자동화 추가
- 에이블리 iOS 개발자 채용기준에서 요구하는 경험을 하고 있어요
22년 11월 01일
Open Source.
HTML Parser
깃헙 잔디를 상태 바에서 확인하는 어플리케이션
MacOS Developer
Jandi - 깃헙 잔디를 상태바에서 손쉽게 보자
깃헙 잔디를 상태 바에서 확인하는 어플리케이션
- 마이너 버전에 포함 되어 업데이트
- Localizing을 통한 한국어, 영어 지역화 처리 구현
- 꾸준한 버그 수정 기여
139 star