[Kotlin 독학 어떻게 했어요? +아무 프 | 커리어리

[Kotlin 독학 어떻게 했어요? +아무 프로그래밍 언어 배우기 팁] 프로그래밍 언어 독학은 어떻게 할까요? 사람마다 학습 방법이 다르겠지만, 제가 하는 방법 공유합니다. 1️⃣ 코틀린 오피셜 도큐먼트를 읽어보자 새 프로그래밍 언어를 배울 때 제일 처음 하는 것은 바로 오피셜 도큐먼트 읽어보기입니다. 오피셜 사용법 도큐먼트는 프로그래밍 언어에 관련된 기본적인 상식과 Syntax가 잘 설명되어 있습니다. 게다가 예시 코드도 간단하게 적혀있어서 쉽게 따라 적으며 손에 익히는데 도움됩니다. 한 번 읽고 끝내는 것이 아니라, 첫 번째는 훑어보고, 두 번째 샅샅이 읽어봅니다. 처음 프로그래밍 언어를 배우기 시작했었을 때는 5-6번 읽어봤던 것 같습니다... (코딩 기본기가 없어서 이해 자체가 안 됬었음) 프로그래밍 언어를 처음 배울 때 기본기와 상식을 제대로 알아두면 나중에 막 따라 적는 것보다 더 높은 퀄리티의 코드를 적을 수 있습니다. 뿐만 아니라 직장 동료의 코드를 리뷰할 때 훨씬 더 유익한 피드백을 제공할 수 있어서, 요즘 새 언어를 배울 때 꼭 한 번씩 읽어봅니다. 예를 들면 "코틀린"이 추천하는 "최상의 방법"으로 코드를 짜는 법이 나와있습니다. "Condition이 두 개일 경우 if-else를 추천하고, 세 가지 이상일 경우 when 사용을 추천한다"등 특정 프로그래밍 언어에 적합한 팁이 적혀있기 때문에 알아두면 코드 리뷰할 때 좋은 피드백을 제공할 수 있습니다. 🔗 코틀린 배우러 가기: https://kotlinlang.org/docs/home.html 2️⃣ Kotlin in Action 오피셜 도큐먼트의 단점은 설명이 부족하다는 것. 설명과 예시 코드에 디테일이 부족해서 stackoverflow에서 찾아봐야 하는데, 이 책은 설명에 깊이가 있어서 많은 도움이 되었습니다. 책까지 구매해서 읽고 싶지 않다면 오피셜 도큐먼트만 읽어봐도 충분할 것 같습니다. 프로그래밍 언어마다 오피셜 도큐먼트의 퀄리티가 달라서 코린이라면 오피셜 도큐먼트와 함께 같이 읽어보는 것을 추천합니다. (개인적으로 자바 같은 경우 오피셜 도큐먼트보다 책 보며 배우는 게 더 좋았음) 대부분 회사에서 자기 계발에 필요한 책 구매를 지원해줍니다. 업무에 관련된 책 구매일 경우, 매니저와 상담하면 무료로 지원해 줍니다. 🔗 책 구매 하기: https://amzn.to/3oBmN7F 3️⃣ 코드 리뷰하기 1번과 2번 과정을 거치면서 코틀린 코드 리뷰도 함께 했습니다. 특히 코틀린을 잘 아는 직장 동료의 코드 리뷰에 피드백, 질문 그리고 토론을 했습니다. 사소한 점에 대해 (예: companion object의 적합한 사용 법) 토론하거나, 첫 번째와 두 번째 스텝을 통해 배운 점을 바탕으로 피드백을 주고받으면 훨씬 많은 정보를 얻을 수 있습니다. (그리고 이상하게 토론으로 알게된 정보는 안 까먹게 되더라고요) 토론의 중요성은 내가 알지 못한 점을 익힐 수 있다는 것입니다. 예를 들면 같은 서류를 읽어도 읽는 사람마다 흡수하는 정보량은 다릅니다. 토론을 통해 그 격차를 좁힐 수 있는 것 같습니다. 또한, 내가 (빨리 읽는다고) 놓쳤던 부분을 동료가 언급해서 알게되기도 합니다. 4️⃣ 코드 베이스 훑어보기 특정 프로그래밍 언어를 처음 사용한다면, 그 언어로 짜인 코드 베이스를 한 번 훑어보는 것을 추천합니다. 전체적인 코드 흐름을 보면 책에서 배웠던 것들이 이해가 됩니다. 코드 일부분만 보고 내가 맡은 부분만 이해한다면 전체적인 흐름을 읽을 수 없습니다. 코드 베이스마다 테스트 쓰는 법, kotlin doc 작성하는 법 그리고 세세한 디테일이 다를 수 있습니다. 이 흐름은 코드 베이스를 읽고 훑어보면서 파악할 수 있습니다. 뿐만 아니라, 개인적으로 책에 나온 예시보다 실제 업무와 관련된 코드 베이스를 보니까 더욱더 빨리 사용법을 익힐 수 있었습니다. 5️⃣ 코드 짜며 손에 익히기 (coding muscle memory) 제일 마지막은 코드 사용이 아닐까요? 파이썬도 자주 안 쓰니까 디테일을 까먹게 되던데, 배워도 자주 사용하지 않으면 무용지물이 되는 것 같습니다. 간단하게 처음에는 refactoring으로 시작했습니다. 프로그래밍 언어가 손에 익지 않았을 때는 앞서 훑어 본 코드 베이스를 조금 refactoring 하면서 코드 퀄리티를 올렸습니다. 특히 코틀린 오피셜 도큐먼트에 언급된 방식이 적용 안 되었던 부분을 찾아서 refactoring 하면서 그 언어를 배웠습니다. 그 후 동료들에게 코드 리뷰를 받았는데 이때 토론과 피드백을 통해 많은 것을 배울 수 있었습니다. 다른 직장 동료는 자신이 배운 점을 팀원들에게 가르쳤습니다. 한 시간 미팅 동안 "코틀린 사용법"이란 주제로 코틀린 장점이 드러나는 점들을 직접 코드로 작성하면서 팀원들에게 가르쳐 줬습니다. 다른 사람에게 가르치면 배울 수 있는 점이 많은 것 같습니다. 기본적으로 자바나 파이썬 등 몇 가지의 프로그래밍 언어를 알면 Kotlin 프로그래밍 언어를 배우는 건 쉽습니다.

Kotlin Docs | Kotlin

Kotlin Help

2022년 5월 12일 오전 4:39

댓글 4

함께 보면 더 좋은

[경제 불황 (recession) 동안 개발자가 해야 할 것] 요즘 recession이란 단어가 많이 들리는데, "개발자가 그동안 해야 할 것"이란 주제로 쓴 글을 읽고 흥미로워서 재 생각과 함께 요약해서 올립니다. 1️⃣ Time to Learn a New Skill 경제 불황 속에서도 고용은 이루어지고, 회사가 항상 필요로 하는 스킬이 있습니다. 작가는 불경기 동안 새로운 스킬을 배우는 것이 좋다고 합니다. "시간이 없다"라고 할 수 있는데, 보통 경제 불황은 몇 년간 지속되며, 현재 2023년부터 경기 침체에서 벗어나기 시작한다고 예측한다고 합니다. 총 1년 반 동안 꾸준히 자신을 레벨업 시킬 수 있는 기술을 더 배울 수 있는 것이 좋겠네요. 과거 포스팅에서 자주 언급했었는데, 개발자라면 많이 배울 수 있는 곳에서 일하는 것이 도움된다고 생각합니다. 개인적으로 코드를 복붙했던 회사에서 잠깐 일했었는데 일하는 8시간 동안 성장할 기회가 없었습니다. 따로 집에서 공부하는 것도 도움되지만, 풀타임으로 일하고 따로 배우는 것은 쉽지 않습니다. 무엇보다도 "회사 일"을 통해서 배울 수 있는 것이 있습니다. 예를 들어 방대한 시스템이나 많은 트래픽이 발생하는 어플의 경우 그에 맞는 소프트웨어 성능을 최적화할 수 있는 방법을 배울 수 있습니다. 개인 사이드 프로젝트를 통해 이런 점들을 배우는 것은 한계가 있습니다. 따라서 최대한 많이 배울 수 있는 곳에서 개발 산업이 항상 필요로 하는 기술을 실무를 통해 익히는 것이 아주 큰 도움이 된다고 생각합니다. 그 외 대학원 진학도 가능합니다. 현재 사이버 보안 엔지니어인 남편은 비전공자 그리고 독학으로 엔지니어가 되었습니다. 최근 요즘 부상하는 사이버 보안 스킬을 더 깊이 파고들기 위해 미국 파트타임 대학원에 지원했습니다. 현재까지 UC Berkeley와 위스콘신 대학에서 승인이 났고 다른 학교들도 기다리고 있는데, 프로그램마다 가격 차이가 많이 납니다. 온라인 대학원 프로그램의 경우 최소 5천 불에서 8천만 원까지 드는 프로그램이 있습니다. 테크 회사의 경우 최소 천 불에서 많게는 15000불까지 교육 지원 혜택이 있습니다. 파트타임으로 할 경우 회사에서 지원받아서 대학원 공부하는 것도 고려해볼 수 있습니다. 2️⃣ Market Yourself 당신 자신을 마케팅하기. 작가는 가르침과 블로깅 그리고 소셜 미디아를 통해 자신을 마케팅하고 있다고 합니다. 다른 개발자들을 가르치는 콘텐츠를 만들 수 있는 인내심이 있다면 마케팅에 큰 도움 되며, 보너스로 유튜브 수입도 얻을 수 있다고 하네요. 그 외 작가는 현재 365일 동안 매일 블로그 포스팅하는 것을 목표로 두고 있다고 합니다. 개인적으로 유튜브는 정말 많은 시간과 에너지가 필요한 것 같습니다. 예전에 잠깐 했었을 때 스크립트 작성과 녹음만 5시간이 걸렸고 편집은 풀타임 직장 때문에 거의 7일 넘게 걸렸습니다. 주말에도 편집하면서 너무 힘들었던 기억이 있지만, 대신 말하기 연습을 할 수 있는 아주 좋은 경험이었습니다. 그리고 제 이야기가 도움이 많이 되었다는 코멘트를 볼 때마다 너무 행복했습니다. 영상 한 개당 일주일 이상 걸리는데, 그 시간이 없다면 블로그나 책 쓰기부터 시작하는 것도 나쁘지 않다고 생각합니다. 3️⃣ Get a New Job 작가가 말하기를 대부분의 회사들은 실력 있는 개발자가 지원하는 비중이 낮기 때문에 오히려 경기 침체 때 자신감을 갖고 새 직장을 잡는데 도전하라고 합니다. 세 번째의 경우 영주권이 없는 해외 근무자라면 조금 더 신중하게 생각해야 할 문제인 것 같습니다. 미국과 캐나다의 경우 고용자가 취업 비자를 지원해주는 경우가 많습니다. 해고될 경우 취업 비자가 소멸되어 신분을 잃는 경우가 생기기 때문에 좀 더 신중하게 다가가는 것이 옳다고 생각합니다. 미국의 경우 현재 취업 비자 받는 것이 하늘의 별따기이며, 취업 허가증 받는 것조차 팬데믹 이전보다 2배 이상 걸립니다. 다만 경기 침체가 올 경우 취업 비자를 지원하는 회사가 줄어들어 오히려 비자 수령이 빨라질 수도 있습니다. 마지막으로 해외 취업 준비 및 근무 중일 경우 개인적인 경험을 통해 한 가지 말씀드리자면, 취업 비자가 받기 힘든 곳에서 일하고 있는 외국인 근로자일 경우 해외 지사가 많은 큰 회사에서 일하는 것이 도움된다고 생각합니다. 예를 들어 미국의 경우 취업 비자를 못 받고 캐나다 지사로 이직한 개발자가 많습니다. 매니저에게 이야기한 후 따로 면접 볼 필요없이 인사 이동만 하면 됩니다. 같은 회사 내에서 팀만 변경하기 때문에 주재원 비자를 받을 수 있고, 이런 비자의 경우 나라마다 다르지만 최소 3주에서 3개월 걸립니다. 2017년도에 저처럼 처음부터 다시 면접 준비해서 다른 나라에 있는 새 회사에 취직하려면 기간이 최소 4개월에서 6개월 이상 걸립니다. 요즘은 팬데믹 때문에 기간이 더 걸린다고 하네요. 최근에 미국 취업 비자를 수령받지 못해 캐나다 지사에 있는 팀으로 이직한 직장 동료가 있는데, 캐나다 비자를 무려 4주 만에 수령했습니다.

What To Do as a Software Developer During a Recession?

Medium

추천 프로필

현직자에게 업계 주요 소식을 받아보세요.

현직자들의 '진짜 인사이트'가 담긴 업계 주요 소식을 받아보세요.

커리어리 | 일잘러들의 커리어 SNS