Skill yang Harus dimiliki Programmer


Menjadi programmer yang handal dan baik serta dicintai atasan memang susah untuk dilakukan.

Pada saat mempelajari ilmu programming, awalnya memang terlihat susah.

Tenang… Ini hanya awalnya

Kalau anda sudah terbiasa menekuni dunia programming, maka anda tidak akan merasa kesulitan lagi, apalagi kalau itu memang hobi anda. Pasti sangat cepat untuk bisa memahaminya.

Sedikit orang yang ingin bercita-cita menjadi programmer. Alasannya pun bermacam-macam, seperti menjadi seorang programmer itu butuh kecerdasan dan IQ yang tinggi.

Statement itu menurut saya kurang pas untuk dijasikan alasan mengapa seseorang tidak ingin menjadi programmer, karena seseorang yang cerdas pun belum tentu bisa menjadi seorang programmer kalau dia dia tidak biasa. 

Jangan berkecil hati bagi anda yang tidak bersekolah atau berkuliah di jurusan Teknik Informatika. Walaupun anda tidak bersekolah di jurusan tersebut, anda bisa belajar dengan otodidak.

Kuncinya hanya satu, konsisten…

Walaupun anda pemula, anda bisa menjadi master. Yang penting anda konsisten.

Hanya konsisten ?

Iya, konsisten…

Konsisten akan niat mempelajari ilmu programming / coding dan selalu menerapkannya walaupun hanya sedikit-sedikit.

Otodidak pun tidak apa-apa…

Kesuksesan tidak dilihat dari tingkatan pendidikannya, tetapi dilihat dari niat dan kemauan untuk mengubah diri.
 

Tuhan tidak akan mengubah nasib suatu kaum melainkan kaum itu sendiri yang mengubah nasibnya.

Banyak programmer yang berhasil tetapi tidak pernah mengenyam dunia pemrograman pada saat di sekolah.

Jadi, kuncinya hanya latihan dan latihan. Tanpa latihan, seseorang tidak bisa menjadi programmer, begitu juga dengan profesi yang lainnya. 

Seperti kata pepatah, bisa karena biasa. 

Maka seseorang harus membiasakan diri untuk berlatih menjadi apa yang ia inginkan. Misalnya jika anda ingin menjadi seorang programmer, maka anda harus belajar beberapa bahasa pemrograman (programming language).
 

Apa saja yang harus dikuasai oleh programmer ?

1. Bahasa Pemrograman

Bahasa Pemrograman Terpopuler
     Hal ini sangat dan amat wajib untuk dikuasai oleh seorang programmer karena bahasa pemrograman sudah seperti makanan sehari-hari. 
Tanpa bahasa pemrograman, seorang programmer tidak bisa melaksanakan tugasnya yaitu membuat sebuah aplikasi atau mengembangkan web kecuali web yang tanpa bahasa pemrograman sudah bisa dibuat, seperti blogger.com, dan wordpress.com
Maka dari itu, seorang programmer harus menguasai bahasa pemrograman seperti Java, C++, C, C#, dan lain-lain untuk mobile. Sedangkan untuk web, saya sarankan untuk belajar HTML, PHP, CSS, JavaScript. 
Saran saya, lebih baik kuasai 2 atau 3 bahasa pemrograman saja tetapi mendalami daripada menguasai semua bahasa pemrograman tetapi yang dipelajari hanya kulitnya saja. 
Misalnya kamu ingin menguasai bahasa pemrograman berbasis desktop atau web. Maka kamu harus menguasai minimal 3 bahasa pemrograman untuk desktop atau 3 bahasa pemrograman untuk web.

2. Bahasa Inggris

Bahasa Inggris
englishindo.com
Seorang programmer harus bisa menguasai bahasa inggris dikarenakan bahasa pemrograman yang terdiri dari perintah-perintah dalam bahasa inggris. 
Mengapa bahasa pemrograman itu memiliki perintah bahasa inggris ? Karena pencipta bahasa pemrograman pertama kalinya itu tinggal di negara dengan bahasa inggris. 
Logikanya begini…
Bahasa pemrograman itu saya asumsikan sebagai turis.
Anggap saja bahasa pemrograman itu turis yang berasal dari negara Inggris, kalau kita bisa menguasai bahasa inggris, pasti kita bisa berkomunikasi dengan sang turis tersebut.
Begitulah kurang lebihnya tentang pentingnya memiliki kemampuan bahasa inggris untuk menjadi seorang programmer.
Jadinya perintah dalam bahasa pemrograman pasti menggunakan bahasa inggris.

3. Logika Yang OK dan Kreativitas Yang Tinggi

Logika Dan Kreativitas
Seorang programmer dituntut agar bisa menyelesaikan masalah atau membuat aplikasi yang beda dari aplikasi lainnya. 

Maka dari itu, seorang programmer harus mempunyai logika yang OK dan kreativitas yang tinggi supaya dapat menciptakan aplikasi yang berbeda namun tetap masuk akal (logis). 


Seseorang yang mempunyai logika yang tinggi cenderung lebih bisa menyelesaikan masalah lebih cepat bila dibandingkan dengan seseorang yang memiliki logika yang rendah.


Logika sang programmer itu didapatkan pada saat pelajaran matematika.


Pada jurusan Teknik Informatika, pasti ada mata kuliah yang berbau dengan yang namanya matematika.


Mau tidak mau, anda harus bisa matematika agar logika anda bisa terlatih.

4. Ketelitian Yang Ekstra

Programmer Yang Teliti
flickr.com
     Hal ini juga penting untuk dimiliki oleh seorang programmer, karena bahasa pemograman itu mempunyai sifat yang sensitif (case sensitive), jadinya kurang satu titik pun program tidak akan bisa jalan. 

Bayangkan jika seorang programmer kurang teliti, maka ia pasti akan pusing untuk melihat letak kesalahannya. 


Nah, itulah fungsi dari adanya debug/compile pada aplikasi untuk membuat program, yaitu untuk mencari letak kesalahan programmer dalam menulis sintaksnya.

5. Kesabaran Yang TOP

Programmer Yang Sabar
kochiefrog.com
Ini juga tak kalah penting untuk dikuasai oleh seorang programmer. Programmer yang handal adalah programmer yang bisa menahan diri untuk sabar dalam menjalankan tugasnya yaitu coding atau nama lainnya adalah membuat aplikasi atau web dengan bahasa pemrograman. 


Baca : 6 Keuntungan / Kelebihan Menjadi Seorang Programmer

Programmer harus bisa bersabar ketika program yang dibuat masih salah, entah itu kurang sedikit syntax lagi ataupun yang lainnya.


Karena dengan kesabaran, seorang programmer bisa tenang dalam menjalankan tugasnya. Tidak hanya programmer, setiap orang harus sabar dalam melaksanakan tugasnya.

6. Programmer Harus Rajin dan Pekerja Keras

Programmer Yang Rajin Dan Pekerja Keras
     Sebenarnya tidak hanya programmer, tetapi semua orang juga harus rajin dan bekerja keras untuk menekuni profesinya. Seperti kata pepatah, Rajin pangkal Pandai. 
Skill ini wajib dimiliki programmer. Karena tanpa ini, kita tidak akan tahu cara memprogram.




Hal itulah yang membuat seseorang bisa berhasil dalam usahaya mencapai apa yang mereka inginkan. Karena 99% keberhasilan seseorang itu datangnya dari sikap yang rajin dan bekerja keras, dan sisanya 1% untuk doa.

7. Membaca Dokumentasi

Membaca dokumetasi program
Dokumentasi adalah dokumen yang menjelaskan cara penggunaan suatu teknologi. Biasanya sulit dipahami.
Kenapa sulit?
Karena:
  1. Dikemas dengan bahasa teknis yang membosankan untuk dibaca
  2. Screenshot kurang lengkap (karena pemula butuh screenshot meskipun itu hanya perintah CLI)
  3. Menggunakan bahasa inggris
Meskipun begitu, dokumentasi adalah hal pertama yang harus kamu baca bila akan belajar teknologi baru.
Lalu bagaimana agar saya bisa membaca dan memahami dokumentasi dari suatu teknologi?
Gampang…
Baca saja!
Paham nggak paham baca saja, nanti lama-lama jadi paham. Maksudnya jadi terbiasa dan tidak bosan membaca dokumentasi.
Dokumentasi biasanya ada beberapa macam:
  1. Dalam bentuk tutorial
  2. Dalam bentuk referensi atau penjelasan tentang fungsi, classs, objek, variabel, dll.
  3. Dalam bentuk FAQs (pertanyaan yang sering ditanyakan)
Lalu dari mana kita bisa baca dokumentasi?
Bisa dicari di google dengan kata kunci x documentation, x adalah nama teknologinya.
Contoh:
Pencarian dokumentasi dari Google Atau bisa mengunjungi web-web berikut:

8. Membaca Source Code

Membaca kode program
Membaca source code kelihatannya mudah. Iya mudah kalau baca source code yang kita tulis sendiri. Logikanya sudah kita pahami, karena logika berpikir kita sendiri.
Tapi…
Saat membaca source code milik orang lain, nggak paham apa-apa .
Skill membaca source code ternyata skill yang harus dimiliki selain skill menulisnya. Karena kita tidak akan menulis kode sendirian. Akan ada source code dari anggota tim yang lain.
Lalu bagaimana agar bisa membaca source code orang lain?
Ada beberapa tips yang pernah saya dengar:
  • Baca srouce code dari bawah ke atas
  • Baca bagian yang kamu pahami dulu
  • Baca keterangan pada kometnarnya
  • Sering-sering gentayangan di Github dan Stackoverflow

9. Debugging

Membaca kode program
Debugging adalah sebuah aktivitas mencari bugs atau masalah di dalam kode program (source code).
Dinamakan bug karena dulu sejarahnya ada seekor bug (serangga) yang menempel pada mesin komputer dan mengakibatkan masalah. Setelah ditelusuri ternyata penyebabnya Si bug. Akhirnya istilah ini menjadi populer hingga saat ini.
Pada skill debugging, kamu harus mampu:
  • Mamahami maksud pesan error dan masalah lainnya
  • Mencari di baris ke berapa letak errornya
  • Analisis penyebabnya
  • Mengatasi error
Proses debugging ini bisa jadi lebih lama dari proses menulis kode. Bahkan ada yang sampai berminggu-minggu tidak menemukan sumber masalahnya.
Karena itu, programmer tidak bisa disamakan dengan buruh. Kita tidak akan pernah tahu, masalah dan error seperti apa yang akan terjadi meskipun sudah pernah membuat sistem yang sama.
Biasanya programmer yang malas, saat menemukan error akan langsung dilempar ke forum. Karena ia tidak mau debug programnya sendiri.
Debugging sebaiknya dilakukan sendiri, karena dampaknya akan terasa pada diri kita sendiri.

10. Skill Bertanya dan Googling

Googling
Skill bertanya dan Googling ini sangat penting untuk dimiliki, karena:
Ketika kamu tidak tahu atau stuck saat debugging, mau minta bantuan ke mana?
Yang pertama tentunya Google. Setelah itu baru kita bertanya ke teman atau forum.
Saat Googling, pastikan menggunakan katakunci yang tepat dan menggunakan bahasa inggris.
Kenapa bahasa inggris?
Ya balik lagi pada skill pertama.
Contoh pencarian solusi di Google:
Kata kunci pencarian Google Lalu saat kamu tidak menemukan jawaban, barulah bertanya di forum.
Pastikan bertanya dengan menyertakan infomasi yang detail, lengkap, dan jelas.
Contoh:  (benar)
saya sudah mengikuti tutorial ini, namum mendapat kendala di _____, 
dengan pesan error ____________.

Berikut ini source code yang saya tulis: _______ (link gist.github.com).
dan beberapa log: _____ (link gist.github.com).

Screenshot tampilannya atau errornya seperti ini:

_________________________ (link image/bisa juga diupload)

Tindakan yang sudah saya lakukan:
1. Saya sudah mengubah ini ____ menjadi _________
2. Saya baru update ____ ke versi terbaru

Versi _____ yang saya gunakan saat ini adalah _____.
Contoh:  (salah)
- gan, error pas ______. itu kenapa ya?
- ada yang pernah nyoba _____?
- ada yang paham ____, ada yang mau saya tanyakan. 
- ada yang tau ini kenapa? [screeshot]
Kenapa harus jelas dan detail?
Karena debuging itu seperti pekerjaan detektif. Kita membutuhkan banyak informasi untuk menemukan sumber masalahnya.
Jika kamu bertanya seperti ini di Stackoverflow:
gan, error pas ______. itu kenapa ya?
Barangkali tidak akan ada yang mau jawab. Bahkan bisa di-downvote  dan ujung-ujungnya bisa di-bully.

11. Komunikasi

programmer
Seorang Programmer memiliki tugas menyelesaikan masalah yang dihadapi manusia di dunia nyata dengan menggunakan kode yang diperintahkan pada komputer. Skill ini sangat penting untuk dikuasai. Programmer harus dapat memahami suatu informasi yang kompleks, merangkumnya, dan menjelaskannya kepada orang awam. Sebagai contoh, seorang Programmer harus bisa menjelaskan dan mengajarkan pada manajer proyek untuk memahami sistem yang dibuat.
Selain itu, apabila kamu berperan sebagai Programmer sekaligus manajer dalam proyek yang kamu kerjakan, kemampuan komunikasi yang baik akan mempermudah kamu dalam melatih staf dan Programmer lain dalam menyelesaikan proyek tersebut. Komunikasi yang baik juga akan mempermudah kamu saat memiliki ide cemerlang yang mungkin akan berkembang menjadi sebuah proyek baru. Banyak ide brilian yang gagal diimplementasikan di bidang teknologi informasi hanya karena dikomunikasikan dengan buruk.

12. Presentasi

programmer
Salah satu kemampuan yang harus kamu miliki jika menjadi seorang Programmer adalah melakukan presentasi. Baik saat menjelaskan proyekmu yang sudah selesai pada CEO perusahaanmu, maupun saat rapat dengan para karyawan-karyawan lain, kemampuanmu untuk melakukan presentasi secara menarik akan membuatmu diingat oleh banyak orang sekaligus. Banyak hal yang harus kamu perhatikan saat melakukan presentasi, seperti kecakapan menguasai penonton, penguasaan materi yang dibawakan, kemampuan berbicara dan bahasa tubuh yang baik, dan slide yang kamu gunakan sebagai media presentasi.
Seorang Programmer harus bisa menjelaskan konsep teknologi yang rumit dan menyajikannya sesederhana mungkin dalam slide presentasi tanpa mengurangi hal-hal esensialnya. Untuk bisa menguasai skill ini, kamu harus banyak berlatih dan melalui banyak kesempatan presentasi. Kamu juga bisa belajar dari para ahli public speaking dan mengamati cara mereka melakukan presentasi.

13. Mampu bekerja dalam tim

programmer
Di balik setiap proyek yang sukses diselesaikan, terdapat kerja tim yang luar biasa. Saat bekerja dalam tim, seorang programmer tidak hanya mengerjakan pekerjaannya sendiri, namun juga mendorong dan mendukung anggota tim lain dalam menyelesaikan proyek yang sedang dikerjakan. Seorang programmer yang berpengalaman mengaplikasikan keahlian khusus nya dalam sebuah tim juga memiliki nilai tambah karena kemampuan yang dimilikinya dalam melihat proyek secara keseluruhan.
Programmer yang sukses bekerja dalam tim akan menjadi kandidat yang baik untuk dipromosikan ke jabatan yang lebih tinggi.  Banyak programmer yang bekerja di bidang IT tidak dapat menerima adanya perbedaan pengetahuan dan keahlian antar karyawan, dan mengakui bahwa ada skill gap yang  dapat diisi oleh orang-orang tertentu karena adanya rasa gengsi, ego, dan kepentingan-kepentingan lain dalam dunia kerja. Namun saat melakukan pekerjaan dalam tim, kamu akan sadar bahwa banyak hal baru yang bisa dipelajari dari rekan-rekan setim.

14. Networking

programmer
Masih berhubungan dengan bekerja dalam tim, seorang Programmer harus mampu cepat beradaptasi dengan orang-orang baru untuk bisa bekerjasama dengan baik. Networking adalah kegiatan di mana kamu bertemu dengan orang lain untuk saling berkenalan, berbagi informasi, atau membicarakan suatu wacana, ide, atau bahkan peluang bisnis. Skill akan sangat penting dalam perkembangan kariermu. Dengan networking, kamu bisa mendapat banyak pengetahuan baru dari orang yang bahkan tidak kamu kenal sebelumnya. Selain itu, skill networking akan membantumu sebagai seorang Programmer menemukan orang yang tepat untuk menyelesaikan proyek atau ide-ide yang sedang kamu kerjakan.
Berjejaring memang tidak mudah. Apalagi untuk para Programmer yang biasanya hanya berkutat dengan komputer atau laptop di depan layar, dalam berjejaring kamu harus mau mengeluarkan usaha lebih. Caranya beragam, kamu bisa pergi ke gathering yang diadakan perusahaan hingga konferensi di industri IT. Bahkan tidak jarang, kamu akan bertemu dengan orang yang kamu inginkan di event yang kamu pikir tidak penting untuk karier dan pekerjaanmu saat itu. Nyatanya, banyak ide dan kesepakatan bisnis yang dimulai dari meja makan atau bermain golf di waktu senggang dengan kolega. Di zaman modern ini, internet juga bisa memudahkanmu untuk networking. Media sosial profesional seperti LinkedIn akan membantumu untuk berkenalan dengan orang-orang yang kamu inginkan.

15. Sikap positif

programmer
Dalam kondisi tertentu sikap positif akan membantumu sebagai seorang Programmer untuk percaya diri dan optimis memecahkan suatu masalah di proyek yang sedang kamu kerjakan. Di bidang IT, banyak orang yang dengan positif dan senang hati bersedia membantu dan mendukung teman yang mengalami kesulitan. Namun sebaliknya, kamu juga akan menemukan orang-orang yang secara iseng mengolok-olok rekannya yang sedang bingung dengan pekerjaannya. Hal ini biasanya dihubungkan dengan rasa sombong yang dimiliki Programmer karena merasa ahli dalam teknologi.
Sikap positif harus kamu miliki sebagai seorang Programmer, karena pada dasarnya pekerjaan ini adalah tentang menyelesaikan masalah yang ada di masyarakat dengan menggunakan keahlian Programming di komputer. Sikap yang kamu miliki ini akan membantu banyak orang di lingkungan kerjamu, dan tentu juga akan membuatmu menonjol di antara rekan-rekan kerjamu yang lain.

16. Insting

programmer
Sebagai seorang programmer, banyak hal yang dapat diajarkan secara langsung di kelas secara cepat, terutama yang berkaitan dengan metodologi dan teori. Namun, dibutuhkan bertahun-tahun pengalaman manajemen untuk membangun insting mengenai sebuah proyek. Seorang project manager yang handal biasanya memiliki indera keenam ini. Insting yang kamu miliki akan bertambah seiring dengan berjalannya karier kamu sebagai programmer di industri yang kamu geluti.

17. Inovasi dan Kreativitas

Soft skill terakhir yang sangat penting untuk kamu miliki adalah kemampuan untuk berinovasi. Tidak hanya skill yang bagus dalam menulis kode dalam program yang kamu kerjakan, kamu juga harus dapat berpikir jauh ke depan secara kreatif untuk menyelesaikan suatu masalah. Saat atasan menceritakan masalah yang dimilikinya, seorang ahli IT yang inovatif dan kreatif mampu berpikir secara cemerlang dan menawarkan solusi yang efisien sekaligus efektif.  Kreativitas yang kamu miliki sebagai seorang Programmer akan membuatmu selalu dibutuhkan dalam lingkungan kerja dan sangat membantu perkembangan kariermu.

da banyak pendapat mengenai apa saja skill yang dibutuhkan oleh programmer. Namun dari beberapa yang saya pelajari, kebanyakan berfokus pada teknologi tertentu misalnya NoSQL, HTML5, CSS3 dan lain-lain. Lho itu sih produknya, bukan skillnya. Nah yang mau kita bahas di sini adalah 5 skill yang paling dibutuhkan programmer, apapun produk atau bahasa pemrograman yang digunakannya. Tanpa skill ini, kita tidak mungkin bisa mendapatkan keahlian lainnya. 1. Problem Solving Skill Problem solving skill adalah kemampuan memecahkan masalah. Software dibutuhkan untuk memecahkan masalah nyata yang dihadapi oleh seorang client atau user. Seorang programmer pada akhirnya harus bisa memberikan solusi atas masalah tersebut. Apapun bahasa pemrograman yang Anda kuasai, teknologi yang Anda pelajari, jika Anda tidak bisa memecahkan masalah, Anda tidak cocok menjadi seorang programmer. Di forum-forum pemrograman, kita sering melihat orang-orang yang begitu manja. Dikit-dikit nanya. Pertanyaannya juga yang sangat mendasar dan bisa ditemukan dengan mudah di buku, internet atau baca dokumentasi. Ini contoh mereka yang tidak memiliki problem solving skill. Problem Solving skill ini bisa dipelajari sendiri maupun diajarkan di kampus-kampus. Bahkan di Sandiloka, kami mengajarkan Problem Solving Skill kepada karyawan baru. 2. Critical Thinking Definisi critical thinking adalah kemampuan berpikir kritis, yaitu menggunakan logika dan analisa untuk membedakan mana solusi yang tepat, mana solusi yang tidak tepat. Mana proses yang benar, mana proses yang salah. Critical Thinking adalah salah satu bentuk dari Correct Thinking yaitu berpikir dengan benar. Tanpa kemampuan berpikir dengan benar, tidak mungkin sebuah software dapat diciptakan. 3. Self-Learning Skill Definisi Self-Learning adalah belajar mandiri secara terus menerus atas keinginan sendiri tanpa diminta atau diperintah. Dunia software adalah dunia yang dinamis dan berkembang dengan cepat. Apa yang kita pelajari hari ini akan segera kadaluwarsa bulan depan. Jika kita tidak suka belajar mandiri, kita akan ketinggalan terus dan menjadi usang. Oleh sebab itu, seorang programmer perlu melatih dirinya sendiri untuk belajar hal-hal baru, belajar metode baru, menyerap pengetahuan baru untuk mengembangkan diri. 4. Reading Skill Reading skill atau kemampuan membaca yang dimaksud di sini adalah membaca dengan utuh, menangkap maksud atau instruksi dari sebuah pesan yang disampaikan. Kita tahu bahwa di dunia pemrograman, kita perlu membaca manual, dokumentasi, buku, dan tentu saja source code. Supaya seluruh pesan diterima dengan benar, kita harus membacanya satu-persatu, dengan lengkap. Ini membutuhkan kesabaran, ketelitian, kecermatan yang memang sudah menjadi bakat yang dimiliki seorang programmer. Kalau kita tidak memiliki kemampuan membaca satu-persatu sampai selesai, dengan teliti dan cermat, itu tandanya kita tidak cocok menjadi programmer. 5. Writing Skill Selain reading skill, tentu saja seorang programmer harus memiliki writing skill. Sebab, programmer kan harus menulis source code, menulis dokumentasi, dan mungkin saja harus membuat artikel di web/wiki. Kalau pada dasarnya tidak suka menulis, maunya copy paste dari tulisan orang di internet, ya ndak cocok jadi programmer. Writing skill juga diajarkan di buku-buku dan di kampus-kampus dalam bentuk mata kuliah umum atau pilihan.

Read more at: https://ilhamrizqi.com/2014/08/5-skill-yang-paling-dibutuhkan-programmer/
Share:

Tidak ada komentar:

Posting Komentar

Postingan Populer

Cari Blog Ini

Diberdayakan oleh Blogger.

HTML dan CSS Dasar

Recent Posts

Unordered List

  • Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
  • Aliquam tincidunt mauris eu risus.
  • Vestibulum auctor dapibus neque.

Pages

Theme Support

Need our help to upload or customize this blogger template? Contact me with details about the theme customization you need.