{"id":457950,"date":"2024-04-04T09:47:01","date_gmt":"2024-04-04T08:47:01","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=education&#038;p=457950"},"modified":"2025-05-06T15:47:41","modified_gmt":"2025-05-06T14:47:41","slug":"kotlin-learning-guide","status":"publish","type":"education","link":"https:\/\/blog.jetbrains.com\/ko\/education\/2024\/04\/04\/kotlin-learning-guide","title":{"rendered":"A Comprehensive Kotlin Learning Guide for All Levels"},"content":{"rendered":"\n<p>So you want to learn Kotlin \u2013 now what?<\/p>\n\n\n\n<p>Beginners in any field often encounter a fundamental problem: They don&#8217;t know what they don\u2019t know. This resource aims to help self-taught Kotlin learners get a better sense of the learning landscape, from their first <code>fun() main<\/code> to juggling coroutines with ease.<\/p>\n\n\n\n<p>This guide is for anyone interested in the Kotlin language, regardless of how much experience you have. Whether you\u2019re an absolute beginner learning your first language, someone looking to land a programming job, or a seasoned developer looking to deepen your knowledge in a specific area, we have resources to help you move forward.&nbsp;<\/p>\n\n\n\n<p>Using this guide, you can browse our extensive Kotlin courses and find the best choice for you based on your goals. We\u2019ll first tell you a little about Kotlin and the two platforms where you can find JetBrains Academy learning content, but if you want to skip right to the content itself, you can use <a href=\"#learning-guide\" data-type=\"internal\" data-id=\"#learning-guide\">our custom flowchart<\/a> to choose a course quickly. A guide to <a href=\"#get-started-with-jetbrains-academy\">getting started<\/a> is available at the end.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"2560\" height=\"1440\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2024\/04\/DSGN-18628-Kotlin-Guide-blog-post-Blog-Featured-1280x720-2x.png\" alt=\"\" class=\"wp-image-462385\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">About Kotlin<\/h2>\n\n\n\n<p>Introduced by JetBrains in 2010, Kotlin has a succinct and expressive syntax, allowing you to concentrate on your implementation instead of grappling with brackets, null errors, and lengthy compilation times. It is favored by backend, full-stack, mobile, and cross-platform developers at leading companies such as Google, Amazon, and Uber. You can find information on getting started with Kotlin <a href=\"https:\/\/kotlinlang.org\/docs\/getting-started.html\" data-type=\"link\" data-id=\"https:\/\/kotlinlang.org\/docs\/getting-started.html\" target=\"_blank\" rel=\"noopener\">in the official documentation<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Hyperskill vs. JetBrains Marketplace<\/h2>\n\n\n\n<p>There are two places you can find JetBrains Academy learning content: <a href=\"https:\/\/hyperskill.org\/\" target=\"_blank\" rel=\"noopener\">Hyperskill<\/a> and <a href=\"https:\/\/plugins.jetbrains.com\/education\" target=\"_blank\" rel=\"noopener\">JetBrains Marketplace<\/a>. The best choice for you will depend on your needs and preferences.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><\/td><td>JetBrains Marketplace<\/td><td>Hyperskill<\/td><\/tr><tr><td>Cost<\/td><td>All courses are 100% free \u2013 you just need an IDE. JetBrains offers free IDEs for education.<\/td><td>Freemium model \u2013 users get 10 free task submissions per day and unlimited theory lessons.<\/td><\/tr><tr><td>Environment<\/td><td>Everything is hosted in the IDE, which can create a steeper learning curve for complete beginners.<\/td><td>Start with code in your browser, and then transition to projects in an IDE later.&nbsp;<\/td><\/tr><tr><td>Personalization                          <\/td><td>Marketplace courses are not personalized, but you can always set your own pace.<\/td><td>Hyperskill adapts to your level of experience via assessments and can adaptively skip topics you already know.<\/td><\/tr><tr><td>Time<\/td><td>Marketplace courses are usually short, though not always!<\/td><td>Hyperskill certificate tracks are typically longer than Marketplace ones, but the introductory learning tracks are usually short.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Learning Guide<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"2667\" height=\"3510\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2024\/04\/DSGN-18628_Kotlin-Guide_Resources2.png\" alt=\"Learn Kotlin guide with a flow chart for all jetbrains academy kotlin courses and developer tracks\" class=\"wp-image-462407\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/hyperskill.org\/tracks\/69\" target=\"_blank\" rel=\"noopener\">Introduction to <\/a><a href=\"https:\/\/hyperskill.org\/tracks\/69\" target=\"_blank\" rel=\"noreferrer noopener\">K<\/a><a href=\"https:\/\/hyperskill.org\/tracks\/69\" target=\"_blank\" rel=\"noopener\">otlin<\/a><\/h3>\n\n\n\n<p><em>Hyperskill<\/em><\/p>\n\n\n\n<p>This learning track goes through the basics of Kotlin step by step and gives you a good understanding of its position in the development landscape. It\u2019s great for those with no coding experience at all, and it will help you start working with a professional coding environment.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/plugins.jetbrains.com\/plugin\/21067-kotlin-onboarding-introduction\" target=\"_blank\" rel=\"noreferrer noopener\">Kotlin Onboarding<\/a><\/h3>\n\n\n\n<p><em>JetBrains Marketplace<\/em><\/p>\n\n\n\n<p>Kotlin Onboarding consists of three modules, each targeting a specific aspect of Kotlin. It\u2019s best for those with at least a basic understanding of programming, but it provides a good review of essential concepts like object-oriented programming and collections. Check out our <a href=\"https:\/\/blog.jetbrains.com\/ko\/education\/2023\/02\/16\/kotlin-onboarding-introduction\">blog<\/a> <a href=\"https:\/\/blog.jetbrains.com\/ko\/education\/2023\/07\/11\/introducing-module-2-of-kotlin-onboarding-object-oriented-programming\">post<\/a> for more information!<\/p>\n\n\n\n<ol>\n<li><a href=\"https:\/\/academy.jetbrains.com\/course\/21067-kotlin-onboarding-introduction\" target=\"_blank\" data-type=\"link\" data-id=\"https:\/\/academy.jetbrains.com\/course\/21067-kotlin-onboarding-introduction\" rel=\"noreferrer noopener\">Kotlin Onboarding: Introduction<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/plugins.jetbrains.com\/plugin\/21913-kotlin-onboarding-object-oriented-programming\" target=\"_blank\" rel=\"noreferrer noopener\">Kotlin Onboarding: Object-Oriented Programming<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/plugins.jetbrains.com\/plugin\/23369-kotlin-onboarding-collections\" target=\"_blank\" rel=\"noreferrer noopener\">Kotlin Onboarding: Collections<\/a><\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/plugins.jetbrains.com\/plugin\/16628-kotlin-koans\" target=\"_blank\" rel=\"noreferrer noopener\">Kotlin Koans<\/a><\/h3>\n\n\n\n<p><em>JetBrains Marketplace<\/em><\/p>\n\n\n\n<p>This series of exercises is best if you have experience with programming and just want to familiarize yourself with Kotlin syntax. Each exercise begins as a failing unit test that must be fixed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/plugins.jetbrains.com\/plugin\/17654-atomickotlin\" target=\"_blank\" rel=\"noreferrer noopener\">AtomicKotlin<\/a><\/h3>\n\n\n\n<p><em>JetBrains Marketplace<\/em><\/p>\n\n\n\n<p>Designed for both beginners and experienced programmers, the AtomicKotlin course contains exercises that accompany the <a href=\"https:\/\/www.atomickotlin.com\/\" target=\"_blank\" rel=\"noopener\">Atomic Kotlin book<\/a>. You can read an \u201catom\u201d of information in the book and lock in your understanding of the material by completing the exercises in this course.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/hyperskill.org\/tracks\/18\" target=\"_blank\" rel=\"noreferrer noopener\">Kotlin Core<\/a><\/h3>\n\n\n\n<p><em>Hyperskill<\/em><\/p>\n\n\n\n<p>This Hyperskill track is the most comprehensive, focused, and interactive Kotlin learning resource in this guide. It\u2019s packed with 128 hours of short text-based lessons, exercises, and interesting projects to solidify your Kotlin skills on all fronts. The track automatically adapts to your level and lets you skip ahead or review important concepts, and it offers a certificate of completion with a premium subscription.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/plugins.jetbrains.com\/plugin\/23312-coroutines-and-channels\" target=\"_blank\" rel=\"noreferrer noopener\">Coroutines and Channels<\/a><\/h3>\n\n\n\n<p><em>JetBrains Marketplace<\/em><\/p>\n\n\n\n<p>In any Kotlin application where tasks can be performed concurrently or in parallel, coroutines provide a more manageable and less error-prone model compared to traditional threads. This course is useful for anyone looking to gain an understanding of Kotlin\u2019s unique strength as a language, as well as for Android and backend developers looking to improve app responsiveness and resiliency.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/plugins.jetbrains.com\/plugin\/23048-introduction-to-ide-code-refactoring-in-kotlin\" target=\"_blank\" rel=\"noreferrer noopener\">Introduction to IDE Code Refactoring in Kotlin<\/a><\/h3>\n\n\n\n<p><em>JetBrains Marketplace<\/em><\/p>\n\n\n\n<p>This course is a powerful resource for those looking to improve the professionalism and sturdiness of their code while learning a lot of IDE shortcuts along the way. Check out this <a href=\"https:\/\/blog.jetbrains.com\/ko\/education\/2024\/01\/17\/learn-ide-code-refactoring\">blog post<\/a> for more information on the course and code refactoring.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/plugins.jetbrains.com\/plugin\/22214-algorithmic-challenges-in-kotlin\" target=\"_blank\" rel=\"noreferrer noopener\">Algorithmic Challenges in Kotlin<\/a><\/h3>\n\n\n\n<p><em>JetBrains Marketplace<\/em><\/p>\n\n\n\n<p>Aimed specifically at those preparing for a technical interview, this course challenges you with a suite of carefully selected coding challenges that cover the most popular interview topics. Check out this <a href=\"https:\/\/blog.jetbrains.com\/ko\/education\/2023\/07\/19\/algorithms-in-kotlin\">blog post<\/a> for more information on the course.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/hyperskill.org\/tracks\/3\" target=\"_blank\" rel=\"noreferrer noopener\">Kotlin Developer<\/a><\/h3>\n\n\n\n<p><em>Hyperskill<\/em><\/p>\n\n\n\n<p>How does one go from knowing how to make a hangman game to becoming a full-fledged developer? With enough time commitment, this track will get you there. In the roughly 181 hours it takes to complete the Kotlin Developer track from start to finish, you\u2019ll use Kotlin for backend, frontend, and Android app development, gaining practical knowledge through projects and short text lessons. With a premium subscription, you\u2019ll be able to receive a certificate upon completion.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/hyperskill.org\/tracks\/45\" target=\"_blank\" rel=\"noreferrer noopener\">Introduction to Ktor<\/a><\/h3>\n\n\n\n<p><em>Hyperskill<\/em><\/p>\n\n\n\n<p>Created for those looking for a short introduction to backend development, this track covers the basics of Kotlin, web app fundamentals, and REST service development.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/hyperskill.org\/tracks\/37\" target=\"_blank\" rel=\"noreferrer noopener\">Kotlin Backend Developer (Spring Boot)<\/a><\/h3>\n\n\n\n<p><em>Hyperskill<\/em><\/p>\n\n\n\n<p>This sizable certification-eligible track contains many interesting projects that will build your practical backend development experience. It provides a structured approach to understanding web application development with Kotlin and Spring Boot.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/hyperskill.org\/tracks\/95\" target=\"_blank\" rel=\"noreferrer noopener\">Introduction to Android With Kotlin<\/a><\/h3>\n\n\n\n<p><em>Hyperskill<\/em><\/p>\n\n\n\n<p>For a taste of Android development, you can complete this short but in-depth learning track on the design and implementation of Android apps.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/hyperskill.org\/tracks\/16\" target=\"_blank\" rel=\"noreferrer noopener\">Android Developer With Kotlin<\/a><\/h3>\n\n\n\n<p><em>Hyperskill<\/em><\/p>\n\n\n\n<p>This certification-eligible learning track will expand and deepen the knowledge you cultivated in the introductory Android track. Gain experience designing user interfaces and working with remote and local data sources, as well as professional tools like Git and Android Studio.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Connect on Discord<\/h2>\n\n\n\n<p>Even with the perfect learning resource in front of you, you may encounter challenges trying to complete a track on your own. For the added benefits of being in a community of learners, join our Discord server, where you can connect with other learners as well as get help and support from JetBrains Academy course authors.<\/p>\n\n\n    <div class=\"buttons\">\n        <div class=\"buttons__row\">\n                                                <a href=\"https:\/\/discord.gg\/jpsDuV37bW\" class=\"btn\" target=\"_blank\" rel=\"noopener\">JOIN THE DISCORD<\/a>\n                                                    <\/div>\n    <\/div>\n\n\n\n\n\n\n\n<h2 class=\"wp-block-heading\">Get started with JetBrains Academy<\/h2>\n\n\n\n<p>Whether you\u2019re learning on Hyperskill or with a JetBrains Marketplace course, you\u2019ll eventually need an IDE with the JetBrains Academy plugin. You can refer to our installation and learner\u2019s guides for a tutorial.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"How to install the JetBrains Academy plugin\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/g7oLsJDoE3Q?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"How to start a course on JetBrains Marketplace\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/DIo59f6KmQo?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>If you have any questions or would like to share your feedback, feel free to leave a comment below or contact us at <a href=\"mailto:academy@jetbrains.com\">academy@jetbrains.com<\/a>.<\/p>\n\n\n\n<p>Happy learning!<\/p>\n\n\n\n<p><em>Your JetBrains Academy team<\/em><\/p>\n","protected":false},"author":1417,"featured_media":462385,"comment_status":"closed","ping_status":"closed","template":"","categories":[8075,4113,4440,6247],"tags":[6849,156,1853,8192,6939,6850,8175,23,8193,553,21,5787,195,3211],"cross-post-tag":[6355],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/education\/457950"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/education"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/types\/education"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/users\/1417"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/comments?post=457950"}],"version-history":[{"count":9,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/education\/457950\/revisions"}],"predecessor-version":[{"id":565571,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/education\/457950\/revisions\/565571"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/media\/462385"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/media?parent=457950"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/categories?post=457950"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/tags?post=457950"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/cross-post-tag?post=457950"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}