Pengembang perangkat lunak (software) atau aplikasi menjadi pekerjaan paling diminati dan menjanjikan selama 5-10 tahun ke belakang. Ada ribuan bahkan jutaan pengembang pemula di luar sana yang berlomba-lomba untuk dapat masuk ke industri, baik dengan bekerja di perusahaan startup maupun corporate.
Untuk berkarir sebagai pengembang perangkat lunak atau software, sebagian besar dari mereka mulai dengan menempuh pendidikan tinggi pada subjek Computer Science, Computer Engineering, atau Teknik Informatika untuk mendapatkan fundamental atau fondasi yang kuat. Namun, hal tersebut nyatanya belum cukup untuk dapat langsung terjun ke industri. Hal yang perlu dilakukan selanjutnya adalah menceritakan kemampuan atau skills yang dimiliki dengan membuat portofolio. Portofolio inilah yang nanti akan menjadi pertimbangan saat masuk ke industri.
Mengingat role yang paling populer saat ini adalah Web Developer dan Mobile Developer, artikel kali ini akan membahas bagaimana membangun portofolio yang efektif untuk kedua role tersebut. Jadi tetap simak sampai akhir, ya!
ð» Mulai Belajar Pemrograman
Belajar pemrograman di Dicoding Academy dan mulai perjalanan Anda sebagai developer profesional.
Daftar SekarangPortofolio Aplikasi sebagai Web Developer
Website & Web Application
Sebelum memutuskan untuk membuat portofolio yang berhubungan dengan role Web Developer, penting untuk mengetahui perbedaan mendasar antara website dan web application.
- Website adalah serangkaian halaman web (webpages) yang dapat diakses melalui web browser dan di-hosting pada sebuah web server. Website umumnya bersifat statis.
- Web application adalah sebuah perangkat lunak atau software yang dapat diakses melalui web browser dan berjalan pada sebuah web server. Web application umumnya bersifat dinamis.
Ide Portofolio Aplikasi
Berikut adalah beberapa ide portofolio aplikasi untuk website maupun web application yang umum dibutuhkan oleh industri saat ini.
- Company Profile
Company profile adalah sebuah website yang menampilkan halaman statis berisikan informasi dari sebuah perusahaan, seperti produk atau jasa yang ditawarkan, project unggulan yang pernah dikerjakan, lokasi perusahaan, dan lain sebagainya. - Job Board App
Job board app adalah sebuah web application yang dibuat khusus untuk menampilkan lowongan pekerjaan dari berbagai perusahaan. Pengguna dapat membuat profil, mengunggah CV dan portofolio, memasukkan lamaran pada sebuah lowongan pekerjaan, serta mendapatkan status pekerjaan yang dilamar. - Electronic Commerce App
E-commerce app adalah sebuah web application yang dibuat untuk memenuhi kebutuhan berbelanja secara online. E-commerce umumnya memiliki fitur-fitur, seperti autentikasi, daftar alamat, kategori produk, daftar produk, detail produk, keranjang, pembayaran, status pesanan, dan lain sebagainya. - Project Management App
Project management app adalah sebuah web application yang dikembangkan sebagai alat bantu dalam mengelola sebuah pekerjaan baik secara individu maupun kolaboratif. Fitur-fitur yang umumnya ada dalam project management app, antara lain pembuatan tugas, dashboard untuk melihat progress pekerjaan, member invitation, dan lain sebagainya.
Strategi Portofolio Aplikasi yang Efektif
Ketika berbicara tentang pengembangan web, tidak akan terlepas dari tiga role populer yaitu front-end web developer, back-end web developer, dan full-stack web developer.
- Front-End Web Developer
Adalah role yang pekerjaan utamanya adalah mengembangkan website atau web application di sisi client mulai dari menyusun tampilan user interface, user interactions, sampai integrasi dengan Application Programming Interface (API). Strategi pembuatan portofolio sebagai front-end web developer yang efektif adalah menyiapkan setidaknya sebuah website dan sebuah web application. - Back-End Web Developer
Adalah role yang pekerjaan utamanya adalah mengembangkan website atau web application di sisi server mulai dari mengelola database, sampai membuat Application Programming Interface (API) untuk dikonsumsi client. Karena back-end web developer umumnya tidak mengerjakan pekerjaan yang berhubungan dengan user interface, strategi pembuatan portofolio yang efektif adalah mengelaborasi bagaimana desain database sistem yang dibangun, membuat contoh dokumentasi API yang rapi, dan menunjukkan cara API tersebut dapat digunakan atau dikonsumsi oleh front-end developer dengan mudah dan efisien. - Full-stack web developer
Adalah role yang pekerjaan utamanya mencakup gabungan dari pekerjaan front-end web developer dan back-end web developer. Untuk role full-stack web developer, dapat menggabungkan strategi pembuatan portofolio dari dua role sebelumnya yaitu front-end web developer dan back-end web developer.
Portofolio Aplikasi sebagai Mobile Developer
Kebutuhan Akan Aplikasi Mobile
Mobile development adalah sebuah bidang yang dapat dikatakan lebih niche daripada web development. Hal ini dikarenakan tidak semua permasalahan dapat diatasi dengan membuat solusi digital berupa aplikasi mobile. Lalu kapan sebuah aplikasi mobile dibutuhkan atau menjadi solusi yang tepat? Kebutuhan akan pengembangan sebuah aplikasi mobile dipertimbangkan atas faktor-faktor berikut.
- Mengakses fitur spesifik berdasarkan sistem operasi (Android API, iOS API)
- Mengakses tidak hanya secara online, namun juga secara offline dengan memanfaatkan penyimpanan data pada database lokal
- Menjunjung tinggi performa
- Membutuhkan akses lokasi GPS yang spesifik seperti pada aplikasi navigator atau aplikasi delivery
Tantangan Mobile Developer
Ada beberapa tantangan yang harus dihadapi oleh seorang mobile developer saat mengembangkan sebuah aplikasi mobile, antara lain sebagai berikut.
- Limitasi Perangkat
Perangkat mobile atau smartphone memiliki sumber daya atau resource seperti CPU, RAM, dan penyimpanan yang lebih kecil daripada sebuah PC atau laptop. Oleh sebab itu, mobile developer bertanggung jawab untuk dapat mengembangkan aplikasi yang dapat berjalan dengan efisien dan teroptimasi pada sumber daya yang minim. - Ukuran Layar
Ada banyak jenis smartphone dari berbagai brand yang memiliki ukuran layar yang juga sangat bervariasi mulai dari layar compact, medium, large, sampai layar lipat yang sedang tren saat ini yaitu flip dan foldable. Mobile developer harus dapat membangun tampilan aplikasi yang responsif di segala jenis dan ukuran layar tersebut.
Ide Portofolio Aplikasi
Berikut adalah beberapa ide portfolio aplikasi untuk aplikasi mobile yang umumnya dibutuhkan oleh industri saat ini.
- Note Taking App
Note taking app adalah ide project yang paling sederhana untuk dimulai. Fungsinya hanya untuk menyimpan catatan-catatan penting yang sewaktu-waktu dibutuhkan. Agar lebih menarik dan menantang, aplikasi ini dapat dibangun dengan konsep offline-online. Pengguna dapat menyimpan catatan walaupun tidak sedang terhubung ke internet dan melakukan upload atau sync data catatan ke cloud pada saat layanan internet tersedia. - Electronic Commerce App
Aplikasi untuk memenuhi kebutuhan berbelanja secara online saat ini paling banyak digunakan pada perangkat mobile karena alasan portabilitas dan akses yang cepat. E-Commerce App umumnya memiliki fitur-fitur seperti autentikasi, daftar alamat, kategori produk, daftar produk, detail produk, keranjang, pembayaran, status pesanan, dan lain sebagainya. - Delivery App
Delivery app adalah aplikasi yang juga banyak digunakan saat ini. Biasanya delivery app dibuat satu kesatuan dengan e-commerce seperti pada aplikasi pemesanan makanan online. Delivery app umumnya memiliki fitur-fitur seperti autentikasi, akses GPS, tampilan maps, dan update data secara realtime. - Travel App
Aplikasi bertemakan travel dapat menjadi salah satu project portfolio yang menarik. Travel app bisa berupa rekomendasi tempat wisata lengkap dengan informasi rute, tempat penginapan, makanan dan minuman, porter, tour guide, dan lain sebagainya. Travel app juga bisa berupa aplikasi pemesanan tiket online untuk transportasi dan akomodasi seperti pesawat, kereta, hotel, dan lain sebagainya. - Doctor Appointment App
Doctor appointment app adalah aplikasi yang dibuat untuk memenuhi kebutuhan kesehatan seperti membuat janji dengan dokter, memesan kamar rumah sakit, dan membeli obat-obatan.
Rekomendasi Open API, Open Source BaaS, dan UI Marketplace
Untuk menunjang pembuatan portofolio, berikut adalah beberapa open API, open source BaaS (back-end as a service), dan UI marketplace untuk mendapatkan inspirasi tampilan aplikasi yang dapat dimanfaatkan.
Free Open API
- The Movie DB API (https://www.themoviedb.org/)
- Coin API (https://www.coinapi.io/)
- News API (https://newsapi.org/)
- Weather API (https://openweathermap.org/api)
Free & Open Source BaaS
- Firebase (https://firebase.google.com/)
- Appwrite (https://appwrite.io/)
- Supabase (https://supabase.com/)
- MongoDB Realm (https://www.mongodb.com/developer/products/realm/)
UI Marketplace
- Dribbble (https://dribbble.com/)
- UI8 (https://ui8.net/category/freebies)
- UpLabs (https://www.uplabs.com/)
Kesimpulan
Dengan mempertimbangkan dan mengikuti berbagai tips di atas, kamu dapat mulai membuat dan mengembangkan portofolio baik berbentuk aplikasi web maupun aplikasi mobile yang menarik, bermanfaat, dan tentunya membantu kamu dalam meraih karir impian sebagai seorang software engineer atau software developer di industri. Jika menurut kamu ada ide portofolio aplikasi lainnya yang menarik juga, silakan tulis di kolom komentar ya!