Jika anda memilih untuk menjadi seorang programmer hal yang perlu anda pelajari terlebih dahulu adalah bagaimana programmer itu bekerja apakah dia sendirian ? dan seperti apa pola fikir programmer yang harus terapkan? ini akan saya bahas menurut percobaan saya selama ini jika ada teman-teman yang mau menambahkan silahkan tambah di kolom komentar.
Programmer Adalah
Adalah seorang yang membuat suatu program untuk mempermudah suatu pekerjaan dengan bahasa yang di kuasainya, programnya bisa berbentuk aplikasi andorid, aplikasi desktop, dan aplikasi web, programmer bisa mengatasi masalah yang ada seperti masalah pada suatu toko, jika pada awalnya penjual barang menggunakan metode yang lama dalam pencatatan pengeluaran uang, pemanasukan, dan data lainnya tentang pelanggan, maka programmer bisa membuat program untuk memecahkan masalah ini.
Gaji Programmer
Jika teman-teman yang masih mikir untuk menjadi seorang programmer maka anda perlu membaca seberapa besarnya gaji seorang programmer di Indonesia melalui koran, majalah, atau situs survey, hampir semuanya mencantumkan jumlah yang ‘wah’. Sebagai contoh, anda bisa telusuri sendiri.
Jika anda bekerja sebagai programmer hanya karena Gaji yang besar (bukan karena hoby atau kecintaan menjadi seorang programmer) maka bisa dibilang anda tidak akan betah dengan pekerjaan ini. Mengapa? karena untuk menjadi seorang programmer ada banyak hal yang harus anda kuasai, yaitu mulai dari bagaimana merancang, menganalisa program anda dan masih banyak aspek yang harus anda ketahui, tentu saja jika karena kecintaan ingin menjadi seorang programmer tentu langkah anda akan mudah terhenti dan tujuna dari tulisan saya kali ini adalah untuk memberi sedikit tentang hal apa saja yang semestinya anda perhatikan dalam menggeluti dunia coder.
Programmer Adalah
Adalah seorang yang membuat suatu program untuk mempermudah suatu pekerjaan dengan bahasa yang di kuasainya, programnya bisa berbentuk aplikasi andorid, aplikasi desktop, dan aplikasi web, programmer bisa mengatasi masalah yang ada seperti masalah pada suatu toko, jika pada awalnya penjual barang menggunakan metode yang lama dalam pencatatan pengeluaran uang, pemanasukan, dan data lainnya tentang pelanggan, maka programmer bisa membuat program untuk memecahkan masalah ini.
Gaji Programmer
Jika teman-teman yang masih mikir untuk menjadi seorang programmer maka anda perlu membaca seberapa besarnya gaji seorang programmer di Indonesia melalui koran, majalah, atau situs survey, hampir semuanya mencantumkan jumlah yang ‘wah’. Sebagai contoh, anda bisa telusuri sendiri.
Jika anda bekerja sebagai programmer hanya karena Gaji yang besar (bukan karena hoby atau kecintaan menjadi seorang programmer) maka bisa dibilang anda tidak akan betah dengan pekerjaan ini. Mengapa? karena untuk menjadi seorang programmer ada banyak hal yang harus anda kuasai, yaitu mulai dari bagaimana merancang, menganalisa program anda dan masih banyak aspek yang harus anda ketahui, tentu saja jika karena kecintaan ingin menjadi seorang programmer tentu langkah anda akan mudah terhenti dan tujuna dari tulisan saya kali ini adalah untuk memberi sedikit tentang hal apa saja yang semestinya anda perhatikan dalam menggeluti dunia coder.
- Peran Programmer
Dalam Pembuatan sebuah sistem yang besar pasti programmer membutuhkan team yang solid dalam perancangannya, untuk merancang sebuah sistem programmer harus memilih perannya dalam team, seperti jika kita membuat mobil maka akan ada perannya masing-masing yaitu tukang desain, tukang analisa, dan buildernya. di dalam dunia programming juga begitu yaitu peran masing-masing di berbeda-beda, peran-peran yang saya maksud antara lain sebagai berikut : - Back End Programmer
Sesuai dengan namanya “Back End Programmer” yaitu progammer yang bekerja di belakang(server side), jadi tugasnya seperti mengatur proses data, mengolah data yang ada, dengan logikanya, semua perumusan algoritmatik berada di tangan Back End. Jadi Masalah keamanan data berada pada backend, Bahasa pemrograman yang bekerja di server side (back end) ialah seperti Python, Java, PHP dll - Front End Programmer
Jika back end programmer hanya bekerja di server side maka front end(depan) bekerja di client side yaitu progammer yang bertugas untuk mengatur semua layout, mengatur sedemikian rupa untuk bisa di bilang menarik, dan harus berfikir bagaimana user agar betah menggunakan progam yang di buatnya, selain itu juga front end harus bisa mengambil data dari back end dengan sangat kreatif untuk menjaga server agar tidak mudah down.
Minimal yang harus kamu fahami untuk bekerja di bagian Client Side (Front End) ialah seperti HTML, CSS, Memahami UI / UX design, Mempelajari bahasa pemrograman Javascript, dll. - Full Stack Programmer
Jika Front end fokus pada tampilan dan pengambilan data dari back end dan Back End fokus pada perancangan logika, berbeda dengan full stack programmer.
Full Stack programmer merupakan programmer yang harus memikirkan keduanya yaitu meliputi yang di kuasai oleh front end dan back end yang telah saya jelaskan sebelumnya, full stack programmer membuat logika program kemudian dia juga harus mengatur layout suatu program.
Namun kebanyakan dari programmer Full Stack bekerja sendiri, namun kebanyakan dalam pembuatan program yang membutuhkan keahlian di bagian server dan client (Back end dan Front end) biasanya di butuhkan dalam pembuatan aplikasi yang berskala besar seperti google, facebook, instagram dll.
- Pahami Sistem
Hal yang harus dipahami sebelum memilih bahasa pemrograman yaitu memahami sistem, sistem yang saya maksud disini hanya beberapa saran dari saya agar mempermantap dalam memilih langkah untuk kedepannya dalam mempelajari bahasa pemrograman, berikut adalah hal yang saya maksud : - Memahami cara kerja komputer
- Memahami Compiller dan Interperter
- Alasan Memilih suatu bahasa pemrograman
Untuk menjadi seorang programmer yang PRO dengan cepat (menurut saya sih) anda harus fokus pada satu bagian (Front/Back) namun sebagai pemula anda harus coba semuanya untuk memperbanyak wawasan anda, kenapa? agar mempermudah pertimbangan anda dalam memilih bahasa pemrograman nantinya, pilihlah sesuai yang anda sukai bukan yang hanya ingin anda bisa kuasai. Mungkin anda bisa kuasai apapun yang anda inginkan namun apakah kalian suka dengan hal itu? kita harus memilih sesuatu yang bisa membuat kita bahagia walaupun itu membuat kita begadang tiap malam (seperti bermain game lah).
Jadi kesimpulannya pilihlah bahasa pemrograman menurut bagian yang anda senangi karena jika anda bekerja dengan team anda perlu memiliki sisi yang tidak dimilik oleh anggota lain dalam team anda.
- Sintag ? Ingin faham bukan di hafal.
Dalam prosses pembelajaran menjadi seorang programmer anda tidak perlu khawatir dengan sintag-sintag yang begitu banyak di dalam bahasa pemrograman tersebut, kamu tidak perlu mengingat sedetail-detailnya sintag tersebut karena itu bisa membuat kamu stress dan membuat kamu cepat berhenti untuk mempelajarinya, dan jangan heran kebanyakan dari programmer juga tidak begitu banyak sintag yang dia hafal, namun mereka bisa? ya, coba kamu fikirkan bagaimana mereka bisa? karena mereka FAHAM hahaha.
Jadi bagaimana gaya belajar untuk programmer pemula? cobalah materi awal dengan mempelajari sejarahnya kemudian mulailah coba buat program sederhana dari materi yang kamu pelajari, saran dari saya :
“kamu tidak perlu ingat yang penting kamu faham, jika sintag yang kamu hafal tidak kamu ingat itu tidak apa-apa dari pada kamu lupa terhadap pemahaman yang kamu pelajari itu”.
jadi intinya faham itu yang harus kamu utamakan. Fikirkan “ada banyak yang bisa menghafal suatu pidato namun mereka tidak begitu faham dengan yang mereka ucapkan” berbeda dengan “mereka yang faham dengan suatu pidato namun di saat mereka tampil, mereka lupa dengan suatu kalimat di dalam pidato tersebut namun mereka bisa merancangnya dengan kata-kata mereka sendiri”.
- Siapakan Target pengetahuan
Dalam mempelajari suatu materi yang begitu banyak anda harus membuat perencanaan dalam hari-hari anda karena bukan itu saja yang harus kamu pelajari dalam hidup ini, jika kamu seorang mahasiswa terutama pada semester awal kamu akan di hidangkan dengan beberapa mata kuliah yang bisa di bilang agak berbeda jalan dengan kompetensi yang kamu ambil, dengan pelajaran yang begitu banyak kamu harus membuat perencanaan hari ini kamu harus bisa apa? minggu ini kamu harus bisa apa? bulan ini? tahun ini? dan jangan sampai kamu berhenti untuk belajar. karena menjadi yang terbaik itu susah.
Saya pernah berfikir seperti ini :
“Ternyata buat sistem itu mudah jika aku mau buat sistem pasti aku bisa, mending aku berhenti untuk belajarlah nanti klo ada yang mesan aplikasi pasti bisa aku buat”
Jangan pernah ditiru gaya pemikiran seperti itu guys karena itu adalah salah satu gaya berfikirku yang sangat aku sesali, jadi waktu itu (saat awal) aku belajar bahasa pemrograman dan lumayan bisa dan faham karena hal tersebut aku menganggap semuanya mudah dan berfikir untuk berhenti belajar selama setahun. Dan pada suatu hari aku punya kenalan baru yang gila dengan dunia programming dan dia sudah banyak contoh program yang dia buat, karena saya melihat dia keren saya jadi terpacu untuk ngoding lagi. setelah kembali kedunia programming lagi saya lumayan bingung dalam belajar saya. dari sini saya sadari bahwa saya harus banyak belajar dan harus mempunya target pembelajaran, contohnya : “ saya harus bisa dasar vue.js bulan ini, kemudian bulan berikutnya akan aku coba yang lebih extreme lagi” dan begitu seterusnya.
- Trial & Error
Prosses belajar yang menurut saya paling efektif dalam memahami sesuatau adalah dengan pengalaman sendiri yaitu dengan mencoba dan gagal sendiri tanpa bantuan orang lain selain teknologi yang anda miliki karena segala sesuatu yang anda cari 99% sudah di sediakan di internet anda tinggal mencobanya sendiri, jika anda telah buntuh untuk mengetahui sesuatu barulah anda menanyakan senior anda untuk hal yang sulit anda fahami.
Anda bukan seorang pejuang jika tidak melakukan trial and error. karena di dalam tahap ini anda bisa menyimpulkan suatu kesimpulan dari masalah yang anda hadapi tanpa harus menanyakan orang lain dan anda akan yakin dengan pendapat anda karena anda yang melakukannya bukan oran lain.
- Mempelajari Model-Model Pengembangan Suatu sistem
Dalam pembangunan suatu sistem tentu tidak semudah yang difikirkan oleh orang-orang awam, dalam pengembangan suatu sistem anda harus bisa mempertimbangkan model apa yang cocok untuk di gunakan, karena hal ini akan berpengaruh pada sistem yang anda buat seperti kelayakan penggunaan, lama program anda akan di launching, kerja sama team, kebetahan worker dan masih banyak lainnya yang bisa di kontrol oleh model yang anda gunakan. Dan tentu ini penentu keberhasilan dalam proyek anda. adapun model-modelnya yang bisa anda explore sendiri di internet seperti : Linier atau Waterfall, Prototype, Rapid Application Development (RAD), Evolutionary Developmen, Spiral / Model Boehm , dll.
- Harus Update dan banyak wawasan
Dalam dunia persaingan anda harus tau tentang teknologi sekarang seperti Developer Bahasa Mana yang banyak di butuhkan pada tahun ini, bahasa pemrograman mana saja yang memiliki kedudukan lebih waw di antara developer dunia, teknologi apa yang terbaru.
- Wajib Bahasa Inggris
Kenapa? jawabannya simple yaitu "pembahasan yang sifatnya advanced kebanyakan dari luar" dan bukan hanya itu dengan ini anda juga bisa mendapatkan proyek dari luar yang pastinya anda akan bermain dengan mata uang dollar.
- Memahami Jam Kerja Tubuh
orang yg bekerja di balik layar itulah programer
BalasHapusProgrammer, mudah seru tapi memang punya jalan panjang...
BalasHapus