미리보기
기본 정보
안녕하세요. 공학과 현대적인 디자인이 잘 어우러진 iOS 개발자 김응철입니다. - 약 1년 이상 장기 프로젝트들의 경험으로 기획 ~ 배포 과정을 깊이 이해하고 있습니다. - 빠른 편법 보다는 공식 문서 및 WWDC를 참조하여 개발을 하고 있습니다. - Apple과 관련되어 있는 모든 것들을 사랑합니다.
기술 스택
RxSwift, Swift, SwiftUI, combine
프로젝트
편행 v2.0
사이드 프로젝트
2023.12. ~ 2024.03.
한 눈에 여러 편의점의 행사 정보를 확인 할 수 있는 서비스
SwiftUI, Clean Architecture, DI
한 일
- GitHub Actions CI지속적 통합로 SwiftFormat을 각 개발자들에게 테스트하여 코드 일관성 및 품질 35% 향상
- URLProtocol을 사용하여 요청과 응답을 중간에 조작하여 서버 개발 미완성 및 점검 시간에도 서버 없이 네트워크 API Mocking을 테스트할 수 있는 환경 조성
- XCode Configuration을 추가하고 Custom Flag를 설정하여 앱 전반적인 디버깅 프로세스를 최적화하여 오류 추적 시간을 50% 이상 감소
- 다운샘플링과 캐싱을 지원하는 CachedAsyncImage 구현하여 이미지를 불러오는 네트워크 메모리 비용을 약 60% 절감
트러블 슈팅 & 테크 블로그
- Custom XCode Configuration Flag 추가하여 디버그 프로세스 최적화
- 프로젝트 개발 이슈를 효율적으로 관리하려는 여정
- URLProtocol을 이용해 Mock 데이터로 서버 의존도 줄이는 과정
- 서버 없이도, 서버가 있는 것처럼 개발 진행하고 싶은 고민
- SwiftUI에서 ViewModel을 ObservableObject를 채택하면서 DIP를 지키는 방법
- 외부 라이브러리를 지양하고 Clean Architecture를 위한 고군분투
- GitHub Actions로 CI를 구축하여 SwiftFormat 테스트하기
- CI를 통해 각 개발자 코드의 일관성을 유지하고 품질을 유지
페이버
사이드 프로젝트
페이버는 주고받은 선물을 기록하고 친구와 공유 및 리마인더 해주는 서비스
RxSwift, RxFlow, Moya, ReactorKit, OAuth
한 일
- 한 번 불러온 서버 데이터를 로컬 RealmDB에 저장하고, 로딩 화면 대신 콘텐츠를 보여주는 Fetcher를 구현하여 사용자 경험 대폭 증가
- 서버에서 한 번 불러온 이미지를 Cache에 저장하여 이미지 로딩 속도 20% 이상 절감
- 자체 SPMSwift Package Manager를 사용하여 프로젝트 코드를 모듈화하고 재사용 가능한 재사용 가능요소로 분리하여 개발속도 20% 증가
- Pull Request 및 Issue 관리를 체계적으로 하여, iOS 팀 내 코드 리뷰 시간을 평균적으로 30% 감소
트러블 슈팅 & 테크 블로그
- 서버 데이터를 로컬DB에 저장하여, 로딩 중에 콘텐츠 표시하기
- 지루한 로딩 화면, 오프라인 환경에서도 사용자 경험을 높이기 위한 여정
- RxDataSource의 다중 섹션을 사용할 때 ReloadData 문제와 해결방법
- 봉착한 RxDataSource의 한계, 그리고 새로운 DiffableDataSource
- Diffable DataSource ReactorKit으로 복잡한 UI 관리하기
- 고도화된 화면 구성에 대해, 더 효율적인 UI 관리를 위한 노력
- RxFlow로 Coordinator 고급스럽게 사용하기
- 기존 고전적인 Coordinator를 Reactive하게 사용하여 RxSwift와 동화하기 위한 노력
편행 v1.0
사이드 프로젝트
2022.09. ~ 2023.02.
한 눈에 여러 편의점의 행사 정보를 확인 할 수 있는 서비스
RxSwift, ReactorKit, Coordinator
한 일
- Git hooks로 커밋 시 자동으로 코드 컨벤션을 검사하도록 설정, 결과적으로 코드 리뷰 시간을 절약하고 코드 품질을 일관되게 유지함
- Xcode Template을 이용하여 표준화된 코드 스니펫을 재사용함으로써 새로운 Scene 개발에 소요되는 시간 20% 감소
- TestFlight를 통해 테스터를 모집하고 실시간으로 사용자 피드백을 수집하여, 사용자 경험을 중심으로 한 주요 기능 개선안을 도출함
- 공개 후 앱의 성장 로드맵을 작성하고 실행함으로써, 를 3개월 내 평균 70% 를 유지
테크 블로그
- MVVM과 Coordinator Pattern 함께 사용하기 Feat. ReactorKIt
- 화면 전환 코드를 분리하여 VC를 단일 책임으로 만드려는 노력
아이돔
인천대학교
2022.08. ~ 2023.08.
인천대학교 학생들을 위한 기숙사 룸메이트 매칭 및 커뮤니티 서비스
RxSwift, ReactorKit, FCM, DeepLink, OAuth
한 일
- MVVM 아키텍처를 채택하여 컴포넌트들의 재사용성을 높이고 유지보수 시간 약 30% 감소
- FCMFirebase Cloud Messaging을 이용하여 커뮤니티 댓글 실시간 알림을 구현
- 외부 링크 클릭시 앱의 특정 페이지로 바로 이동할 수 있는 DeepLink 구현
- 대규모 프로젝트를 iOS 1인 개발로 3-4개월만에 안정된 앱 출시
포트폴리오
URL
교육
인천대학교
대학교(학사) | 신소재공학
2018.03. ~ 현재 | 재학 중
대외활동
앨런 Swift 마스터 스쿨 부트캠프 17기
기타
- Swift에 대한 내부적인 메커니즘에 이해
- Swift 문법의 메모리 구조를 CS를 이해
- 어플리케이션이 구체적으로 어떻게 동작하는지 학습
인천대학교 어플리케이션 및 서비스 개발 동아리, 앱센터 iOS 파트장
인천대학교 정보전산원
- 파트장으로서 새로운 iOS 팀원들을 선별하고 프로젝트를 위해 매주 스터디를 기획
- 서버, 안드로이드, iOS, 디자이너, 웹 파트가 모여 스터디를 진행하고 프로젝트를 진행
- 개발부터 배포까지 자세한 과정을 배웠습니다.
- 다른 파트와의 협업 능력을 극대화할 수 있었습니다.
자격증
컴퓨터활용능력
1급 | 대한상공회의소
2021.07.