Trentech.id
No Result
View All Result
  • Login
  • Register
  • Terbaru
  • Berita
  • Startup
  • Bisnis
  • Learn
  • Games
  • Blockchain
  • Gadget
  • Terbaru
  • Berita
  • Startup
  • Bisnis
  • Learn
  • Games
  • Blockchain
  • Gadget
Trentech.id
No Result
View All Result
  • Terbaru
  • Berita
  • Startup
  • Bisnis
  • Learn
  • Games
  • Blockchain
  • Gadget

[Part 2] Ini Dia Skill yang Harus Dimiliki Programmer Masa Kini  - Backend

23 September 2017
in Learn
[Part 2] Ini Dia Skill yang Harus Dimiliki Programmer Masa Kini  - Backend
1.4k
VIEWS
Berikan rating

Kali ini saya akan membahas mengenai skillset yang harus dimiliki Backend Developer.

Perlu dicatat bahwa saya membatasi istilah backend dalam artikel ini, adalah untuk Backend Developer Web dan Mobile App saja. Sehingga tidak termasuk di dalamnya backend untuk aplikasi desktop (Programmer VB, Delphi, etc).

Baca lagi

Curhatan Perempuan IT Satu-Satunya, Pasti Mengalami Derita Ini

7 Keterampilan Yang Harus Dimiliki Programmer Untuk 5-10 Tahun Ke Depan

Gaji Programmer Indonesia: Berapa Seharusnya?

Dan istilah Aplikasi adalah untuk Web dan Mobile App saja. Dan pemilihan framework/bahasa pemprograman yang saya pilih disini, hanyalah opini + pengalaman.

Dan istilah “Skill” disini, termasuk didalamnya pemilihan framework, metodologi, dan bahasa pemprograman. Sepakat!? Let’s Go!

Seorang Backend Developer, singkatnya bertanggung jawab untuk membangun “server side” dari sebuah aplikasi, seperti autentifikasi, operasi database, dan logika dari sebuah aplikasi.

Jika membicarakan, skill apa yang harus dimiliki oleh seorang backend, jawaban dari orang-orang tentu berbeda-beda. Dan kadang junior programmer kebingungan, apa yang sebaiknya yang dipelajari.

Kalau cek di StackOverflow survey, Python dan Ruby lebih populer ketimbang PHP. Tapi kok gak pernah dapat client yang yang minta dibuatin pakai Python atau Ruby? Kok rasanya PHP saja sudah cukup?

Kira-kira seperti itu perasaan junior programmer.. benar tidak? Apakah PHP saja sudah cukup sebagai backend? well… Mari kita bahas skill-skill yang dibutuhkan sesuai dari skala aplikasi yang dibangun.

A. Website dan Blog

Seperti website organisasi, company profile, instansi pemerintahan, tokoh politik atau landing page sebuah produk. Untuk project dengan fitur minimalis seperti ini, WordPress adalah salah satu pilihan terbaik sebagai pre-build backend. Untuk bisa mendevelop website berbasis WordPress, programmer harus memiliki skill PHP, Javascript dan MySQL. Dan tentu saja harus memahami seluk beluk WordPress agar tidak ada security hole.

Tentu saja, kamu bisa membangun website sekolah dengan Laravel misalnya, tapi kalau pihak sekolah hanya minta websitenya hanya sekedar company profile, haruskah menggunakan Laravel? WordPress sebagai CMS nya lebih dari cukup. Karena (menurut saya):

Coding bukan soal keren-kerenan bro, pakai ini pakai itu. Tapi coding soal efisiensi, dan dalam bisnis IT, semakin cepat kamu menyelesaikan sebuah project, maka semakin banyak project yang bisa kamu tangkap [1]

Jika trafik diperkirakan tinggi, seperti membangun portal berita, atau blog yang sudah cukup terkenal. Bisa menggunakan WordPress atau Ghost.io, ditambah optimisasi pada server. Untuk ini skill tambahan yang harus kamu miliki adalah pengetahuan melakukan deploy dan server optimization [2].

Untuk WordPress, dapat dioptimisasi dengan menggunakan EasyEngine, atau Varnish. Tetapi sejauh ini, Debops adalah konfigurasi paling “joss” untuk website berbasis wordpress. Disini kamu akan berkutat dengan SSH, Linux CLI, Nginx / Apache Virtual Host, dll.

Pilihan lainnya untuk website trafik tinggi, adalah menggunakan static cms, seperti Jekyll. Dan ini favorit saya ketimbang harus optimisasi wordpress. Kenapa static cms? karena web static tidak memakan resource server berlebihan, data yang disimpan tidak menggunakan database mysql, melainkan disimpan dalam bentuk file. Tapi jangan salah, meskipun katanya “static”, tetapi data tetap “dinamis” kok.

Tanpa harus banyak optimisasi seperti wordpress, hanya dengan server paling kecil dari DO saja, Jekyll bisa nampung ratusan ribu trafik. Amazing!

B. Sistem Informasi 

Misalnya membuat aplikasi siakad, aplikasi administrasi perkantoran, aplikasi stock dan semisalnya yang sifatnya manajemen data. Cukup menggunakanLaravel dan Lumen. Atau framework PHP lainnya seperti Symphony dan Yii, bebas.

Yang harus diperhatikan adalah skema database, sehingga skill optimisasi database dan relasi antar tabel sangat diperlukan dalam mendevelop aplikasi-aplikasi seperti ini.

C. Cross Platform Application

Nah, lagi musim project yang seperti ini. Klien minta buatin website plus aplikasi mobile nya (Android dan iOS). Biasanya yang order mau buat marketplace, portal pencarian, aplikasi startup, dsb.

Untuk tipe project seperti ini, saya menerapkan Write Once Run Everywhere (WORE) kepada anak-anak backend, yaitu menulis codingan aplikasi hanya satu kali, tetapi bisa berjalan di platform mana saja, seperti desktop, android, ios, dan web.

Yang dibutuhkan:

1. Serverless Database

Yaitu database di host di pihak ketiga. Jadi kita tidak lagi pusing memikirkan melakukan backup database, maintenance, ataupun scaling up. Bagi yang pemula, bisa mencoba baqend.com sebagai database. Yang lebih pro bisa coba DynamoDB dari Amazon, Firebase dari Google, dan masih banyak lagi. Tipe database rata-rata NoSQL dan ketika diakses format yang ditampilkan dalam bentuk JSON.

Untuk database user, dalam handle Autentifikasi (login/signup + password), bisa menggunakan auth0.io atau strompath. Pernah lihat google, produk-produk nya banyak (Drive, Email, Docs, Playstore, dll) baik versi web maupun aplikasi mobile, tapi login nya cukup pakai satu ID saja kan? Nah, auth0 dan Strompathadalah rahasianya.

Untuk bisa terhubung dengan database ini semua menggunakan REST API yang disediakan, dan REST API dapat diakses dengan banyak cara, salah satunya Javascript.

2. Cloud Storage untuk static file

Jika aplikasi memiliki fitur untuk upload gambar profil, atau foto produk, kita menggunakan Amazon S3 sebagai tempat penyimpanannya. Pilihan lainnya, bisa di Firebase, Azure Storage, Dropbox. Dan Cloud Storage juga dapat digunakan untuk menyimpan file JS, logo, dokumen, dll.

Cara upload file ke Cloud Storage salah satunya melalui REST API yang disediakan atau melalui SFTP.

3. Cross Platform IDE

Aplikasi di develop menggunakan IDE/Platform yang bisa save hasil codingan agar berjalan di Android, iOS, Linux, dan Windows. Seperti:

  • MeteorJS, bahasa HTML + CSS + Javascript
  • Scade, IDE menggunakan bahasa Swift
  • Intel XDK, IDE menggunakan bahasa HTML + CSS + Javascript
  • Xamarin, IDE menggunakan bahasa C#

Dan masih banyak lagi pilihannya. Dengan bahasa-bahasa universal tersebut, dengan satu kali coding, aplikasi kita dapat berjalan di Android, Windows, Linux, dan iOS.

4. Middleware server

Salah satu cara komunikasi antara aplikasi ke Serverless Database dan Cloud Storage, adalah melalui REST API. Namun menghubungkan langsung aplikasi yang ada di tangan user ke serverless database, sangat riskan. Oleh karena itu kita memerlukan satu server sebagai middleware.

Begitu juga untuk mengolah / menggenerate data, kita memerlukan sebuah server untuk menjalankan script. Script tersebut biasanya dicoding menggunakan Flask (Python), atau Ruby. Atau bisa juga menggunakanJavascript + NodeJS. Bahasa-bahasa tersebut dipilih karena script lebih cepat dan ringan ketika dieksekusi. [cp/ap]


Nah, kalau dirangkum skill-skill yang harus dimiliki backend programmer saat ini adalah pengetahuan seputar:

Junior Programmer: 

PHP, MySQL, Linux Server & CLI, Javascript, Laravel, Lumen

Senior Programmer: 

PHP, MySQL, Linux Server & CLI, Javascript, Laravel, Lumen, REST API, JSON, Swift, NodeJS, C#, NoSQL, Python atau Ruby

Itu semua sudah lebih dari cukup dan sebagai gerbang untuk membuka dunia backend yang lebih dalam.

Tags: backendmasa kiniprogrammerprogrammer masa kiniskill programmer
Previous Post

8 Tips untuk Menumbuhkan Rasa Saling Percaya Saat Pitching dengan Investor

Next Post

Jangan Hanya di Depan Komputer, Ini Dia Manfaat Berkomunitas untuk Profesi Programmer

Related Posts

Curhatan Perempuan IT Satu-Satunya, Pasti Mengalami Derita Ini

Curhatan Perempuan IT Satu-Satunya, Pasti Mengalami Derita Ini

11 September 2023
1.6k

Kamu perempuan dan anak IT pasti sudah tidak asing hidup dengan dikelilingi banyak laki-laki baik itu di dunia pekerjaan, perkuliahan...

Ini Dia Tips Memulai Pemrograman dengan Python

Ini Dia Tips Memulai Pemrograman dengan Python

29 August 2023
1.4k

Python merupakan salah satu bahasa pemrograman yang populer di dunia kerja Indonesia. Selain itu di ranah akademik pun banyak akademisi...

Manfaat Belajar Bahasa Pemrograman untuk Kehidupan

7 Keterampilan Yang Harus Dimiliki Programmer Untuk 5-10 Tahun Ke Depan

29 August 2023
1.8k

Waktu terus berjalan, begitulah kehidupan. Kita sebagai programmer selalu dituntut untuk mengembangkan keterampilan di saat perkembangan industri TI terus berkembang...

Terpopuler

  • contoh pitch deck

    8 Contoh Pitch Deck Startup yang Bisa Kamu Pelajari

    1341 shares
    Share 536 Tweet 335
  • Apa Saja Fitur Flipper Zero?

    339 shares
    Share 136 Tweet 85
  • Bekerja di Bidang Otomotif, Menjanjikan Penghasilan Besar! Berminat?

    179 shares
    Share 72 Tweet 45
  • Saham Kapal Induk: Apa Itu dan Apa Keuntungannya?

    316 shares
    Share 126 Tweet 79
  • Qlapa Gulung Tikar

    198 shares
    Share 79 Tweet 50
  • Opini – Game Mobile Legend Di Minati Berbagai Kalangan Usia

    120 shares
    Share 48 Tweet 30
  • HP Nokia Edge 2022 Mirip Iphone 13, Cek Harga dan Spesifikasi

    170 shares
    Share 68 Tweet 43
  • Flipper Zero: Menjaga Keamanan Perangkat Elektronik

    141 shares
    Share 56 Tweet 35
  • Kumpulan Materi Kuliah Jurusan Teknik Informatika dan Ilmu Komputer

    463 shares
    Share 185 Tweet 116
  • Ini Dia Mata Kuliah Matematika yang Bermanfaat untuk Lulusan Ilmu Komputer

    167 shares
    Share 67 Tweet 42

About . Contact . Partnership . Google News

Trentech.id adalah situs yang menyajikan konten tentang startup, bisnis, game, event, hingga informasi pekerjaan. Trentech berusaha memberikan konten yang berkualitas untuk para pembacanya agar dapat menjadi rujukan utama mengenai dunia teknologi pada khususnya. Tim trentech terdiri dari orang – orang yang berkompeten dibidangnya, dan akan selalu mendukung karya – karya terbaik anak bangsa dengan memberikan kesempatan seluas-luasnya untuk para startup agar dapat publish karyanya di trentech.

Trentech ID

  • About
  • Contact
  • Partnership
  • Panduan Penulis
  • Privacy Policy
  • Sitemap

Tools

  • Harga Crypto Terbaru
  • Cek Ongkir
  • Cek Resi
  • Cek Domain
  • Login
  • Sign Up
About . Contact . Partnership . Google News

Welcome Back!

Sign In with Facebook
Sign In with Google
OR

Login to your account below

Forgotten Password? Sign Up

Create New Account!

Sign Up with Facebook
Sign Up with Google
OR

Fill the forms below to register

All fields are required. Log In

Retrieve your password

Please enter your username or email address to reset your password.

Log In