어느새 올해의 절반이 지나가 버렸습니다.
벌써 7월 중순이 되어 조금 늦은 감이 있지만, 올해의 절반을 어떻게 보냈는지 회고해보는 시간을 갖으려고 합니다.
상반기 계획
작년 12월 애플 아카데미를 마치고, 올해 초가 될 때까지만 해도 하려고 했던 것이 많았는데 대표적으로는 아래와 같습니다.
- Swift 문법 다지기
- 코딩 테스트 문제 매일 최소 1문제는 풀기
- iOS 개발 면접 준비
- iOS(UIKit, SwiftUI) 공부 및 정리하기
- Swift Charts, UIButton, UICollectionView, Core NFC, Life Cycle
- 글또 8기 활동
- 예치금 까이지 않기
- 제대로 된 양질의 글 제출하기
- 가능하면 커피챗
- 아카데미 및 사이드 팀 프로젝트 이어가기
- 가능한 빠르게 취업하기
- 개발자 행사 참여
이제부터 위 계획들을 얼마나 잘 실천 했는지 살펴보겠습니다.
Swift 문법 다지기
우선 Swift 문법 다지기는 올해 1월부터 3월까지 인프런
에서 앨런 Swift문법 마스터 스쿨
강의를 들으며 Swift 문법에 대해 자세하게 공부할 수 있었던 것 같습니다.
강의를 듣기 전까지만 해도 "강의만으로 얼마나 배울 수 있을까?" 라는 생각이 강했는데, 주위에서 강의를 들은 많은 사람들이 지속적으로 추천해서 결국 강의를 듣게 되었는데, 결과적으로는 강의를 듣길 잘 했다고 생각이 듭니다.
앨런의 강의를 들으면서 공부하니 확실히 혼자 Swift 문서를 보면서 공부할 때보다 더 자세하게 문법을 공부할 수 있었고, 문서만으로는 잘 이해가 가지 않았던 부분도 이해할 수 있었습니다.
특히 메모리와 동시성에 대한 부분은 혼자 CS를 공부하고, 많은 자료를 찾아보는 것보다 훨씬 큰 도움이 되었던 것 같습니다.
코딩 테스트 매일 최소 1문제 풀기
제가 생각했을 때 어떤 공부든 마찬가지겠지만, 특히 코딩 테스트는 꾸준히 지속적으로 해야 실력이 감퇴하지 않는다고 생각하여 매일 최소 1문제씩은 머리를 써가며 코딩 테스트를 풀어야겠다는 생각을 했습니다.
가끔은 정말 귀찮을 때도 많았지만, 그래도 밤 늦게라도 오늘이 가기 전에 1문제는 풀어야지 라는 생각으로 매일매일 꾸준히 잘 실천하고 있는 것 중 하나인 것 같습니다.
iOS 개발 면접 준비
아카데미를 종료할 즈음에 슬슬 개발 면접 스터디도 준비해야지 라고 생각했었는데, 마침 좋은 기회로 앨런 스쿨의 스터디 팀 멤버들과 개발 면접을 함께 준비 했었습니다.
무작정 혼자 공부할 때보다 공부한 내용을 팀원과 공유하고 서로 의견을 나누니 생각하지 못했던 부분에 대해서도 알 수 있었던 좋은 기회였던 것 같습니다.
다만, 6월부터는 면접 준비가 아닌 다른 방향으로 스터디의 방향성을 변경했는데, 혼자라도 면접 준비를 했어야 했는데 최근에는 개발 면접 준비 자체에는 조금 소홀했던 것 같아 아쉬움도 남습니다.
iOS(UIKit, SwifUI) 공부 및 정리하기
올해 초에 iOS와 관련해서 공부하려고 생각하고 있던 부분은 Swift Charts, UIButton과 UICollectionView의 새로운 구성방식, Core NFC, Life Cycle이 있었습니다.
분명 5개에 대해 모두 공부하긴 했지만, 정리한 내용은 많지 않아 조금은 아쉬운 면이 있습니다.
Swift Charts는 SwiftUI의 Chart를 위한 프레임워크였는데, 초반 내용은 잘 정리하다가 후반 내용을 너무 자세하게 파다보니 내용이 너무 깊어져서 Swift Charts만으로 올해 상반기를 다 보낼 것 같다는 생각이 들어 Swift Charts의 Mark에 대해 정리하다가 다른 내용을 먼저 공부하기로 생각을 바꿨습니다.
UIButton과 UICollectionView는 UIButton Configuration과 UICollectionView CompositinalLayout 등에 대해 정리해보고자 했는데, UIButton Configuration에 대해서는 공부한 내용을 잘 정리한 것 같지만, UICollectionView CompositionalLayout에 대해서는 공부하고, 코드로 응용해보기도 했지만 내용을 제대로 정리하지는 못했습니다.
UICollectionView CompositionalLayout에 대해 정리하려고 생각하니 UICollectionView 자체에 대해 먼저 정리하고 싶다는 생각이 들고, 그러다보니 UITableView와의 차이에 대해 먼저 정리하고 싶고, UICollectionView와 UITableView가 모두 상속받고 있는 UIScrollView에 대해 먼저 정리하고 싶다고 욕심이 점점 커져서 결국 UICollectionView CompositionalLayout에 대해 정리하는 것을 잠시 보류하게 되었습니다.
꼭 내용을 선형적으로 따라갈 필요는 없다고 생각하지만, 뭐든 제대로 하지 않으면 만족하지 못하는 성격이라 자꾸 욕심이 커져 잘 실천하지 못한 것 같습니다.
Core NFC의 경우에는 이론적인 부분은 열심히 공부하고 정리한 것 같지만, 아직 코드가 만족할만큼 이해되지는 않아 코드로 정리하지는 못해 아쉬운 면이 있습니다.
Life Cycle의 경우에는 iOS App, Scene, ViewController의 Life Cycle에 대해 공부했는데, ViewController Life Cycle에 대해서는 코드도 작성해보고 공부한 내용에 대해 최소한의 만족이 될 만큼은 정리를 했지만, App과 Scene의 Life Cycle에서는 마찬가지로 점점 커지는 욕심 때문에 최소한의 만족할 만큼 이해하지 못해 정리하지 못했습니다.
글또 8기 활동
글또 7기에 이어 글또 8기로도 활동했는데, 이번 글또 8기에서는 저번 7기에서의 아쉬움을 바탕으로 "예치금 까이지 않기", "제대로 된 양질의 글 제출하기", "가능하면 커피챗"이라는 3가지 목표를 세웠습니다.
우선 예치금은 아슬아슬하게 패스권 2장을 사용하여 까이지 않고 잘 마무리할 수 있었습니다.
패스권 2장을 전부 초중반에 사용했는데, 의도치 않은 건강 이슈로 초중반에 사용하게 되어 조금은 아쉬운 마음도 있지만, 그럼에도 불구하고 예치금 까이지 않기라는 목표를 달성할 수 있어서 뿌듯한 마음입니다.
제대로 된 양질의 글 제출하기에 대해서는 약간 애매한데, 우선 이번 글또 8기를 통해 제출한 글은 아래와 같습니다.
- 글또 8기를 시작하며
- [Swift Charts] 1️⃣ Swift Charts 가볍게 훑어보기
- [Swift Charts] 2️⃣ Swift Charts 톺아보기 - Chart
- [UIKit] ViewController의 생명주기(Life Cycle)
- [UIKit] UIWindow 객체의 역할
- [Core NFC] Core NFC 훑어보기
- [iOS] 실제 디바이스가 없는 경우의 개발 환경
- [UIKit] iOS 15 이후의 UIButton 구성 방법
- [Cocoa Design Patterns] KVO 패턴
특히 이 중 "실제 디바이스가 없는 경우의 개발 환경", "UIWindow 객체의 역할", "iOS 15 이후의 UIButton 구성 방법"이라는 3개의 글은 감사하게도 "서핏"이라는 플랫폼에 큐레이팅 되기도 했습니다.
아직까지는 큐레이팅 되는 것이 부끄럽기도 하고, "이런 글이 올라가도 되는걸까?"" 라는 생각과 "큐레이팅 기준이 도대체 뭐길래?" 라는 생각을 하게 되지만, 그럼에도 이렇게 큐레이팅 되면서 "더 잘 정리해서 남 부끄럽지 않은 글을 작성해야겠다" 라는 마음을 다 잡게 해줘 감사한 마음이 큽니다.
이 외에도 원래 제출하려고 정리했지만, 제출할만큼의 퀄리티가 되지 않아 작성하다가 제출하지 못한 "[Swift Charts] 3️⃣ Swift Charts 톺아보기 - Marks"와 "[UIKit] App, Scene의 생명주기(Life Cycle)"라는 글이 있습니다.
이번 회고까지 합치면 총 12개의 글을 작성했고, 그 중 10개의 글을 제출한 셈이 되겠네요.
사실 이번 글또 8기 글을 작성하면서 생각했던 것은 "제출을 위한 글보다는 잘 정리해서 설명할 수 있는 글을 작성해서 제출하자"라고 생각하며 글을 작성했습니다.
그러다보니 작성은 했지만 만족스럽지 못해 제출하지 못한 글이 생겨나기도 했고, 또 제출했던 글도 다시 한 번씩 보거나 공부하면서 새롭게 알게된 내용으로 정정하거나 추가할 내용이 생기면 지금도 조금씩 수정하고 있습니다.
양질의 글인지는 아직까지 잘 모르겠지만, 그럼에도 최대한 잘 정리하려고 노력하고 있고, 또 글을 작성하고, 수정하면서 글 쓰는 능력이나 글 자체의 내용도 조금씩 발전하고 있는 것 같아 그래도 "양질의 글 제출하기"도 어느정도 만족할 정도는 되는 것 같습니다.
가능하면 커피챗은 아쉽게도 이번 8기에서 제대로 해보지 못한 것 같습니다. 그래도 7기 때는 온라인 커피챗이라도 1번 참여했었는데, 이번 기수에서는 한번도 참여하지 못해 아쉬운 마음이 큽니다.
다음 9기에서는 꼭 커피챗에 참여해보려 합니다.
아카데미 및 사이드 프로젝트 이어가기
작년부터 해왔던 아카데미 프로젝트와 사이드 프로젝트를 올해에도 계속 이어가는 것이 목표였는데, 4월까지는 그래도 열심히 잘 이어나갔던 것 같습니다.
도중에 팀원이 다른 일로 바빠서 팀을 나가는 일도 있었고 했지만, 그럼에도 불구하고 남은 팀원끼리 최대한 팀 프로젝트를 잘 이어가보자 생각했고, 그런 생각 덕분에 팀 프로젝트를 잘 이어갈 수 있었던 것 같습니다.
다만, 5월에는 팀원들이 바빠서 제대로 이어가지 못했고, 6월에는 저의 개인적인 건강 이슈로 잘 이어나가지 못해 아쉽기도 합니다.
7월에는 복귀해야지 라는 생각이 있었는데, 7월이 되니 또 다른 일로 바빠져 아직까지도 팀 프로젝트를 이어가지 못하고 있는데 8월에는 되도록 팀 프로젝트를 다시 이어나가보려 합니다.
가능한 빠르게 취업하기
작년 12월 아카데미를 끝낼 때까지만 해도 빠르게 취업해야지 라고 생각하고 있었는데, 올해 초에 생각해보니 스스로 부족한 부분이 많다고 느껴 "올해 안에 취업하기"로 목표가 바뀌었습니다.
아직도 스스로 부족하다고 생각하는 부분이 많지만, 그런 부분들을 최대한 공부하며 채워나가고 있고 그동안 막연히 iOS 개발자로 취업해야지 라는 생각만 갖고 있고, 어떠한 솔루션을 제공하는 회사에 취업해야지 라는 생각은 하지 않았었는데, 최근 조금은 관심이 생긴 회사들이 있어 최대한 그런 회사들에 맞춰 공부하고 하반기에는 지원해보려고 합니다.
개발자 행사 참여
올해 초만해도 빠르게 서울로 올라가서 취업 준비를 하며, 개발자 행사에도 많이 참여해보고 싶었는데 여러 상황이 따라주지 않아서 아직도 서울로 올라가지 못했고, 개발자 행사에도 참여하지 못한게 아쉽습니다.
다만, 지금 저에게 당장 가장 중요한 것은 개발자 행사보다는 "올해 안에 취업하기"가 더 중요하다고 생각해서 취업 후에 개발자 행사에 참여해도 되지 않을까 라는 생각이 듭니다.
상반기 총평
전체적으로는 여러모로 아쉬움도 많이 남긴 하지만, 건강 이슈로 인해 가용 시간이 많지 않았음에도 불구하고 최우선순위에 있던 계획들은 최소한의 만족을 할 만큼은 실천한 것 같아 뿌듯하기도 합니다.
특히 Swift와 iOS에 대한 부분은 작년 아카데미에 있을 때보다 올해 상반기동안 배우고 채운 내용이 더 많은 느낌이라 iOS 개발자 취업에 한 발자국은 가까워진 것 같다는 생각이 들었습니다.
다만, 아쉬움이 남은 부분에 대해서는 앞으로 개선할 수 있도록 노력해야할 것 같습니다.
하반기 목표
기본적으로는 원래 세웠던 계획이 상반기 계획이 아니라 1년 계획이었기 때문에, 상반기와 계획을 같게 가져가려 합니다.
다만, 상반기에 건강으로 인해 아쉬움이 남은 계획들이 있으므로, 하반기에는 건강도 잘 챙길 수 있도록 해야겠습니다.
또, 건강을 회복하면서 한꺼번에 많은 것을 동시에 하려다보니 갑자기 바빠지고, 또 자잘한 계획들이 어긋나는 경우들이 생기기도 했는데, 하루의 큰 계획만 세우기 보다는 조금 더 자세한 타임 테이블을 생각할 수 있도록 노력해야 겠습니다.
마무리
프로젝트나 팀 회고가 아닌 개인 회고가 상당히 오랜만이라 내용이 조금 어수선한 감도 있지만, 그럼에도 불구하고 올해 상반기를 다시 되돌아보고 내가 무엇을 했고, 목표에 얼마나 가까워졌는지를 다시 생각해보며 새로운 계획을 세우는 데 참고할 수 있어서 좋은 시간이었던 것 같습니다.
다음 회고에서는 이번 상반기 회고보다 더 목표를 잘 달성할 수 있었으면 좋겠습니다.
'Reflection' 카테고리의 다른 글
Apple Developer Academy @ POSTECH (애플 개발자 아카데미) 1기 수료 후기 및 회고 (1) | 2022.12.31 |
---|