Web Developer
Web developer adalah seseorang yang menciptakan aplikasi berbasis web dengan menggunakan bahasa pemrograman. Pada dasarnya, web developer membuat berbagai hal “terjadi” pada sebuah website. Peran web developer adalah sebagai penghubung dari semua sumber daya yang akan digunakan pada sebuah website, mulai dari pemanggilan database, membuat halaman website yang dinamis, hingga mengatur cara pengunjung untuk berinteraksi dengan elemen-elemen dari website tersebut.
Seorang web developer yang handal akan terbiasa dengan bahasa pemrograman, baik itu di sisi server ( server-side scripting ) maupun disisi client ( client-side scripting ). Dan jangan lupa dengan aspek database yang akan digunakan. Berikut adalah bagian aplikasi yang harus dipahami oleh seorang web developer.
• Client-side: JavaScript
• Server side: ASP, ASP.NET, Java, Perl, PHP, Python, Ruby, dsb.
• Databases: MySQL, Oracle, dsb.
Aspek tampilan menjadi sisi yang agak “terpinggirkan” oleh web developer. Pada umumnya setelah scripting dari aplikasi web telah selesai dibuat, web developer akan menyerahkan pekerjaannya kepada web designer untuk menciptakan tampilan yang baik.
Mungkin secara simpelnya, web developer bisa dibilang sebagai seseorang yang bertanggung jawab untuk membuat dan mengelola website. Tetapi kalau Anda bahas lebih dalam lagi tentang developer, Anda akan tahu bahwa pekerjaan web developer ini bisa dibilang luas. Kedua istilah yang mungkin akan Anda banyak temukan saat melihat-lihat pekerjaan developer adalah back-end developer dan front-end developer. Apa ya bedanya?
Perbedaan Front-End dan Back-End Developer
Sebelum mengetahui perbedaan tugasnya, Anda perlu tahu dulu apa yang dimaksud dengan istilah front-end dan back-end pada website.
Front-End Developer
Front-end adalah bagian depan website yang diakses oleh user. Apa yang Anda lihat saat membuka website, mulai dari warna dan font tulisan sampai dengan menu dropdown dan slider yang ada pada website diatur dengan menggunakan bahasa coding HTML, CSS, dan JavaScript yang dikontrol oleh browser komputer Anda. Ini adalah yang dimaksud dengan front-end.
Front-end developer adalah orang yang bertanggung jawab atas tampilan depan website termasuk penyusunan serta pengelolaan website untuk membuat user interface dan user experience yang bagus bagi user website. Seorang front-end developer diharuskan untuk memahami tiga bahasa pemograman utama yaitu HTML, CSS, dan JavaScript. Selain fasih dalam bahasa-bahasa ini, front-end developer juga harus familiar dengan framework seperti Bootstrap, Foundation, Backbone, AngularJS, dan EmberJS untuk memastikan bahwa konten akan selalu terlihat bagus di semua device atau mobile friendly. Tidak hanya itu, front-end developer juga diharapkan tahu tentang library seperti jQuery dan LESS yang menjadikan satu kode agar bisa digunakan dengan lebih efisien. Kalau Anda melihat deskripsi pekerjaan front-end developer, banyak juga yang meminta pengalaman dengan Ajax, sebuah teknik yang banyak digunakan untuk JavaScript agar halaman website dimuat secara dinamis dengan mendownload data server di background.
Front-end developers biasa bekerja sama dengan designer untuk membuat mockups dari development (pengembangan) sampai website itu jadi. Front-end developer yang ahli juga bisa mengidentifikasi masalah apa yang ada pada user experience dan memberikan rekomendasi selama proses desain agar mereka tidak memiliki masalah yang sama. Tidak hanya itu, front-end developer juga perlu bekerja sama dengan tim lain untuk lebih mengerti tentang tujuan, kebutuhan, dan kesempatan apa yang ingin didapatkan bisnis Anda dari website tersebut. Ini dilakukan agar mereka tahu bagaimana mereka harus membuat websitenya supaya tujuan dan kebutuhan Anda tercapai dan terpenuhi.
Front-end developers bisa dibilang bertanggung jawab atas desain sebuah rumah yang sudah dibangun oleh back-end developer. Jadi kebanyakan front-end developers adalah orang yang mungkin lebih teknis tetapi memiliki kreativitas yang tinggi. Kalau Anda mengunjungi website utama Dewaweb, itu semua adalah hasil kerja dari front-end developer. Designer membuat logo dan berbagai ilustrasi dan graphicnya. Kemudian front-end developer menyatukan semua elemen website ini dan dengan coding membangun websitenya.
Nah, itu semua tentang front-end. Lalu bagaimana front-end sebuah website bisa tetap ada? Dimana gambar-gambar dan data-datanya disimpan? Disinilah back-end berperan.
Back-End Developers
Back-end sebuah website terdiri dari sebuah server, aplikasi, dan database. Developer back-end bertanggung jawab untuk membangun dan mengelola teknologi yang mendukung ketiga komponen tersebut. Ini dilakukan agar front-end sebuah website bisa dibuat.
Untuk memastikan komunikasi antara server, aplikasi, dan database berjalan dengan lancar, back-end developer biasa menggunakan bahasa programming server-side seperti PHP, Ruby, Python, Java, dan .Net untuk membangun aplikasi dan tools seperti MySQL, Oracle, dan server SQL. Ini dibutuhkan untuk mencari, menyimpan, atau mengubah data dan menyajikannya ke coding front-end. Biasanya job description untuk back-end developers akan meminta back-end developers untuk familiar dengan framework PHP seperti Zend, Symfony, dan CakePHP, pengalaman dengan version control software seperti SVN, CVS, atau Git, dan pengalaman dengan Linux sebagai sistem pengembangan dan deployment.
Back-end developer biasa menggunakan tools ini untuk membuat atau berkontribusi ke aplikasi web dengan kode yang bersih, portable, dan terdokumentasi dengan baik.Tetapi sebelum Anda menulis kode tersebut, back-end developer perlu berkolaborasi dengan tim lain untuk mengerti apa yang ingin dicapai dengan website ini. Dengan begitu mereka bisa menyusun keperluan teknis apa saja yang dibutuhkan dan meberikan solusi yang paling efektif dan efisien untuk teknologinya.
Kalau Anda mengunjungi website Dewaweb, server Dewaweb akan mengirimkan inforasinya ke komputer dan device Anda. Nantinya Anda akan melihat apa yang sedang Anda lihat sekarang. Proses ini adalah hasil kerja dari back-end developer.
Lalu apakah seorang developer hanya perlu menguasai salah satu dari kategori di atas? Tidak juga. Kalau Anda mempelajari web development biasanya Anda akan mempelajari keduanya. Front-end developer masih perlu mengetahui skill-skill back-end dan begitu juga sebaliknya. Kadang, developer harus bisa menjadi generalist. Inilah yang disebut dengan full-stack developer.
Full-stack developer
Peran ini pertama kali diperkenalkan oleh departemen engineering Facebook tahun 2010 yang lalu. Full-stack developer adalah developer yang bisa bekerja secara cross-functional, dalam hal ini front-end dan back-end. Tentunya kalau Anda bisa mengerjakan keduanya, Anda akan menemukan lebih banyak kesempatan kerja. Tetapi memang untuk menjadi full stack developer, ada banyak tantangan yang harus dihadapi.
Full stack developer kebanyakan bekerja seperti back-end developer yaitu di bagian server website. Tetapi mereka fasih dalam bahasa front-end yang mengatur tampilan sebuah website. Biasanya, mereka mengerti semua bahasa programming dari HTML sampai Python.
Meskipun tergantung dari proyeknya, full stack developer harus memiliki pemahaman yang dalam tentang cara kerja website. Misalnya mengatur dan konfigurasi server Linux, menulis API server-side, menggunakan JavaScript untuk keperluan front-end, dan menggunakan CSS untuk mendesain website. Dengan menggunakan berbagai bahasa pemograman ini, full stack developer harus bisa tahu solusi baik untuk front-end maupun back-end. Pada dasarnya, seorang full stack developer akan bertanggung jawab atas seluruh experience pengguna website, mulai dari tampilan website sampai dengan waktu loading website.
Simpulan
Web development memang merupakan bidang yang cukup luas. Tetapi apapun jenis development yang ingin Anda pelajari, Anda perlu memiliki perhatian terhadap detail, kemampuan belajar yang cepat, kemampuan problem solving, dan komunikasi yang kuat untuk bisa berhasil. Web development memang bisa menjadi karir yang bagus. Dengan semakin kuatnya industry digital dan teknologi, web developer tentunya akan banyak dicari.
0 komentar:
Posting Komentar