깊이있게 파고드는 개발자, 이창환입니다.

# 🐗Introduce
- 신입 안드로이드 개발자 이창환입니다.(닉네임: 멧돼지) - 깊이 있는 학습을 좋아하여 관심 분야에 대한 학습을 꾸준히 하는 편입니다. - 문서화를 굉장히 중요하게 생각하여 항상 기록하는 습관을 가지고 있습니다. 꾸준히 기술 블로그를 운영하고 있습니다. - 팀원과의 소통을 중요한 가치라 생각합니다. - 특히 관심 있는 분야로 오류처리, Http 클라이언트 라이브러리, 비동기 처리가 있습니다.

# ✏️ Blog 학습하는 데 있어서 블로그를 적극 이용하고 있습니다. 각각의 글들을 상세히 기록하여 학습한 내용에 대한 정리, 몰랐던 부분에 대한 추가적인 학습을 진행하고 있습니다. 이를 통하여 같은 문제를 맞이했을 때 빠르게 대처할 수 있도록 하고 있습니다.
# 💪🏼 관심 기술
1. 오류처리
사용자와 직접 맞닿아있는 클라이언트 개발자로서 오류처리는 굉장히 중요한 분야라고 생각합니다. 사용자에게 좋은 경험을 제공하고자 모니터링 시스템 구축, 비정상 종료 최소화, 앱을 이탈하지 않고 지속해서 앱에 머무를 수 있는 장치 등 오류처리 관련 부분을 항상 고민하고 있습니다. - [**TripDraw의 오류처리 시스템 대략적인 설명 및 Sentry를 통한 모니터링 시스템 구축**](https://mccoy-devloper.tistory.com/131) - [**callAdapter를 통한 서버통신시 오류사항 일반화 및 처리방법 고도화(TripDraw 프로젝트에서 추가적인 고도화 작업 진행)**](https://mccoy-devloper.tistory.com/58)
2. Retrofit,OKHttp
현재까지 진행한 프로젝트에서 주로 사용해온 Retrofit, OkHttp의 내부 구조까지 돌아보는 깊이 있는 학습을 진행하였습니다. 이를 통해 Okhttp, Retrofit를 효율적으로 사용하는 방법, Http 통신에 대한 학습, 쓰레드풀 관리, 라이브러리 코드를 만드는 기법을 학습하였습니다. - [**Retrofit의 callback 처리 주체 관리 및 OkHttp 쓰레드풀 관리**](https://mccoy-devloper.tistory.com/126) - [**Thread pool 의 전반적인 이해 및 Okhttp의 쓰레드 관리 효율을 높이는 방법 (Java CompletableFuture와 비교)**](https://mccoy-devloper.tistory.com/127)
3. UI 관련 아키텍쳐 패턴
우아한테크코스 과정을 통하여 아키텍처 패턴을 유행을 따라서 사용하는 것이 아닌 일반적으로 많이 사용된 패턴들을 직접 사용해보고 장단점을 느끼고 비교해보는 과정을 거쳤습니다. 이를 통해 아키텍처 패턴의 본질적인 의미와 중요시해야 하는 지점을 파악할 수 있었습니다. - [**아키텍처 패턴에 대한 고찰(MVC,MVP)**](https://mccoy-devloper.tistory.com/120)
# 🤼‍♂️ Experience
우아한테크코스 5기 (2023/02~현재)
- 우아한형제들에서 진행한 안드로이드 개발자 교육 양성 과정 ### 📖 학습 내용 정리 - [우아한테크코스를 진행하며 학습한 내용 정리](https://2chang5.github.io/woowa-course) ### 🧑🏼‍💻관련 프로젝트 - TripDraw ### 🤼‍♂️ 획득 역량 - 컴퓨터 공학의 기본적인 지식과 용어를 배우며 기초를 다질 수 있었습니다. - 객체지향, 아키텍처 패턴에 대한 이해, 리펙터링 기법 등 안드로이드에 국한되지 않은 개발을 학습하였습니다. - 팀 프로젝트를 진행하며 다양한 개발자들과 협업하는 기회를 통해 성장할 수 있었습니다.
IT 연합동아리 SOPT 29, 30기 활동(2021/07~ 2022/09)
- 전국 최대규모 대학생 연합 IT 벤처창업 동아리 ### 🧑🏼‍💻관련 프로젝트 - ReadMe - Spark ### 🤼‍♂️ 획득 역량 - 개발에 대한 기초지식을 습득하고 깊은 학습에 대한 초석을 다질 수 있었습니다. - 안드로이드 전반에 대해 기초적인 지식을 학습하였습니다. - 아키텍처 패턴 스터디를 통한 MVVM 학습
# 🏋🏼‍♂️ Projects
🛫 TripDraw(2023/06~현재)
**팀 구성**: 서버:4 안드로이드:3 **활동 의의**: 우아한테크코스에서 진행한 프로젝트로 안드로이드 팀의 리드 역할을 맡아 주도적으로 기초적인 코드 기반을 닦은 프로젝트입니다.
✍️ 요약
위치 트래킹을 기반으로 감상을 남기고 타인과 공유할 수 있는 서비스입니다.
💡 학습한 부분
우아한테크코스 과정을 거치며 객체지향, 도메인, 개발전반의 개념을 학습 후 도입해본 프로젝트입니다. 팀의 리드로서 팀을 이끌고 모든 부분에 대해 확실하게 학습할 수 있는 계기가 되었습니다. 일정 추산, 팀원 간의 갈등 해소 등 개발 외적으로도 많이 성장하게 되었습니다. [TripDraw 프로젝트의 자세한 학습 내용을 정리한 페이지](https://2chang5.github.io/trip-draw) - 도메인에 대한 개념 학습 및 객체지향적으로 코드 작성 - 아키텍처 패턴 전반에 대한 학습 - 테스트 도입 - 서버 통신 오류처리(callAdapter)관련 보일러 플레이트 코드 제거 - OkHttp 학습 내용 적용 및 최적화 - 촘촘한 오류처리 - 모니터링 시스템 도입
🖥 담당한 기능 (Android)
- 안드로이드 관련 기초세팅 - Http 클라이언트(Retrofit2, OkHttp) 기초세팅 - Log 및 에러 모니터링 툴 Sentry, firebase crashlytics 세팅 - 소셜 로그인 및 토큰 관련 처리 - 위치 트래킹 및 지도 위치 표시 기능 개발
🔗 Link
[**gitHub**](https://github.com/woowacourse-teams/2023-trip-draw) [**PlayStore**](https://play.google.com/shttps://play.google.com/store/apps/details?id=com.teamtripdraw.android&hl=ko-KRtore/apps/details?id=com.teamtripdraw.android&hl=ko-KR)

📖 READ ME(2022/04~2022/10)
**팀 구성**: 기획: 1 디자인: 3 서버: 3 IOS: 2 안드로이드: 3 **활동의의**: 안드로이드 팀원으로 참여하여 모듈 분리에 대한 학습을 진행하고 retrofit callAdapter 커스텀을 통한 에러핸들링에 대하여 학습하였습니다.
✍️ 요약
책을 읽은 감상을 기록하며 앱을 이용하는 모든 인원의 감상을 공유하여 새로운 분야의 책에 대한 발견 등 책을 더 풍요롭게 읽을 수 있도록 도와주는 서비스입니다.
💡 학습한 부분
두 번째로 진행한 안드로이드 프로젝트로 기존 프로젝트에서 느낀 오류처리 관련 문제점을 개선하려 노력하였으며 새로운 챌린지 요소인 멀티모듈을 도입하며 학습을 시도하였습니다. [ReadMe 프로젝트의 자세한 내용을 정리한 페이지](https://2chang5.github.io/read-me) - 모듈 관련 세팅 학습 - 모듈을 나누는 장점 및 단점 체험 및 이해 - 모듈을 나눔으로써 뚜렷이 나타나는 의존에 대한 이해(dip, di) - 멀티모듈 환경에서 gradle 관리를 위한 방법 학습 - 기존 프로젝트에서 느낀 오류처리에 대한 문제점 개선(callAdpater 최초 도입) - 각종 오류처리 핸들러에 대한 학습 및 장단점 비교
🖥 담당한 기능 (Android)
- 오류처리를 위한 callAdapter 커스텀 오류처리 코드 가독성 강화 - 소셜 로그인 네이버 카카오 및 로그인 작업 - 네이버 책 검색 api 연동
🔗 Link
[**gitHub**](https://github.com/TEAM-README/Readme-AOS) [PlayStore](https://play.google.com/store/apps/details?id=com.readme.android)

⭐ SPARK(2021/12~2023/01)
**팀 구성**: 기획:2 디자인:3 서버:3 IOS:3 안드로이드:4 **활동의의**: 최초로 진행한 안드로이드 프로젝트로 팀원들의 도움을 받아 안드로이드의 기본에 대해 학습한 프로젝트입니다.
✍️ 요약
**Spark**는 혼자 습관을 만드는 데 어려움을 느끼는 사용자들이 `친구와 함께` 서로의 시너지를 느끼며, 보다 성공적인 습관 경험을 만들어낼 수 있도록 도와주는, `66일간의 습관 도전 서비스`입니다.
💡 학습한 부분
안드로이드 개발을 시작한 지 4개월 차에 진행한 프로젝트로서 여러 기술을 맛보고, 얕지만 다양한 경험을 통하여 안드로이드 전반에 대하여 학습하기 시작한 프로젝트입니다. [Spark 프로젝트의 자세한 내용을 정리한 페이지](https://2chang5.github.io/spark) - 안드로이드 초심자로서 아키텍처 패턴에 대한 맛보기 - 애니메이션, 무한스크롤, 복잡한 뷰 상태 처리 등 다양한 경험 - 오류처리에 대한 필요성 체감(Http 통신 라이브러리에 대한 학습) - GA, AppTester 등등 다양한 라이브러리 체험
🖥 담당한 기능 (Android)
- 홈 화면 - 습관 방 생성 - 대기 방 - 목표작성 - GA를 통한 사용자 지표를 분석하여 생명관련 시스템 업데이트 1.0.2
🔗 Link
[gitHub](https://github.com/TeamSparker/Spark-Android) [PlayStore](https://play.google.com/store/apps/details?id=com.teamsparker.android) ------ # 📱Contact 📩 **Email:** [chhlee13@gmail.com](mailto:chhlee13@gmail.com) 🧑🏼‍💻 **Github:** https://github.com/2chang5 📚 **Tistory Blog:** https://mccoy-devloper.tistory.com/