Anda di halaman 1dari 27

Menitih karir sebagai Software Developer Dicoding

Berikut tahapan yang bisa Anda lalui:

1. Langkah ke-1 Memulai Pemrograman Dengan Kotlin


Langkah pertama untuk menjadi seorang Android Developer dengan mempelajari bahasa
yang direkomendasikan oleh Google.
2. Langkah ke-2 Belajar Membuat Aplikasi Android untuk Pemula
Buat aplikasi pertama Anda dengan memahami dasar-dasar membuat tampilan dan logika
aplikasi.

3. Langkah ke-3 Belajar Fundamental Aplikasi Android


Perdalam keahlian Anda di dunia pemrograman Android dengan mempelajari cara membuat
aplikasi yang dapat mengambil data dari server dan menyimpannya ke dalam database.
4. Langkah ke-5 Belajar Pengembangan Aplikasi Android Intermediate
Perdalam keahlian untuk menjadi Associate Android Developer yang fokus pada
pengalaman pengguna yang lebih baik.

5. Langkah ke-2 Belajar Prinsip Pemrograman SOLID


Memperkaya modal menjadi Android Developer dengan belajar prinsip dasar SOLID.

6. Langkah ke-6 Menjadi Android Developer Expert


Jadilah developer expert dengan belajar berbagai macam skill yang diperlukan di dunia
industri, termasuk performa dan keamanan aplikasi.

IOS
Hardware

Kebutuhan penting nomer wahid adalah hardware yang meliputi komputer dan peranti iPhone.
Berikut spesifikasi dari hardware yang diperlukan untuk berkarier sebagai iOS Developer:

1. Komputer/Laptop dengan spesifikasi minimal:


a. Sistem Operasi MacOS Mojave 10.14.4. 
b. Prosesor Intel i3 (Rekomendasi Core i5 ke atas).
c. RAM sebesar minimum 4 GB (Rekomendasi 8 GB).
d. Resolusi layar 1366x768 (Rekomendasi Full HD 1920x1080).
2. Peranti dengan sistem operasi iOS, yakni iPhone. Berikut beberapa detail yang dapat Anda
perhatikan:
a. Usahakan terinstal iOS versi terbaru.
b. Terdapat memori untuk menginstall aplikasi buatan Anda.
c. Jangan lupa kabel data.

Software

Selanjutnya dari sisi kebutuhan software kita akan membutuhkan Xcode. Ia merupakan IDE resmi
dari Apple untuk membuat aplikasi iOS, iPad OS, dan mac OS. Dengan menggunakan Xcode,
para developer iOS dapat membuat aplikasi dari nol hingga dapat terpublish ke dalam app store.
Xcode juga mempunyai berbagai fitur yang sangat membantu para developer  untuk memaksimalkan
proses pembuatan aplikasi. 

Skill/Pengetahuan
Ketika sudah mengetahui kebutuhan dari sisi hardware dan software, lalu skill apa yang perlu Anda
pelajari? Anda dapat mulai belajar dari bahasa pemrogramannya dahulu, yaitu Swift. Sejak
diperkenalkan di Apple Worldwide Developer Conference (WWDC) tahun 2014, Swift telah
menjadi bahasa resmi yang didukung oleh Apple Inc. untuk pengembangan aplikasi iOS, iPadOS,
macOS, watchOS, tvOS, Linux, dan OS X. Swift merupakan bahasa pemrograman yang modern,
cepat, dan type-safe. 

Pada tahun 2018, Swift telah mengalahkan Objective-C sebagai bahasa pemrograman yang
digunakan untuk iOS dan platform Apple lainnya. Menurut survei yang dilakukan Stack Overflow,
Swift menjadi bahasa pemrograman yang paling disukai pada tahun 2019 [24]. Dibandingkan tahun
2018, pecinta Swift naik dari 65% menjadi 69% [25].
 Seorang iOS Developer harus mampu mengintegrasikan teknologi mutakhir dari iOS untuk
menciptakan pengalaman luar biasa pada aplikasinya. Berikut poin-poin yang bisa Anda pelajari:

 Application Patterns and Architecture : Mempelajari pattern MVC(Model-View-


Controller) di dalam iOS, serta life cycle dari aplikasi iOS.
 Views and Windows : Mempelajari cara membuat desain dari aplikasi iOS, seperti View
Hierarchy, Auto Layout, Containers View, Navigation dan Tab Bars, serta Alert Views dan
Action Sheets.
 Storyboards : Mengenalkan tentang storyboards, yaitu fitur untuk mendesain beberapa view
controller dalam satu berkas, dan juga membuat transisi antar view controller.
 Navigation Based Applications : Mempelajari penggunaan Root View Controller dan
Navigation Controller.
 Table Views : Mempelajari cara menampilkan banyak data dalam bentuk list dengan Table
Views.
 Human Interface Guideline : Mempelajari cara mendesain sebuah aplikasi sesuai dengan
guideline/standar yang ada.
 Mobile App Design : Mempelajari cara membuat desain aplikasi sesuai dengan guideline
yang ada.
 SwiftUI : Mempelajari cara baru dalam pembuatan tampilan di iOS.
 Concurrency : Mempelajari thread  dalam memproses data agar lebih efisien.
 Networking : Belajar cara mengambil data dari Network/API dan menampilkannya.
 Multitasking : Mempelajari cara menjalankan berbagai pekerjaan dalam satu waktu.
 Working with Data : Mempelajari cara mengelola data dalam aplikasi iOS.
 Testing : Mempelajari cara menguji aplikasi iOS, baik secara kode maupun tampilan.
 Notifications : Mempelajari cara membuat notifikasi dalam aplikasi iOS.
 App Store and Apple Developer Program : Mengenalkan komponen yang dibutuhkan
untuk mengunggah aplikasi ke App Store.

Berikut tahapan yang Anda lalui ketika belajar di Learning Path iOS yang ada di Dicoding:
Langkah ke-1 Memulai Pemrograman Dengan Swift
Belajar bahasa Swift buat Anda yang ingin mempelajari konsep Pemrograman Berorientasi Objek
(PBO) dalam mengembangkan iOS dan OS X.
Langkah ke-2 Belajar Prinsip Pemrograman SOLID
Pelajari kelima prinsip desain yang merupakan pedoman untuk rancangan kode yang baik pada
pemrograman berorientasi objek (OOP).
Langkah ke-3 Belajar Membuat Aplikasi iOS untuk Pemula
Pelajari cara membuat aplikasi pertama dengan Xcode. Kelas ini mengajarkan dasar iOS mulai dari
Controller sampai TableViews.
Langkah ke-4 Belajar Fundamental Aplikasi iOS
Pelajari komponen fundamental iOS berdasarkan teknik yang digunakan industri mulai dari App
Design, SwiftUI, Networking, sampai Database.
Langkah ke-5 Menjadi iOS Developer Expert
Saatnya jadi iOS Expert dengan belajar Clean Architecture, Reactive, Dependency Injection,
Modularization, dan Test Driven Development.
Multiplatform developer
Hardware
Kebutuhan penting nomer wahid yaitu hardware yang meliputi komputer dan peranti. Berikut
spesifikasi dari hardware yang diperlukan untuk berkarier sebagai Multi-Platform App Developer:

1. Komputer/Laptop dengan spesifikasi minimal:

a. Microsoft Windows, Linux, atau MacOS. 


b. Prosesor Intel i3 (Rekomendasi Core i5 ke atas).
c. RAM sebesar minimum 4 GB (Rekomendasi 8 GB).
d. Terdapat 2 GB ruang kosong pada penyimpanan (Rekomendasi 4 GB).
e. Resolusi layar 1280x800 (Rekomendasi Full HD 1920 x 1080).
2. Peranti dengan sistem operasi Android.

a. Usahakan terinstal OS versi terbaru.


b. Terdapat memori untuk menginstall aplikasi buatan Anda.
c. Jangan lupa kabel data.
3. Jika Anda ingin membangun aplikasi iOS sekaligus, maka Anda butuh komputer/laptop
dengan sistem operasi mac OS Mojave 10.14.4. Sedangkan untuk menjalankan aplikasi di
peranti iOS, Anda juga membutuhkan iPhone. 

Spesifikasi yang dibutuhkan cukup tinggi untuk membuat sebuah aplikasi Android dan iOS
menggunakan Flutter. Tentu semakin tinggi spesifikasi, akan membantu Anda lebih cepat dalam
membangun aplikasi tersebut. Peranti mobile dibutuhkan untuk menguji secara langsung proses
berjalannya aplikasi dan kendala yang mungkin terjadi.

Software
Anda dapat membuat aplikasi Flutter menggunakan teks editor yang dikombinasikan
dengan command-line tools. Namun, sebaiknya gunakan salah satu plugin editor yang
direkomendasikan untuk pengalaman yang lebih baik. Plugin ini memiliki fitur seperti penyelesaian
kode, penyorotan sintaks, bantuan pengeditan, dukungan untuk menjalankan & debug, dan masih
banyak lagi.

Instalasi Android Studio sangat dibutuhkan untuk membuat aplikasi Android dengan Flutter,
sedangkan aplikasi iOS sangat membutuhkan instalasi Xcode.

Skill/Pengetahuan
Lalu apa saja yang perlu Anda pelajari? Anda dapat mulai belajar dari bahasa pemrogramannya
terlebih dahulu, yaitu Dart. Dart adalah sebuah bahasa pemrograman yang dikembangkan oleh
Google pada tahun 2011 dengan tujuan awal menggantikan JavaScript. Bahasa ini kembali populer
ketika dikenalkan untuk mengembangkan Flutter. Dart telah digunakan oleh engineer Google untuk
mengembangkan berbagai aplikasi yang terkait dengan bisnis, salah satunya adalah Google Ads.

Berikut poin-poin yang bisa Anda pelajari.


 Flutter Basic : Mempelajari dasar-dasar dalam membuat aplikasi Flutter dan pengenalan
tentang package manager.
 Widget : Pengenalan widget-widget dasar yang umum digunakan dalam Flutter, navigasi
antar halaman, dan bagaimana menambahkan aset dan gambar.
 Deployment : Mempelajari praktik untuk melakukan build aplikasi Flutter ke dalam bentuk
berkas APK.
 Designing UI with Widgets : Mempelajari desain layout menggunakan berbagai jenis
widget yang disediakan Flutter.
 State Management : Mempelajari bagaimana mengelola state dan data dalam lingkungan
deklaratif UI seperti Flutter.
 Getting Data from Internet : Mempelajari bagaimana mengambil data dari internet/API
dan menampilkannya.
 Scheduling : Mempelajari bagaimana menjalankan tugas secara terjadwal meskipun aplikasi
tidak dalam kondisi terbuka.
 Working with Local Storage : Mempelajari pendekatan untuk menyimpan data secara lokal
pada perangkat.
 Testing : Mempelajari bagaimana melakukan pengujian otomatis pada aplikasi Flutter.
 Extended Apps : Mempelajari integrasi antara Flutter dan Firebase.

Berikut tahapan yang Anda lalui:

Langkah ke-1 Memulai Pemrograman Dengan Dart


Kelas pengantar untukAnda yang ingin mempelajari bahasa populer dari Google untuk
mengembangkan aplikasi multiplatform seperti Flutter.
Langkah ke-2 Belajar Prinsip Pemrograman SOLID
Pelajari kelima prinsip desain yang merupakan pedoman untuk rancangan kode yang baik pada
pemrograman berorientasi objek (OOP).
Langkah ke-3 Belajar Membuat Aplikasi Flutter untuk Pemula
Pelajari cara membuat aplikasi multi-platform pertamamu menggunakan Flutter. Kelas ini
mengajarkan dasar Flutter mulai dari instalasi hingga menjadikan berkas APK.
Langkah ke-4 Belajar Fundamental Aplikasi Flutter
Pelajari komponen fundamental Flutter berdasarkan teknik yang digunakan industri mulai dari state
management, API, database, sampai testing.

Seorang Front-End Web Developer adalah Software Developer yang bertanggung jawab untuk
merancang dan membangun berbagai aplikasi web secara responsif, interaktif, dan juga user
friendly. Website adalah sebuah halaman yang menampilkan informasi melalui teks atau gambar.
Website dapat diakses melalui internet menggunakan browser. Website ini unik karena tiap halaman
dapat saling terhubung. 
Website di era sekarang sudah menjadi kebutuhan utama yang tidak bisa diabaikan. Seluruh sektor
bisnis atau edukasi dapat memanfaatkan website sebagai alat untuk promosi, tukar informasi, dan
lainnya. Per Desember 2020 terdapat 1.228.111.563 website yang aktif, berdasarkan survei dari
Netcraft Web Server Survey [29]. Berdasarkan data dari World Wide Web Technology Surveys, dari
seluruh website yang aktif per Desember 2020, 91.5% menggunakan HTML, 96.1% menggunakan
CSS, dan 97.1% menggunakan JavaScript [30].
Front End Developer
Seorang Front-End Web Developer adalah sosok yang mampu mewujudkan website dengan
minim bug, tinggi level keamanannya, dan dapat beradaptasi ke smartphone. Itu merupakan faktor
yang harus ia pertimbangkan demi kenyamanan pengguna. 

Sementara itu dari sisi kode, seorang Front-End Web Developer harus memastikan bahwa
websitenya dapat scalable  alias tetap bekerja dengan baik saat produk berubah mengikuti kebutuhan
bisnis. Website tersebut juga harus robust  alias dibangun dengan pondasi kode yang kuat. Jika tidak,
perusahaan akan terbebani biaya pengembangan yang tinggi karena sulitnya perbaikan akibat code
smell, yakni kode yang berantakan atau berstruktur buruk.

Hardware
Kebutuhan penting nomer wahid yaitu hardware yang meliputi komputer. Berikut spesifikasi dari
hardware yang diperlukan untuk berkarier sebagai Front-End Web Developer:

1. Microsoft Windows, Linux, atau MacOS.


2. Prosesor Intel Dual Core (Rekomendasi Core i3 ke atas).
3. RAM sebesar minimum 1 GB (Rekomendasi 2 GB).
4. Terdapat 2 GB ruang kosong pada penyimpanan (Rekomendasi 4 GB).
5. Resolusi layar 1280x800 (Rekomendasi Full HD 1920 x 1080).
Spesifikasi yang dibutuhkan tidak terlalu tinggi untuk membuat sebuah website. Tentu semakin
tinggi spesifikasi, akan membantu Anda lebih cepat dalam membangun aplikasi tersebut. 

Software
berikut tiga text editor lainnya yang bisa kita gunakan untuk membuat sebuah website.

Visual Studio Code


Visual Studio Editor merupakan sebuah text editor yang dikembangkan oleh Microsoft. Dalam text
editor ini terdapat fitur debugging, Git control, syntax highlighting, code
completion, snippets, dan code refactoring. Visual Studio Code tersedia untuk sistem operasi
Windows, Mac maupun Linux, dan tentunya text editor ini bisa kita gunakan secara gratis

Atom Editor
Atom merupakan text editor gratis dan juga  open source untuk Windows, Linux, dan MacOS. Sama
seperti Visual Studio Editor, kedua text editor ini merupakan editor yang populer digunakan oleh
web developer.

Emacs
Editor ini mungkin tidak secanggih opsi-opsi sebelumnya dalam menuliskan kode HTML, CSS, dan
JavaScript. Namun, jika kalian tertarik belajar melalui proses tanpa fitur yang mempermudah kita
dalam menuliskan sebuah kode, maka text editor ini cocok untuk dicoba. Emacs memiliki fitur yang
tidak disangka-sangka untuk sebuah text editor, seperti news reader, kalkulator, dan fitur untuk
enkripsi/dekripsi file. Emacs tersedia untuk Windows, Macs, maupun Linux secara gratis.

Skill/Pengetahuan
Anda perlu pelajari adalah bahasanya, yakni HTML, CSS, dan JavaScript.
HTML: Hypertext Markup Language atau HTML, berperan sebagai struktur untuk membangun
sebuah halaman website; Cascading Style Sheet atau biasa disingkat CSS, merupakan W3C standar
yang digunakan untuk mengatur visualisasi berkas yang ditulis pada HTML; dan JavaScript,
merupakan bahasa pemrograman client-side sehingga seluruh prosesnya berjalan pada sisi pengguna
bukan server.

 Berikut beberapa poin yang perlu Anda pelajari:


Pengenalan HTML : Mempelajari fungsi HTML dalam website, memahami struktur dasar
HTML dengan mencoba membuat sebuah halaman HTML sederhana.
 HTML lebih Dalam : Mempelajari cara mengorganisir konten dengan elemen semantik
yang ada, mengenal attribute pada HTML, mengenal paragraf, header, gambar, list, dan
elemen teks lainnya. Memahami perbedaan inline dan block element.
 Pengenalan CSS : Memahami peran CSS dalam pembuatan website, benefit menerapkan
CSS, dan mengetahui penulisan sintaks dasar CSS dengan menerapkan beberapa basic
styling pada elemen HTML.
 CSS lebih Dalam : Memahami lebih dalam mengenai selector CSS, memahami penerapan
styling untuk font dan text (mengubah tipe dan ukuran font, mengubah warna teks, dsb.),
memahami tentang foreground color dan background color, memahami konsep box model,
dan layouting menggunakan float.
 Layout Responsif menggunakan Flexbox : Memahami penggunaan flexbox sebagai layout
dasar membangun kalkulator berbasis website. Flex merupakan teknik baru dalam menyusun
layout yang responsif, dan dapat dikombinasikan dengan media query agar lebih optimal
ketika diakses menggunakan mobile devices.
 JavaScript Basic dan Manipulasi DOM : Memahami peran JavaScript dalam
pengembangan website, menuliskan sintaks dasar JavaScript, memahami dasar JavaScript
seperti statement, comment, variabel, tipe data, dsb. Mengetahui Browser Object dan event
yang ada, dan memanipulasi DOM menggunakan JavaScript. 
 Web Storage : Mengetahui tipe penyimpanan/storage yang ada pada web.
 ECMAScript 2015 (ES6) : Mempelajari penerapan sintaks terbaru pada JavaScript
seperti block scope variable, template literals, destructuring object and array, spread
operator dan rest parameters, arrow function, classes, promise hingga JavaScript module.
 Web Component : Mempelajari cara membangun component UI website yang
bersifat reusable dan encapsulated dengan custom element dan shadow DOM.
 Node Package Manager : Mempelajari cara menambahkan, menghapus, dan menggunakan
package JavaScript yang ada di NPM. Serta dapat membedakan fungsi dari development
dependency dan production dependency.
 Webpack : Mempelajari penggunaan webpack sebagai environment  dan build tools dalam
membangun website yang optimized.
 JavaScript Asynchronous Request : Mempelajari transaksi data melalui protocol
HTTP/HTTPS menggunakan fetch API baik pada method GET, POST, PUT, dan DELETE.

Berikut tahapan yang Anda lalui:


Langkah ke-1  Belajar Dasar Pemrograman Web
Pelajari komponen-komponen dasar HTML, CSS, dan JavaScript yang merupakan fondasi utama
untuk menjadi web developer.

Langkah ke-2  Belajar Fundamental Front-End Web Development


Pelajari sintaks ES6, Web Component, dan Build Tools dalam membangun website dengan teknik
yang simple, reusable, dan optimized.

Langkah ke-3  Menjadi Front-End Web Developer Expert


Pelajari teknik-teknik expert serta modern dalam membangun website yang optimal pada seluruh
perangkat, terutama pada perangkat mobile.
Machine Learning Developer
adalah pakar dalam menggunakan data untuk model pelatihan. Model-model tersebut kemudian
digunakan untuk mengotomatisasi proses seperti klasifikasi gambar, pengenalan suara, dan perkiraan
pasar. Sering kali ada penggabungan dengan peran data scientist atau artificial intelligence (AI)
engineer.

Machine learning adalah sub-bidang AI yang berfokus pada analisis data untuk menemukan
hubungan antara input dan output yang diinginkan. Seorang pengembang pemelajaran mesin harus
mampu menghasilkan solusi yang dibuat khusus untuk setiap masalah dan mencapai hasil optimal
dengan hati-hati memproses data dan memilih algoritma terbaik untuk konteks yang diberikan.

Hardware
Kebutuhan penting nomer wahid yaitu hardware yang meliputi komputer. Berikut spesifikasi dari
hardware yang diperlukan untuk berkarier sebagai Machine Learning Developer:

1. Microsoft Windows, Linux, atau MacOS.


2. Prosesor Intel Dual Core (Rekomendasi Core i3 ke atas).
3. RAM sebesar minimum 2 GB (Rekomendasi 4 GB).
4. Terdapat 2 GB ruang kosong pada penyimpanan (Rekomendasi 4 GB).
5. Resolusi layar 1280x800 (Rekomendasi Full HD 1920 x 1080).
Spesifikasi yang dibutuhkan tidak terlalu tinggi untuk membuat sebuah model dalam machine
learning. Tentu semakin tinggi spesifikasi, akan membantu Anda lebih cepat dalam membangun
aplikasi tersebut.

Software
Yang Anda butuhkan pertama kali adalah IDE. Integrated Development Environment (IDE) lebih
dari sekedar text editor untuk membuat kode, di dalamnya tergabung juga berbagai fasilitas
development misalnya Code Versioning, Interpreter, Visualization, dan lain sebagainya. 
Colab digunakan secara luas dalam komunitas machine learning dengan aplikasi termasuk:

 Mengintegrasikan dengan TensorFlow.


 Mengembangkan dan melatih jaringan saraf tiruan.
 Melakukan eksperimen dengan TPU (Tensor Processor Unit).
 Menyebarluaskan penelitian AI.
 Membuat tutorial.

Skill/Pengetahuan
Anda perlu pelajari pertama adalah bahasanya, yakni Python
Python adalah bahasa pemrograman interpretatif yang dapat digunakan di berbagai platform dengan
filosofi perancangan yang berfokus pada tingkat keterbacaan kode. 
Selain itu, ada beberapa poin yang perlu Anda pelajari juga, yakni:

 Problem Framing
Dapat merumuskan solusi machine learning untuk suatu masalah.
 Exploratory Data Analysis
Dapat menganalisa data tersebut untuk menentukan fitur baru dalam suatu produk.
 Visualisasi Data
Dapat mengkomunikasikan sebuah informasi atau data dalam bentuk visual dengan baik,
seperti diagram, grafik, atau representasi visual lainnya.
 Dasar Matematika dan Statistika
Dapat melakukan perhitungan dasar matematika dan statistika mulai dari rata-rata statistik
hingga standar deviasi.
 Dasar Machine Learning
Dapat membuat model, mencari parameter model terbaik, mengembangkan dengan format
data yang berbeda dan dasar-dasar lain.
 Feedback dan Testing
Dapat menguji kualitas dan akurasi dari sebuah model machine learning.
 Library Machine Learning
Dapat memahami dan menggunakan library machine learning, contohnya adalah Tensorflow.
Tensorflow merupakan library yang powerful, dipakai untuk mengembangkan project
machine learning.
 Deployment
Dapat men-deploy sebuah model pada website dan smartphone.

Berikut tahapan yang Anda lalui:


Langkah ke-1  Belajar Dasar Visualisasi Data
Pelajari teknik dasar untuk representasi hasil data secara visual sehingga dapat mengkomunikasikan
output dari data yang telah terproses.
Langkah ke-2  Memulai Pemrograman Dengan Python
Belajar Python yang menjadi landasan penting berbagai tren industri seperti ilmu data, pemelajaran
mesin, dan manajemen infrastruktur.
Langkah ke-3  Belajar Machine Learning untuk Pemula
Pelajari materi dasar pengembangan machine learning dan langkah menciptakan model machine
learning pertamamu untuk memproses data.
Langkah ke-4  Belajar Pengembangan Machine Learning
Pelajari implementasi machine learning pada industri mulai dari computer vision, natural language,
serta deployment proyek machine learning.

RANGKUMAN
Lantas apa saja jalur karier developer yang bisa kita tekuni? Berikut merupakan pembagiannya:

1. Android Developer
Seorang Android Developer adalah Software Developer yang berspesialisasi dalam
merancang dan membangun aplikasi untuk pasar operating system Android. Android adalah
sistem operasi yang dikeluarkan oleh Google.
2. iOS Developer
Seorang iOS Developer adalah Software Developer yang berspesialisasi dalam merancang
dan membangun aplikasi untuk pasar sistem operasi iOS. iOS atau iPhone OS merupakan
sistem operasi yang dikeluarkan oleh Apple.inc, iOS yang dibuat khusus untuk iPhone dan
iPad.
3. Multi-Platform App Developer
Seorang Multi-Platform Developer adalah Software Developer yang berspesialisasi dalam
merancang dan membangun aplikasi yang dapat digunakan berbagai sistem operasi populer
seperti Android dan iOS.
4. Front-End Web Developer 
Seorang Front-End Web Developer adalah Software Developer yang bertanggung jawab
untuk merancang dan membangun berbagai aplikasi web secara responsif, interaktif, dan
juga user friendly. 
5. Machine Learning Developer 
Seorang Machine Learning Developer adalah pakar dalam menggunakan data untuk model
pelatihan. Model-model tersebut kemudian digunakan untuk mengotomatisasi proses seperti
klasifikasi gambar, pengenalan suara, dan perkiraan pasar. Sering kali ada penggabungan
dengan peran data scientist atau artificial intelligence (AI) engineer. 
6. Azure Cloud Developer
Seorang Cloud Developer dapat sepenuhnya memanfaatkan layanan yang disediakan
oleh Cloud Solution Provider tersebut. Individu ini memiliki pengalaman dengan basis data
terkini (next-gen database), lingkungan di mana aplikasi berjalan (runtime environment),
dan alat pengembang (developer tools). Mereka juga memiliki kemampuan dengan
setidaknya satu bahasa pemrograman umum dan terampil menghasilkan metrik dan log yang
bermakna untuk debug dan melacak kode.
7. Dan masih banyak lagi.

Kebanyakan dari jalur developer membutuhkan sebuah Laptop/Komputer, kecuali untuk iOS
Developer membutuhkan MacBook. Seorang iOS Developer harus mempunyai setidaknya macbook,
sebab software yang dibutuhkan hanya tersedia dalam os tersebut.

Banyak cara untuk menjadi expert di masing-masing jalur tersebut. Tentu dengan persiapannya
masing-masing, baik software, hardware, atau skill yang dibutuhkan. Anda dapat memperkuat skill
dengan mengikuti kelas dari Dicoding. Sebab Dicoding mempunyai berbagai Learning Path. Anda
dapat belajar secara terstruktur sehingga target belajar lebih mudah tercapai di Dicoding Academy.
Berikut Learning Path yang tersedia dalam situs dicoding.com/learningpaths:

1. Android Developer
Kurikulum didesain oleh Dicoding sebagai satu-satunya Google Developers Authorized
Training Partner di Indonesia. Siswa dipersiapkan untuk menjadi Android Developer
berstandar global Google. Learning Path ini terdiri dari 6 Kelas Akademi:
a. Memulai Pemrograman Dengan Kotlin
Kelas pengantar untuk mempelajari Functional Programming serta Object-Oriented
Programming (OOP) menggunakan Kotlin.
b. Belajar Prinsip Pemrograman SOLID
Pelajari kelima prinsip desain yang merupakan pedoman untuk rancangan kode yang
baik pada pemrograman berorientasi objek (OOP).

c. Belajar Membuat Aplikasi Android untuk Pemula


Pelajari cara membuat aplikasi pertamamu dengan Android Studio. Kelas ini
mengajarkan dasar Android mulai dari Intent sampai RecyclerView.

d. Belajar Fundamental Aplikasi Android


Pelajari skill Android dengan kurikulum terlengkap yang dibutuhkan oleh
perusahaan. Mulai dari design pattern, testing, API sampai database.

e. Belajar Android Jetpack Pro


Pelajari Android Jetpack dengan berbagai fitur canggih dan sudah
diimplementasikan 80% dari 1000 aplikasi terbaik di Google Play Store.

f. Menjadi Android Developer Expert


Saatnya menjadi Android Expert dengan belajar Clean Architecture, Reactive,
Dependency Injection, Modularization, Performance, dan Security.
2. Azure Cloud Developer
Kurikulum lengkap yang didesain bersama salah satu penyedia cloud solution terbesar di
dunia yaitu Microsoft Azure. Setiap kelas mempersiapkan siswa untuk ujian sertifikasi resmi
Azure dari Microsoft. Learning Path ini terdiri dari 2 Kelas Akademi:
a. Belajar Dasar-Dasar Azure Cloud
Pahami prinsip dan konsep dari komputasi awan disertai pengenalan layanan-
layanan dari Microsoft Azure sesuai kebutuhan sertifikasi AZ-900.
b. Menjadi Azure Cloud Developer
Pelajari konsep dan terminologi cloud beserta berbagai layanan Azure Cloud sesuai
kebutuhan sertifikasi Azure Developer Associate.
3. Front-End Web Developer
Kurikulum disusun oleh Dicoding dan pelaku industri di bidang Web Development. Siswa
dipersiapkan untuk menjadi Front-End Web Developer sesuai standar kebutuhan industri.
Learning Path ini terdiri dari 3 Kelas Akademi:
a. Belajar Dasar Pemrograman Web
Pelajari komponen-komponen dasar HTML, CSS, dan JavaScript yang merupakan
fondasi utama untuk menjadi web developer.
b. Belajar Fundamental Front-End Web Development
Pelajari sintaks ES6, Web Component, dan Build Tools dalam membangun website
dengan teknik yang simple, reusable, dan optimized.
c. Menjadi Front-End Web Developer Expert
Pelajari teknik-teknik expert serta modern dalam membangun website yang optimal
pada seluruh perangkat, terutama pada perangkat mobile.
4. iOS Developer
Kurikulum disusun oleh Dicoding dan pelaku industri di bidang iOS Development. Siswa
dipersiapkan untuk menjadi iOS Developer sesuai standar kebutuhan industri. Learning Path
ini terdiri dari 5 Kelas Akademi:
a. Memulai Pemrograman Dengan Swift
Belajar bahasa Swift buat kamu yang ingin mempelajari konsep Pemrograman
Berorientasi Objek (PBO) dalam mengembangkan iOS dan OS X.
b. Belajar Prinsip Pemrograman SOLID
Pelajari kelima prinsip desain yang merupakan pedoman untuk rancangan kode yang
baik pada pemrograman berorientasi objek (OOP).
c. Belajar Membuat Aplikasi iOS untuk Pemula
Pelajari cara membuat aplikasi pertamamu dengan Xcode. Kelas ini mengajarkan
dasar iOS mulai dari Controller sampai TableViews.
d. Belajar Fundamental Aplikasi iOS
Pelajari komponen fundamental iOS berdasarkan teknik yang digunakan industri
mulai dari App Design, SwiftUI, Networking, sampai Database.
e. Menjadi iOS Developer Expert
Saatnya jadi iOS Expert dengan belajar Clean Architecture, Reactive, Dependency
Injection, Modularization, dan Test Driven Development.
5. Multi-Platform App Developer
Kurikulum disusun oleh Dicoding bersama Google beserta pelaku industri Multi-Platform
App Development. Siswa dipersiapkan untuk menjadi Multi-Platform App Developer sesuai
standar kebutuhan industri. Learning Path ini terdiri dari 5 Kelas Akademi:
a. Memulai Pemrograman Dengan Dart
Kelas pengantar buat kamu yang ingin mempelajari bahasa populer dari Google
untuk mengembangkan aplikasi multiplatform seperti Flutter.
b. Belajar Prinsip Pemrograman SOLID
Pelajari kelima prinsip desain yang merupakan pedoman untuk rancangan kode yang
baik pada pemrograman berorientasi objek (OOP).
c. Belajar Membuat Aplikasi Flutter untuk Pemula
Pelajari cara membuat aplikasi multi-platform pertamamu menggunakan Flutter. 
d. Belajar Fundamental Aplikasi Flutter
Pelajari komponen fundamental Flutter berdasarkan teknik yang digunakan industri
mulai dari state management, API, database, sampai testing.
6. Machine Learning Developer
Kurikulum lengkap yang disusun oleh Dicoding bersama IBM dan Google beserta pelaku
industri. Siswa dipersiapkan untuk menjadi Machine Learning Developer sesuai standar
kebutuhan industri. Learning Path ini terdiri dari 4 Kelas Akademi:
a. Belajar Dasar Visualisasi Data
Pelajari teknik dasar untuk representasi hasil data secara visual sehingga dapat
mengkomunikasikan output dari data yang telah terproses.
b. Memulai Pemrograman Dengan Python
Belajar Python yang menjadi landasan penting berbagai tren industri seperti ilmu
data, pemelajaran mesin, dan manajemen infrastruktur.
c. Belajar Machine Learning untuk Pemula
Pelajari materi dasar pengembangan machine learning dan langkah menciptakan
model machine learning pertamamu untuk memproses data.
d. Belajar Pengembangan Machine Learning
Pelajari implementasi machine learning pada industri mulai dari computer vision,
natural language, serta deployment proyek machine learning.

Hal yang perlu dilakukan untuk mencapainya


Lalu apa saja yang perlu dilakukan untuk mencapai karier sebagai Software Developer? Berikut
beberapa poin yang perlu ditekankan:

1. Belajar terlebih dahulu. Katakanlah kita ingin membuat website, maka kita perlu tahu tools-
nya, framework-nya, dan segala persiapannya.
2. Asah skill tersebut dengan mempraktikkannya. Buatlah aplikasi sederhana, kemudian
mencoba dan mengujinya. 
3. Ikuti forum-forum diskusi terkait di internet. Selain dapat membantu Anda menyelesaikan
masalah yang dihadapi, juga bisa tahu bagaimana best-practice-nya. 
4. Tidak perlu belajar banyak bahasa di awal, namun fokus satu bahasa terlebih dahulu dan
perkuat tentang algoritma. Beliau mengatakan, “Ternyata how to code  itu sama semua.
Algoritma dasarnya sama. Jadi kalau kita mempelajari bahasa a, bahasa b, atau bahasa c, at
the end-nya sama. Prinsip-prinsip bahasa pemrogramannya itu sama.”
Pandangan Developer Expert dapat menjadi pertimbangan Anda untuk menentukan karier mana
yang akan dipilih. Berikut beberapa developer yang telah diwawancarai mengenai pandangan mereka
mengenai software Developer.

Rangkuman dari Pandangan Developer Expert

Rendra Toro
Technology Advisor di PT. Perintis Teknologi Nusantara 

Beliau sudah melalang buana di dunia IT, mulai dari Web Developer, Mobile Developer, hingga jadi
CTO sebagai karier tertinggi di Software Developer. Saat ini beliau fokus menjadi Technology
Advisor di PT. Perintis Teknologi Nusantara. 

Sumber : Linkedin Rendra Toro

Berikut rangkuman interview yang dilakukan:

 Awal mula tertarik dengan jalur Software Developer


Berawal dari sebuah game membuat beliau tertarik dengan Software Developer.
 Hal yang perlu dilakukan untuk mencapainya

1. Belajar terlebih dahulu.


2. Asah skill tersebut dengan mempraktikkannya.
3. Ikuti forum-forum diskusi terkait di internet.
4. Fokus pada satu bahasa terlebih dahulu.
 Hambatan atau masalah yang dihadapi
Masalah terbesar yang dihadapi adalah bekerja sebagai tim. Karena beliau sudah bekerja
dengan berbagai tim, membuat banyak pelajaran untuk menyamakan goal atau tujuan.

 Indikator sukses dalam mencapai karier tersebut


Mampu membantu orang lebih banyak. Apa yang beliau jalanin bisa diceritakan ke orang
lain agar ia tidak mengulangi kesalahan yang sama. Sedangkan jika sebagai software
developer, menurut beliau indikator sukses adalah di kala ia merasa masih perlu belajar dan
bisa terus mengikuti perkembangan teknologi.

 Saran atau tips & trik dari perjalanan karier beliau


Memantapkan diri dan fokus pada satu bidang. Jangan menyerah jika terdapat masalah.
Cobalah manfaatkan teknologi untuk menyelesaikannya. Jika masih belum terjawab, maka
tak perlu takut untuk menanyakan kepada yang lebih senior.

Fandy Gotama
Co-Founder / CTO at Adrena Teknologi Indonesia

Fandy Gotama adalah Mobile App Tech Lead (Pemimpin Teknologi di tim Mobile App Developer)
dan telah bekerja di Android dan iOS masing-masing sejak Cupcake dan iOS 2.x. Sebelum mulai
menulis aplikasi seluler, dia adalah pengembang Full Stack Web Developer dengan pengalaman
hebat dalam berbagai bahasa pemrograman seperti PHP, Perl, dan Python.
Sumber : Linkedin Fandy Gotama

Berikut rangkuman interview yang dilakukan:

 Awal mula tertarik dengan jalur Software Developer


Berawal dari sebuah angan-angan ingin membuat game. Sewaktu kecil beliau berfikir
membuat game sepertinya seru.

 Hal yang perlu dilakukan untuk mencapainya

1. Suka atau tertarik terlebih dahulu.


2. Basic pemrograman harus benar-benar dikuasai.
3. Problem solving, kemampuan untuk menyelesaikan masalah yang ada.
4. Fokus satu bahasa pemrograman terlebih dahulu.
 Hambatan atau masalah yang dihadapi
Berikut beberapa masalah yang sering dihadapi oleh kabanyakan developer.

o Kesehatan
Sebagai developer harus tetap olahraga, makan makanan yang sehat, dan banyak
minum air putih.
o Bosan
Sebagai software developer, jangan biarkan kita berada dalam comfort zone. Untuk
mengatasinya, cobalah untuk mencari task/pekerjaan yang lebih menantang. Jika
tidak dilakukan maka  skill Anda tidak akan meningkat dan akan menjadi bosan.
o Level Karier
Jika Anda sudah mempunyai bekal, cobalah untuk tentukan apakah naik level ke
expert atau level manajemen. Namun jika belum mempunyai bekal, cobalah untuk
bekerja di software house atau start-up. Sebab, dari sana akan membuat skill
developer Anda makin terasah.
 Indikator sukses dalam mencapai karier tersebut
Menurut mas Fandy indikator sukses dalam mencapai karier adalah:

1. Menganggap pekerjaan yang dilakukan bukanlah beban atau sesuatu yang tidak


disukai. 
2. Selanjutnya adalah review atau peninjauan performa kerja. Apapun pekerjaan yang
Anda lakukan, selalu masuk dalam daftar top performer. 
3. Indikator sukses juga bisa dilihat dari cara orang melihat Anda di tempat kerja.
Jadi ketika orang-orang respect atau menghormati kita, itu merupakan salah satu
indikator kesuksesan dari seorang developer. 
 Saran atau tips & trik dari perjalanan karier beliau
Berikut saran atau tips dan trik yang diberikan mas Fandy:

1. Untuk membuka wawasan mengenai Software Developer Anda dapat menonton


film Start-Up.
2. Basic pemrograman harus benar-benar diperkuat dan dikuasai. 
3. Terus belajar dan latihan karena tiap bahasa pemrograman itu pasti akan
berkembang terus dan tidak ada habisnya. 
4. Programming itu seperti hobi. 
5. Ikutlah perkumpulan/komunitas. 
6. Poin terpenting adalah jangan lupa jaga kesehatan.

Danviero Yuzwan
Android Developer at LOKÉT | GO-JEK Group

Danviero Yuzwan adalah seorang Software Developer yang memiliki spesialisasi di bidang Android.
Pada tahun 2021 ini, sudah 4 tahun lebih beliau telah meniti karier sebagai Android Developer. Saat
ini beliau bekerja di LOKET.

Sumber : Linkedin Danviero Yuzwan

Berikut rangkuman interview yang dilakukan:

 Awal mula tertarik dengan jalur Software Developer


Berawal dari kesukaan dengan komputer dan alat-alat elektronik, membuat beliau tertarik
untuk terjun ke dunia teknik.

 Hal yang perlu dilakukan untuk mencapainya


Berikut beberapa poin penting yang disampaikan mas Yuzwan:

1. Yang dapat Anda lakukan pertama kali adalah mencari masalah dan


menyelesaikannya, atau bisa disebut problem solving. 
2. Setelah itu, tahap selanjutnya kita harus tahu apa yang telah ditulis dalam program
tersebut. 
3. Lalu asah skill dengan banyak latihan. 
 Hambatan atau masalah yang dihadapi

o Menurut mas Yuzwan, hambatan itu pasti ada. Berikut beberapa masalah yang
sering dihadapi dalam programming:
1. Kode yang error atau fitur yang tidak jalan
Anda dapat memanfaatkan Google dan Stackoverflow untuk menyelesaikan
masalah tersebut.
2. Malu bertanya
Jika Anda merasa sudah stuck, ada baiknya bertanya kepada orang lain agar
waktu Anda tidak terbuang sia-sia. Namun tetap bertanya dengan sopan ya.
3. Tidak mendokumentasikan suatu masalah.
Pastikan Anda menyimpan solusi dari permasalahan yang sudah
terselesaikan, agar tidak kesusahan jika menemuinya lagi.
4. Tidak tahu keyword dari permasalahan.

o Selain itu ada juga masalah yang akan dihadapi di luar programming. Berikut
detailnya:

1. Komunikasi
Komunikasi dalam sebuah tim itu penting.
2. Terkendala bahasa
Untuk meningkatkan level komunikasi, maka Anda perlu pelajari lain seperti
bahasa Inggris atau Mandarin.
3. Tidak bisa menjelaskan
Anda perlu belajar technical writing agar dapat menyampaikan sesuatu
dengan mudah.

 Indikator sukses dalam mencapai karier tersebut


Menurut mas Yuzwan, sukses dalam karier itu sejatinya naik anak tangga atau naik level.
Jadi kita perlu tahu saat ini sedang berada di level apa, agar mengetahui apa saja yang perlu
disiapkan untuk naik ke tahap selanjutnya. Selain itu, dapat mengikuti teknologi terkini juga
dapat menjadi indikator sukses dalam karier developer. Oleh karena itu, kita harus terus
belajar agar skill kita terasah. Sehingga kita bisa bertahan dengan perkembangan teknologi
yang ada.

 Saran atau tips & trik dari perjalanan karier beliau


Mas Yuzwan menambahkan beberapa saran dan tip agar teman-teman makin bersemangat.
Berikut detailnya:

1. Harus up to date. Ikuti terus perkembangan teknologi yang ada.


2. Harus terus belajar. Harus terus belajar teknologi agar skill terus berkembang.
3. Jangan terlena dengan profesi saat ini. Jangan sampai masuk ke comfort zone agar
skill tidak tumpul.
4. Terus membangun relasi. Bisa dengan mengikuti komunitas atau forum-forum
terkait.
5. Mindset sebagai seorang Software Developer. Jika awalnya Anda berpikir software
developer itu bekerja sendiri, maka cobalah untuk menjadi Software Developer yang
bisa bekerja secara tim.

Jadi seperti itulah interview yang telah kami lakukan dengan para Developer Expert. Semoga bisa
menjadi bekal dalam menentukan karier sebagai Software Developer.

Setelah Anda memahami berbagai jalur Software Developer yang ada, kini saatnya Anda memilih
dan merencanakan untuk mencapainya. 

Hardware
Hardware merupakan hal pertama yang dapat mempengaruhi keputusan Anda dalam memilih jalur
yang sesuai. Berikut skenarionya:
1. Laptop/komputer spesifikasi rendah dengan sistem operasi Windows atau Linux. Beberapa
jalur software developer yang bisa Anda pilih antara lain:
o Web Developer
o Machine Learning Developer
o Azure Cloud Developer
2. Laptop/komputer spesifikasi tinggi dengan sistem operasi Windows atau Linux. Beberapa
jalur software developer yang bisa Anda pilih antara lain:
o Android Developer
o Multi-Platform App Developer (khusus Android dan Web saja)
o Web Developer
o Machine Learning Developer
o Azure Cloud Developer
3. MacBook dengan sistem operasi macOS. Beberapa jalur software developer yang bisa Anda
pilih antara lain:
o iOS Developer
o Multi-Platform App Developer (Android, iOS, dan Web)
o Android Developer
o Web Developer
o Machine Learning Developer
o Azure Cloud Developer

Selain itu ada juga kebutuhan peranti mobile, seperti Android dan iOS. Peranti ini tidak wajib karena
sudah ada emulator Android dan simulator iOS yang bisa Anda manfaatkan. Namun, simulator
hanya dikhususkan untuk perangkat MacBook.

Bahasa Pemrograman
Setelah menyesuaikan dengan hardware yang Anda miliki, mari kita lebih fokus terhadap skill yang
dibutuhkan. Silakan kulik roadmap dari Software Developer secara lebih dalam. Langkah awal yang
bisa Anda pelajari adalah bahasa pemrograman. Apa sajakah bahasa pemrograman yang digunakan
pada setiap jalur karier? Simak uraiannya di bawah ini:

1. iOS Developer menggunakan Swift. 


2. Multi-Platform App Developer menggunakan Dart
3. Android Developer menggunakan Kotlin.
4. Web Developer menggunakan HTML, CSS, dan Javascript.
5. Machine Learning Developer menggunakan Python.
6. Azure Cloud Developer menggunakan Java, Python, atau yang lainnya.

Setelah itu, Anda perlu mengetahui hal apa saja yang perlu dikuasai dari bahasa pemrograman
tersebut. Contohnya ketika Anda mempelajari Swift, maka point-point pentingnya seperti ini:

 Dasar Swift : Memahami dasar-dasar Swift seperti penggunaan constant dan variable,
comment, semicolon dll. Anda juga akan mempelajari bagaimana mencetak sebuah teks ke
dalam console.
 Operator : Memahami operator-operator yang bisa diimplementasikan di dalam bahasa
Swift, seperti arithmetic operator, logical operator, comparison operator dll. 
 String dan Character : Memahami penggunaan serta implementasi string dan character di
dalam Swift, bagaimana mengoperasikan sebuah teks dan memanipulasinya.
 Collection Type : Memahami collection type seperti array, sets, dan dictionary untuk
menyimpan koleksi dari sebuah nilai di dalam Swift.
 Control Flow : Memahami pernyataan control flow di dalam Swift seperti perulangan dan
pernyataan kondisional.
 Function : Memahami bagaimana penggunaan serta implementasi function di dalam Swift
sehingga kode akan menjadi lebih rapi.
 Closure : Menjelaskan bagaimana penggunaan serta implementasi closure di dalam Swift.
 Enumeration : Memahami penggunaan serta implementasi enumeration di dalam Swift.
 OOP : Memahami Object Oriented Programming (OOP) di dalam Swift seperti class dan
struct, method, property, subscript, dan protocol. 

Anda bisa mempelajari poin-poin tersebut di dicoding.com. Setelah Anda mempunyai poin-poin itu,
silakan tentukan target berapa lama Anda mampu menyelesaikannya. Cobalah dengan latihan agar
ilmu itu melekat. Ingat ya, jangan terburu-buru. Sebab kecepatan seseorang belajar itu berbeda-beda.
Nikmati prosesnya karena ini adalah fundamental sebelum Anda terjun lebih dalam. 

Roadmap
Katakanlah Anda sudah mempelajari bahasanya. Apa yang perlu Anda lakukan? Cari tahu roadmap-
nya dengan jelas. Roadmap merupakan sebuah peta yang dapat digunakan untuk menentukan arah.
Jadi dengan roadmap ini, proses belajar yang Anda lakukan akan lebih mulus, terstruktur, dan
mudah.

Anda bisa mencarinya melalui Google, bertanya ke teman-teman, masuk ke forum diskusi terkait,
mengikuti webinar, ikut ke komunitas, melihat langsung di dokumentasinya, dan masih banyak cara
lainnya. Tentu inti dari pencarian roadmap ini agar Anda bisa mengerti tahapan proses yang harus
dilalui. 

Manfaatkanlah internet supaya Anda bisa mendapatkan informasi dengan lebih mudah. Banyak pula
developer yang telah mem-posting roadmap mereka ketika belajar. Mari kita ambil contoh dari
Roadmap Android developer.

Sumber : https://s.id/android-roadmap

Lihat roadmap di atas. Alurnya sangat jelas, bukan?. Anda bisa tahu komponen apa saja yang perlu
didalami. Langsung to the point. 

Dicoding Academy
Nah masalahnya tak semua orang bisa membuat roadmap sedemikian rupa agar menjadi profesional
di masing-masing bidang. Oleh karena itulah, bangun karier Anda sebagai Developer Profesional di
Dicoding.com. 

Kenapa Dicoding Academy berbeda? Tak hanya materi yang terjamin, Dicoding Academy juga
memiliki reviewer profesional yang akan mengulas kode Anda. Berikut keunggulan dari Dicoding
Academy.

1. Kurikulum standar industri global


Kurikulum dikembangkan bersama perusahaan dan pemilik teknologi dunia sesuai
kebutuhan industri terkini.
2. Belajar fleksibel sesuai jadwal Anda
Belajar kapan pun, di mana pun, secara mandiri. Bebas memilih kelas sesuai minat belajar.
Akses seumur hidup ke kelas dan forum diskusi setelah lulus.
3. Code Review dari Developer Expert
Validasi skill Anda melalui 1-on-1 Professional Code Review yang diberikan langsung oleh
Developer Expert.
4. Alumni terpercaya di berbagai perusahaan
Sertifikat yang membuktikan pengetahuan fundamental beserta keterampilan nyata yang
diinginkan perusahaan global.

Learning path di Dicoding akan membantu Anda dalam belajar di Academy dengan kurikulum yang
dibangun bersama pelaku industri ternama. Belajar secara terstruktur akan membuat target belajar
lebih mudah tercapai. Sudah banyak lulusan Dicoding yang mendapatkan manfaatnya. Anda bisa
baca langsung Testimoni Siswa di dicoding.com/story.

Mengasah Skill
Terakhir, sebaik apa pun roadmap yang Anda dapatkan; materi yang sudah Anda kumpulkan; dan
berbagai resource yang Anda temui, tak akan berguna tanpa keseriusan Anda untuk belajar, berlatih,
dan mencoba. Jadi poinnya adalah berlatih dengan cara mempraktikkan langsung. 

Asah skill codingmu lebih dalam. Bisa dimulai dari tools yang digunakan, kumpulan library yang
bisa dimanfaatkan, implementasinya, hingga membuat aplikasinya. Jangan lupa untuk membagikan
karya Anda ke orang lain untuk mendapatkan feedback. Dari feedback, Anda akan tahu apa yang
kurang dan perlu ditingkatkan. Sehingga, proses belajar akan menjadi lebih efektif.

Jika Anda sudah merasa mempunyai skill yang cukup, cobalah untuk bekerja atau sekedar kerja
lapangan/magang. Ini akan memperkuat skill yang Anda miliki dengan lebih cepat. Untuk awalan
yang baik, jangan terlalu banyak mengejar materi. Namun fokus pada skill yang ingin Anda
kembangkan. Sebab, ketika skill sudah dalam, Anda akan memiliki peluang yang lebih besar untuk
bekerja di perusahaan impian.

Intinya, ketika Anda menentukan salah satu jalur dari Software Developer, tak perlu takut untuk
memulainya. Sebab ini akan jadi langkah awal untuk merubah diri Anda menjadi lebih baik. Tak
perlu ragu untuk bertanya di forum diskusi ya. 

Rangkuman kelas Pertama


Pendahuluan
US News, salah satu portal berita dari US mengatakan bahwa karier Software Developer merupakan
pekerjaan terbaik ke-2 dari 100 pekerjaan yang ada. Bahkan, menjadi pekerjaan terbaik di bidang
teknologi, mengalahkan Data Scientist, IT Manager, dan Security Analyst [1].

Modul Meniti Karier sebagai Software Developer akan membahas:

 Pengertian Software Developer. 


 Kebutuhan karier software developer, baik secara global maupun nasional. 
 Jalur karier software developer.
 Hal yang perlu disiapkan untuk meniti karier software developer.
 Tips dan trik setiap jalur software developer,
 Pandangan developer expert mengenai karier mereka di dunia Software Developer.
 Langkah untuk menentukan jalur karier yang sesuai.
Software Developer berasal dari kata Software dan Developer. Software yang berarti kumpulan
perintah agar komputer dapat berfungsi optimal sesuai dengan kemauan pembuatnya. Sedangkan
Developer merupakan seseorang yang bertugas membangun sebuah sistem. Sehingga Software
Developer bisa dikatakan sebagai seseorang yang menggunakan kumpulan perintah kode untuk
membuat sistem agar dapat berfungsi sesuai dengan kehendaknya.

Berikut kelebihan menjadi seorang Software Developer:

1. Waktu kerja lebih fleksibel.


2. Gaji yang cukup tinggi.
3. Dapat bekerja secara independen.
4. Jaminan kerja.
5. Sosialisasi meningkat.
6. Kreatifitas terasah.
Situasi saat ini mengatakan pekerjaan developer sangatlah digemari. Evans Data Corporation
mengatakan, “Terdapat 26,4 juta software developer di dunia pada tahun 2019. Sedangkan pada
tahun 2023 diperkirakan akan tumbuh menjadi 27,7 juta dan pada tahun 2024 meningkat lagi
menjadi 28,7 juta developer. AS sendiri mengambil posisi terdepan dengan jumlah software
developer dengan total mencapai kurang lebih 4.2 juta [7].”

Lembaga survei lain, Slash Data, mengatakan “Ada 18,9 juta software developer di dunia pada tahun
2019 dan angka ini akan terus berkembang mencapai 45 juta pada tahun 2030 [8].”

Secara lowongan pekerjaan, Software Developer di Indonesia cukup tinggi. Berikut survei kebutuhan
software developer di Indonesia menurut berbagai job platform:

Nama Job Platform Total Lowongan Software Developer di Indonesia


Indeed 602 Lowongan
LinkedIn 447 Lowongan
Jobstreet 1.309 Lowongan
Kalibrr 526 Lowongan
Glints 1.762 Lowongan
FlexJobs 3.275 Lowongan
Jora 4.203 Lowongan
TopKarir 397 Lowongan
GlassDoor 1.137 Lowongan
Catatan : Survei di atas dibuka pada tanggal “19 Januari 2021” dengan kata kunci “Software
Developer” dan lokasi “Indonesia”.

Namun, banyak yang menganggap mencari pekerjaan di Indonesia cukup sulit, seperti yang
disampaikan berbagai portal berita. Padahal, sebenarnya Indonesia sendiri mengalami “Darurat
Tenaga IT”. 

Riset World Bank mengatakan, “Untuk mendukung transformasi digital dan pertumbuhan ekonomi,
Indonesia membutuhkan kurang lebih 600.000 talenta digital setiap tahunnya [9].”
Jalur Karier Software Developer
Seperti yang kita tahu, penggunaan teknologi digital telah merambah ke segala lini kehidupan kita.
Dalam kehidupan sehari-hari semua telah menggunakan teknologi digital. Artinya, tenaga IT saat ini
sangat dibutuhkan, begitu juga kebutuhan karier Software Developer. 

Lantas apa saja jalur karier developer yang bisa kita tekuni? Berikut merupakan pembagiannya:

1. Android Developer
Seorang Android Developer adalah Software Developer yang berspesialisasi dalam
merancang dan membangun aplikasi untuk pasar operating system Android. Android adalah
sistem operasi yang dikeluarkan oleh Google.
2. iOS Developer
Seorang iOS Developer adalah Software Developer yang berspesialisasi dalam merancang
dan membangun aplikasi untuk pasar sistem operasi iOS. iOS atau iPhone OS merupakan
sistem operasi yang dikeluarkan oleh Apple.inc, iOS yang dibuat khusus untuk iPhone dan
iPad.
3. Multi-Platform App Developer
Seorang Multi-Platform Developer adalah Software Developer yang berspesialisasi dalam
merancang dan membangun aplikasi yang dapat digunakan berbagai sistem operasi populer
seperti Android dan iOS.
4. Front-End Web Developer 
Seorang Front-End Web Developer adalah Software Developer yang bertanggung jawab
untuk merancang dan membangun berbagai aplikasi web secara responsif, interaktif, dan
juga user friendly. 
5. Machine Learning Developer 
Seorang Machine Learning Developer adalah pakar dalam menggunakan data untuk model
pelatihan. Model-model tersebut kemudian digunakan untuk mengotomatisasi proses seperti
klasifikasi gambar, pengenalan suara, dan perkiraan pasar. Sering kali ada penggabungan
dengan peran data scientist atau artificial intelligence (AI) engineer. 
6. Azure Cloud Developer
Seorang Cloud Developer dapat sepenuhnya memanfaatkan layanan yang disediakan
oleh Cloud Solution Provider tersebut. Individu ini memiliki pengalaman dengan basis data
terkini (next-gen database), lingkungan di mana aplikasi berjalan (runtime environment),
dan alat pengembang (developer tools). Mereka juga memiliki kemampuan dengan
setidaknya satu bahasa pemrograman umum dan terampil menghasilkan metrik dan log yang
bermakna untuk debug dan melacak kode.
7. Dan masih banyak lagi.

Kebanyakan dari jalur developer membutuhkan sebuah Laptop/Komputer, kecuali untuk iOS
Developer membutuhkan MacBook. Seorang iOS Developer harus mempunyai setidaknya macbook,
sebab software yang dibutuhkan hanya tersedia dalam OS tersebut.

Banyak cara untuk menjadi expert di masing-masing jalur tersebut. Tentu dengan persiapannya
masing-masing, baik software, hardware, atau skill yang dibutuhkan. Anda dapat memperkuat skill
dengan mengikuti kelas dari Dicoding. Sebab Dicoding mempunyai berbagai Learning Path. Anda
dapat belajar secara terstruktur sehingga target belajar lebih mudah tercapai di Dicoding Academy.
Berikut Learning Path yang tersedia dalam situs dicoding.com/learningpaths:

1. Android Developer
Kurikulum didesain oleh Dicoding sebagai satu-satunya Google Developers Authorized
Training Partner di Indonesia. Siswa dipersiapkan untuk menjadi Android Developer
berstandar global Google. Learning Path ini terdiri dari 6 Kelas Akademi:
a. Memulai Pemrograman Dengan Kotlin
Kelas pengantar untuk mempelajari Functional Programming serta Object-Oriented
Programming (OOP) menggunakan Kotlin.
b. Belajar Prinsip Pemrograman SOLID
Pelajari kelima prinsip desain yang merupakan pedoman untuk rancangan kode yang
baik pada pemrograman berorientasi objek (OOP).

c. Belajar Membuat Aplikasi Android untuk Pemula


Pelajari cara membuat aplikasi pertamamu dengan Android Studio. Kelas ini
mengajarkan dasar Android mulai dari Intent sampai RecyclerView.

d. Belajar Fundamental Aplikasi Android


Pelajari skill Android dengan kurikulum terlengkap yang dibutuhkan oleh
perusahaan. Mulai dari design pattern, testing, API sampai database.

e. Belajar Android Jetpack Pro


Pelajari Android Jetpack dengan berbagai fitur canggih dan sudah
diimplementasikan 80% dari 1000 aplikasi terbaik di Google Play Store.

f. Menjadi Android Developer Expert


Saatnya menjadi Android Expert dengan belajar Clean Architecture, Reactive,
Dependency Injection, Modularization, Performance, dan Security.

2. Azure Cloud Developer


Kurikulum lengkap yang didesain bersama salah satu penyedia cloud solutionterbesar di
dunia yaitu Microsoft Azure. Setiap kelas mempersiapkan siswa untuk ujian sertifikasi resmi
Azure dari Microsoft. Learning Path ini terdiri dari 2 Kelas Akademi:
a. Belajar Dasar-Dasar Azure Cloud
Pahami prinsip dan konsep dari komputasi awan disertai pengenalan layanan-
layanan dari Microsoft Azure sesuai kebutuhan sertifikasi AZ-900.
b. Menjadi Azure Cloud Developer
Pelajari konsep dan terminologi cloud beserta berbagai layanan Azure Cloud sesuai
kebutuhan sertifikasi Azure Developer Associate.

3. Front-End Web Developer


Kurikulum disusun oleh Dicoding dan pelaku industri di bidang Web Development. Siswa
dipersiapkan untuk menjadi Front-End Web Developer sesuai standar kebutuhan industri.
Learning Path ini terdiri dari 3 Kelas Akademi:
a. Belajar Dasar Pemrograman Web
Pelajari komponen-komponen dasar HTML, CSS, dan JavaScript yang merupakan
fondasi utama untuk menjadi web developer.
b. Belajar Fundamental Front-End Web Development
Pelajari sintaks ES6, Web Component, dan Build Tools dalam membangun website
dengan teknik yang simple, reusable, dan optimized.
c. Menjadi Front-End Web Developer Expert
Pelajari teknik-teknik expert serta modern dalam membangun website yang optimal
pada seluruh perangkat, terutama pada perangkat mobile.

4. iOS Developer
Kurikulum disusun oleh Dicoding dan pelaku industri di bidang iOS Development. Siswa
dipersiapkan untuk menjadi iOS Developer sesuai standar kebutuhan industri. Learning Path
ini terdiri dari 5 Kelas Akademi:
a. Memulai Pemrograman Dengan Swift
Belajar bahasa Swift buat kamu yang ingin mempelajari konsep Pemrograman
Berorientasi Objek (PBO) dalam mengembangkan iOS dan OS X.
b. Belajar Prinsip Pemrograman SOLID
Pelajari kelima prinsip desain yang merupakan pedoman untuk rancangan kode yang
baik pada pemrograman berorientasi objek (OOP).
c. Belajar Membuat Aplikasi iOS untuk Pemula
Pelajari cara membuat aplikasi pertamamu dengan Xcode. Kelas ini mengajarkan
dasar iOS mulai dari Controller sampai TableViews.
d. Belajar Fundamental Aplikasi iOS
Pelajari komponen fundamental iOS berdasarkan teknik yang digunakan industri
mulai dari App Design, SwiftUI, Networking, sampai Database.
e. Menjadi iOS Developer Expert
Saatnya jadi iOS Expert dengan belajar Clean Architecture, Reactive, Dependency
Injection, Modularization, dan Test Driven Development.

5. Multi-Platform App Developer


Kurikulum disusun oleh Dicoding bersama Google beserta pelaku industri Multi-Platform
App Development. Siswa dipersiapkan untuk menjadi Multi-Platform App Developer sesuai
standar kebutuhan industri. Learning Path ini terdiri dari 4 Kelas Akademi:
a. Memulai Pemrograman Dengan Dart
Kelas pengantar buat kamu yang ingin mempelajari bahasa populer dari Google
untuk mengembangkan aplikasi multiplatform seperti Flutter.
b. Belajar Prinsip Pemrograman SOLID
Pelajari kelima prinsip desain yang merupakan pedoman untuk rancangan kode yang
baik pada pemrograman berorientasi objek (OOP).
c. Belajar Membuat Aplikasi Flutter untuk Pemula
Pelajari cara membuat aplikasi multi-platform pertamamu menggunakan Flutter. 
d. Belajar Fundamental Aplikasi Flutter
Pelajari komponen fundamental Flutter berdasarkan teknik yang digunakan industri
mulai dari state management, API, database, sampai testing.

6. Machine Learning Developer


Kurikulum lengkap yang disusun oleh Dicoding bersama IBM dan Google beserta pelaku
industri. Siswa dipersiapkan untuk menjadi Machine Learning Developer sesuai standar
kebutuhan industri. Learning Path ini terdiri dari 4 Kelas Akademi:
a. Belajar Dasar Visualisasi Data
Pelajari teknik dasar untuk representasi hasil data secara visual sehingga dapat
mengkomunikasikan output dari data yang telah terproses.
b. Memulai Pemrograman Dengan Python
Belajar Python yang menjadi landasan penting berbagai tren industri seperti ilmu
data, pemelajaran mesin, dan manajemen infrastruktur.
c. Belajar Machine Learning untuk Pemula
Pelajari materi dasar pengembangan machine learning dan langkah menciptakan
model machine learning pertamamu untuk memproses data.
d. Belajar Pengembangan Machine Learning
Pelajari implementasi machine learning pada industri mulai dari computer vision,
natural language, serta deployment proyek machine learning.

Selain belajar di Dicoding, Anda dapat mempelajari skill pada masing-masing jalur karier developer
di dokumentasinya atau forum diskusi terkait. Silakan mulai tentukan jalur karier mana yang
membuat Anda tertarik ya. 
Pandangan Developer Expert
Pandangan Developer Expert dapat menjadi pertimbangan Anda untuk menentukan karier mana
yang akan dipilih. Berikut beberapa developer yang telah diwawancarai mengenai pandangan mereka
mengenai software Developer.

Rendra Toro
Technology Advisor di PT. Perintis Teknologi Nusantara 

Beliau sudah melalang buana di dunia IT, mulai dari Web Developer, Mobile Developer, hingga
CTO sebagai karier tertinggi di Software Developer. Saat ini beliau fokus menjadi Technology
Advisor di PT. Perintis Teknologi Nusantara. 

Sumber : Linkedin Rendra Toro

Berikut rangkuman wawancara yang dilakukan:

 Awal mula tertarik dengan jalur Software Developer


Berawal dari sebuah game membuat beliau tertarik dengan Software Developer.

 Hal yang perlu dilakukan untuk mencapainya


1. Belajar terlebih dahulu.
2. Asah skill tersebut dengan mempraktikkannya.
3. Ikuti forum-forum diskusi terkait di internet.
4. Fokus pada satu bahasa terlebih dahulu.

 Hambatan atau masalah yang dihadapi


Masalah terbesar yang dihadapi adalah bekerja sebagai tim. Karena beliau sudah bekerja
dengan berbagai tim, membuat banyak pelajaran untuk menyamakan goal atau tujuan.

 Indikator sukses dalam mencapai karier tersebut


Mampu membantu orang lebih banyak. Apa yang beliau jalani bisa diceritakan ke orang lain
agar ia tidak mengulangi kesalahan yang sama. Sedangkan jika sebagai software developer,
menurut beliau indikator sukses adalah di kala ia merasa masih perlu belajar dan bisa terus
mengikuti perkembangan teknologi.

 Saran atau tips & trik dari perjalanan karier beliau


Memantapkan diri dan fokus pada satu bidang. Jangan menyerah jika terdapat masalah.
Cobalah manfaatkan teknologi untuk menyelesaikannya. Jika masih belum terjawab, maka
tak perlu takut untuk menanyakan kepada yang lebih senior.

Fandy Gotama
Co-Founder / CTO at Adrena Teknologi Indonesia

Fandy Gotama adalah Mobile App Tech Lead (Pemimpin Teknologi di tim Mobile App Developer)
dan telah bekerja di Android dan iOS masing-masing sejak Cupcake dan iOS 2.x. Sebelum mulai
menulis aplikasi seluler, beliau adalah pengembang Full Stack Web Developer dengan pengalaman
hebat dalam berbagai bahasa pemrograman seperti PHP, Perl, dan Python.
Sumber : Linkedin Fandy Gotama

Berikut rangkuman interview yang dilakukan:

 Awal mula tertarik dengan jalur Software Developer


Berawal dari sebuah angan-angan ingin membuat game. Sewaktu kecil beliau berfikir
membuat game sepertinya seru.

 Hal yang perlu dilakukan untuk mencapainya


1. Suka atau tertarik terlebih dahulu.
2. Basic pemrograman harus benar-benar dikuasai.
3. Problem solving, kemampuan untuk menyelesaikan masalah yang ada.
4. Fokus satu bahasa pemrograman terlebih dahulu.

 Hambatan atau masalah yang dihadapi


Berikut beberapa masalah yang sering dihadapi oleh kebanyakan developer.
1. Kesehatan
Sebagai developer harus tetap olahraga, makan makanan yang sehat, dan banyak
minum air putih.
2. Bosan
Sebagai software developer, jangan biarkan kita berada dalam comfort zone. Untuk
mengatasinya, cobalah untuk mencari task/pekerjaan yang lebih menantang. Jika
tidak dilakukan, maka skill Anda tidak akan meningkat dan menjadi bosan.
3. Level Karier
Jika Anda sudah mempunyai bekal, cobalah untuk menentukan apakah naik level ke
expert atau level manajemen. Namun, jika belum mempunyai bekal, cobalah untuk
bekerja di software house atau start-up. Sebab, dari sana akan membuat skill
developer Anda makin terasah.
 Indikator sukses dalam mencapai karier tersebut
Menurut mas Fandy indikator sukses dalam mencapai karier adalah:
1. Menganggap pekerjaan yang dilakukan bukanlah beban atau sesuatu yang tidak
disukai. 
2. Selanjutnya adalah review atau peninjauan performa kerja. Apa pun pekerjaan yang
Anda lakukan, selalu masuk dalam daftar top performer. 
3. Indikator sukses juga bisa dilihat dari cara orang melihat Anda di tempat kerja.
Jadi ketika orang-orang respect atau menghormati kita, itu merupakan salah satu
indikator kesuksesan dari seorang developer.

 Saran atau tips & trik dari perjalanan karier beliau


Berikut saran atau tips dan trik yang diberikan mas Fandy:
1. Untuk membuka wawasan mengenai Software Developer Anda dapat menonton
film Start-Up.
2. Basic pemrograman harus benar-benar diperkuat dan dikuasai. 
3. Terus belajar dan latihan karena tiap bahasa pemrograman itu pasti akan
berkembang terus dan tidak ada habisnya. 
4. Programming itu seperti hobi. 
5. Ikutlah perkumpulan/komunitas. 
6. Poin terpenting adalah jangan lupa jaga kesehatan.

Danviero Yuzwan
Android Developer at LOKÉT | GO-JEK Group

Danviero Yuzwan adalah seorang Software Developer yang memiliki spesialisasi di bidang Android.
Pada tahun 2021 ini, sudah 4 tahun lebih beliau telah meniti karier sebagai Android Developer. Saat
ini beliau bekerja di LOKET.

Sumber : Linkedin Danviero Yuzwan

Berikut rangkuman interview yang dilakukan:

 Awal mula tertarik dengan jalur Software Developer


Berawal dari kesukaan dengan komputer dan alat-alat elektronik, membuat beliau tertarik
untuk terjun ke dunia teknik.

 Hal yang perlu dilakukan untuk mencapainya


Berikut beberapa poin penting yang disampaikan mas Yuzwan:
1. Yang dapat Anda lakukan pertama kali adalah mencari masalah dan
menyelesaikannya, atau bisa disebut problem solving. 
2. Setelah itu, tahap selanjutnya kita harus tahu apa yang telah ditulis dalam program
tersebut. 
3. Lalu asah skill dengan banyak latihan.

 Hambatan atau masalah yang dihadapi

o Menurut mas Yuzwan, hambatan itu pasti ada. Berikut beberapa masalah yang sering
dihadapi dalam programming:
1. Kode yang error atau fitur yang tidak jalan
Anda dapat memanfaatkan Google dan Stackoverflow untuk menyelesaikan
masalah tersebut.
2. Malu bertanya
Jika Anda merasa sudah stuck, ada baiknya bertanya kepada orang lain agar
waktu Anda tidak terbuang sia-sia. Namun, tetap bertanya dengan sopan ya.
3. Tidak mendokumentasikan suatu masalah.
Pastikan Anda menyimpan solusi dari permasalahan yang sudah
terselesaikan, agar tidak kesusahan jika menemuinya lagi.
4. Tidak tahu keyword dari permasalahan yang dihadapi.
Anda dapat mencari nama keyword dengan mengandalkan fungsi dari
komponen tersebut. Anda juga dapat melatih pengetahuan sebuah keyword
dengan membaca dokumentasi dan artikel terkait.

o Selain itu ada juga masalah yang akan dihadapi di luar programming. Berikut
detailnya:
1. Komunikasi
Komunikasi dalam sebuah tim itu penting.
2. Terkendala bahasa
Untuk meningkatkan level komunikasi, maka Anda perlu mempelajari hal
lain, seperti bahasa Inggris atau Mandarin.
3. Tidak bisa menjelaskan
Anda perlu belajar technical writing agar dapat menyampaikan sesuatu
dengan mudah.

 Indikator sukses dalam mencapai karier tersebut


Menurut mas Yuzwan, sukses dalam karier itu sejatinya naik anak tangga atau naik level.
Jadi kita perlu tahu saat ini sedang berada di level apa, agar mengetahui apa saja yang perlu
disiapkan untuk naik ke tahap selanjutnya. Selain itu, dapat mengikuti teknologi terkini juga
dapat menjadi indikator sukses dalam karier developer. Oleh karena itu, kita harus terus
belajar agar skill semakin terasah. Sehingga, kita bisa bertahan dengan perkembangan
teknologi yang ada.

 Saran atau tips & trik dari perjalanan karier beliau


Mas Yuzwan menambahkan beberapa saran dan tip agar teman-teman makin bersemangat.
Berikut detailnya:
1. Harus up to date. Ikuti terus perkembangan teknologi yang ada.
2. Harus terus belajar. Harus terus belajar teknologi agar skill terus berkembang.
3. Jangan terlena dengan profesi saat ini. Jangan sampai masuk ke comfort zone agar
skill tidak tumpul.
4. Terus membangun relasi. Bisa dengan mengikuti komunitas atau forum-forum
terkait.
5. Mindset sebagai seorang Software Developer. Jika awalnya Anda berpikir software
developer itu bekerja sendiri, maka cobalah untuk menjadi Software Developer yang
bisa bekerja secara tim.

Jadi seperti itulah interview yang telah kami lakukan dengan para Developer Expert. Semoga bisa
menjadi bekal dalam menentukan karier sebagai Software Developer.

Penutup
Yang perlu Anda lakukan adalah memilih salah satu dari berbagai macam jalur software developer.
Banyak faktor yang dapat mempengaruhi keputusan Anda. Hardware merupakan hal pertama yang
dapat mempengaruhi keputusan Anda dalam memilih jalur yang sesuai. 
Anda dapat membuat rencana untuk menentukan jalur karier developer hingga menjadi expert.
Berikut tahapannya:

 Melihat kondisi hardware yang Anda miliki. Kemudian memilih dari peluang karier yang
ada.
 Setelah memilih jalur karier developer, kuasailah fundamentalnya seperti algoritma dan
bahasa pemrograman yang digunakan.
 Kemudian mencari roadmap dari jalur karier tersebut. Anda bisa memanfaatkan Google,
tanya ke taman Anda, masuk ke forum diskusi terkait, mengikuti webinar, ikut ke komunitas,
melihat langsung di dokumentasinya, dan masih banyak cara lainnya.
 Setelah menemukan Roadmap yang sesuai, Anda harus gigih, temukan topik yang menarik,
kemudian bermain-main dan mengotak-atik ilmu yang Anda dapatkan.

Bangun karier Anda sebagai Developer Profesional di Dicoding.com. Belajar secara terstruktur
sehingga target belajar lebih mudah tercapai.

Anda mungkin juga menyukai