Tingkatan Atau Level Seorang Programmer Berdasarkan Skill Menurut Model Dreyfus – Dalam pemrograman, ternyata bukan hanya soal belajar dan memahaminya. Namun pemrograman juga memiliki tingkatan atau level seorang programmer yang bisa dilihat dari skill yang dimiliki dalam menyelesaikan masalah pemrogramannya. Berikut adalah tingkatan atau level seorang programmer berdasarkan skill levelnya mengikuti Model Dreyfus yang biasa digunakan untuk mengelompokan tingkatan atau level seseorang berdasarkan bagaimana dia mendapatkan skill kemahirannya melalui pendidikan formal ataupun praktis. Pada Model Dreyfus ini tingkatan atau level mengenai skill seseorang dikelompokan menjadi 5 antara lain : Novice, Advance Beginner, Competent, Proficient, dan Expert.
Hal ini juga berlaku untuk tingkatan atau level skill programmer dalam penerapannya. Untuk pemahaman lebih lanjut mengenai kelompok-kelompok tersebut bisa dijelaskan sebagai berikut.
- Novice Programmer
Novice adalah tingkatan paling rendah programmer. Bisa dikatakan, skill-nya ini masih berada di tingkatan atau level pemula. Yang termasuk level ini biasanya mereka yang baru mengenal pemrograman, masih kebingungan dalam memahami pemrograman itu sendiri dan bagaimana cara memulainya.
Programmer yang skill-nya masih ada di level ini masih sangat membutuhkan panduan secara mendetail jika mempelajari sesuatu atau bisa juga dengan mengikuti tutorial. Misalnya, untuk menulis kode PHP saja mereka harus membaca panduan tentang bagaimana menginstal web server terlebih dahulu, mereka harus menggunakan code editor apa, dan bagaimana cara menyimpan kode programnya itu. Biasanya mereka yang berada di level ini, programmer masih sangat terpaku pada konteks. Dia memang bisa menyelesaikan satu program sederhana dengan mengikuti tutorial, namun mereka akan kesulitan jika harus memodifikasi program tersebut.
Namun semua programmer pasti pernah berada dalam level ini. Sebab semuanya pasti membutuhkan proses. Tidak ada yang instan. Begitupun dengan programmer, tidak ada yang langsung jago coding.
- Advance Beginner Programmer
Level selanjutnya, programmer kemudian berproses menjadi Advance Beginner Programmer. Yang masuk ke level ini biasanya sudah memiliki skill yang lebih tinggi daripada Novice Programmer. Sebab mereka sudah lebih banyak belajar. Programmer di tingkatan atau level ini biasanya sudah mengerti soal programming dan apa yang harus dia lakukan dengan programming itu sendiri. Selain itu, programmer di level ini sudah tidak terlalu terpaku pada konteks lagi. Setelah mereka mempelajari sesuatu, mereka mampu memodifikasinya sesuai kebutuhan. Misalnya, setelah mereka mempelajari panduan untuk membuat sebuah aplikasi perpustakaan kemudian mereka sudah bisa menyesuaikan mana yang dia butuhkan dan mana yang ia tidak dia butuhkan dari panduan yang dia pelajari itu.
Namun Programmer yang berada di level Advance Beginner ini, tidak terlalu memahami konsep secara keseluruhan. Ketika mereka mempelajari sebuah framework atau tools, mereka hanya mempelajari apa yang mereka butuhkan saja, sehingga mereka tidak paham bagaimana framework atau tools itu bekerja. Orientasi utamanya adalah yang penting masalah yang dihadapi selesai. Apabila beberapa fungsi saja sudah cukup untuk menyelesaikan masalahnya, maka mereka hanya akan tahu soal fungsi-fungsi tersebut. Mereka tidak terlalu tertarik untuk memahami big picture dan bagaimana framework atau tools itu bekerja.
- Competent Programmer
Level yang setingkat lebih tinggi dari Level Sebelumnya, yaitu Competent Programmer. Mereka yang sudah berada di tingkatan atau level ini kebanyakan sudah memiliki pengalaman yang lumayan. Ciri utamanya yaitu mereka sudah mampu melakukan troubleshooting. Mereka juga mampu menyelesaikan masalah yang bahkan belum mereka temui sebelumnya dari bekal pengalaman per-codingan-nya selama ini. Para programmer di level ini juga sudah bisa mandiri dan mengeksplorasi sendiri.
- Proficient Programmer
Nah, kalau level ini adalah level yang semakin master, yaitu Proficient Programmer. Para programmer yang sudah sampai pada tingkatan atau level ini biasanya sudah cenderung mampu melihat sesuatu secara keseluruhan. Mereka tidak lagi hanya mempelajari dan menerapkan satu fungsi saja asalkan masalah selesai, namun mereka benar-benar ingin mengetahui bagaimana sesuatu itu berjalan.
Dikarenakan pengetahuannya yang menyeluruh terhadap sesuatu yang terkadang mereka bahkan mampu memberitahukan di mana letak kesalahan sebuah kode ataupun tanpa menjalankan kode tersebut.
- Expert Programmer
Bagi programmer yang sudah jago yang dilihat dari skill-nya adalah seorang expert. Mereka sudah mampu menciptakan karya-karya luar biasa. Mereka bukan hanya mempelajari sebuah konsep secara keseluruhan dari sebuah tools, mereka bahkan menciptakan tools. Mereka mampu membuat bahasa pemrograman,membuat library, membuat framework, membuat IDE, membuat konsep-konsep baru yang bermanfaat untuk pemrograman, mereka bahkan pandai membuat buku. Kita bisa belajar banyak hal kepada Expert Programmer ini.
Namun sebelum menjadi seorang expert, mereka pasti mengalami menjadi proficient. Sebelum itu, mereka juga pasti pernah menjadi seorang pemula (Novice). Semua memang begitu prosesnya. Tidak ada yang instan. Semuanya juga bertahap. Namun dari penjelasan di atas, kita bisa mengetahui di mana posisi kita saat ini, apakah di level Expert, Proficient, Competent, Advance atau justru baru ada di tingkatan Novice. Nah selanjutnya, kita bisa belajar lebih banyak lagi untuk meningkatkan skill dan level.
Namun untuk belajar lebih dalam mengenai pemrograman, tentu saja kita butuh wadah yang memberikan kita banyak materi tentang hal tersebut. Ada banyak website yang menawarkan berbagai materi pemrograman, baik secara gratis maupun berbayar. Namun apabila anda ingin langsung bersama ahlinya sekaligus bagaimana praktiknya, anda bisa mengunjungi www.technocenter.co.id yang lengkap memberikan apapun yang ingin anda pelajari seperti bahasa pemrograman, wordpress, coding, dan lain sebagainya. Semoga bermanfaat!
Leave a Reply