Koding.Club

> Artikel

Apakah harus lulus kuliah IT untuk menjadi programmer?

Apakah programmer diperlukan di tempat kerja?

Apa rasanya berkarir di dunia programming?

Cara menjadi programmer yang lebih baik

Skill menyelesaikan masalah

Kamu bisa memilih pekerjaan

Bagaimana cara mendapat pekerjaan sebagai programmer?

Apa tips menulis kode yang lebih bagus dalam sebuah tim?

Membedakan jadwal manager dan programmer

Pekerjaan pertama di dunia programming

Berani berbicara

Saran untuk programmer pemula

Apakah hidup programming hanya koding?


> Lainnya

karir di dunia programming / koding

> Apakah harus lulus kuliah IT untuk menjadi programmer?

Tidak, kamu bisa belajar dari internet (bukan berarti kuliah tidak perlu, tapi tidak harus)

Penulis Framework Django, Adrian Holovaty, belajar computer-science, tapi tidak lulus, ia lulusnya sebagai Jurnalis

Bill Gates (Microsoft) & Mark Zuckerberg (Facebook) juga drop-out dari Harvard

Link

> Apakah programmer diperlukan di tempat kerja?

Di sebuah perusahaan, ada satu departemen (orang yang bekerja di dalamnya ada banyak) yang bertugas untuk menverifikasi data secara manual dari excel, selama 8 jam sehari, 5 hari seminggu. Seorang programmer, menulis script (ngoding) yang melakukan verifikasi data ini secara automatis, cukup menekan satu tombol, 1000 data satu hari bisa diselesaikan satu orang. Apa satu hal di perusahaan kamu yang bisa dibuat automatis? masih berpikir programmer tidak diperlukan di tempat kerja?

Membuat sistem menjadi automatis dibutuhkan di semua tempat kerja, menghemat waktu, menghemat tenaga, semua bidang pekerjaan membutuhkan hal ini.

Link

> Apa rasanya berkarir di dunia programming?

"Saya sebenarnya benci programming, tapi saya cinta menyelesaikan masalah" - Rasmus Lerdorf.

"Bisa punya ide dan membuatnya tersedia untuk jutaan orang" - Drew, DropBox

"Kamu bisa berkumpul dengan teman-teman kamu di asrama, orang-orang biasa yang belum penah membuat perusahaan sebelumnya, dan karya kalian digunakan jutaan orang, itu gila!" Mark, pembuat Facebook.

Link

> Cara menjadi programmer yang lebih baik

Tips dari DHH, David Heinemer Hannson sederhana, tulis banyak program dan baca banyak program. Sebagian besar tidak melakukan kedua hal ini dan bingung kenapa skillnya begitu-begitu saja. Trik sederhana ini bisa disebut "melatih penglihatan". Dengan sering-sering melatih pengelihatan kamu melihat program, mana yang bagus, mana yang tidak, kamu juga akan semakin ahli dalam menulisnya.

Ada library yang kamu suka? lihat source codenya! pelajari, bagaimana semuanya bisa bekerja, punya alternatif yang lebih baik? bisa bikin kodenya jadi lebih mudah dibaca? atau ada yang bisa diperbaiki di kodenya? coba tulis! sekali lagi, baca dan tulis. Selain mengurus efeksiensi kodenya, belajar juga untuk menulis kode yang mudah dibaca untuk orang lain.

Sama seperti menulis buku, setiap tulisan pertama kamu, hanyalah draft, penulis akan kembali membaca, menghapus yang tidak efisien, menambahkan yang perlu dan membuatnya jadi lebih mudah dibaca. Implementasikan cara ini saat menulis program, anggap kode yang kamu tulis pertama hanyalah draft, selalu bisa diperbaiki.

Link

> Skill menyelesaikan masalah

Konon katanya salah satu tujuan programmer diciptakan untuk menyelesaikan masalah yang ada di muka bumi ini.

Skill untuk menyelesaikan masalah perlu terus dilatih, sama seperti ketika kamu mau jago main bola, ngga ada cara lain selain bermain bola, bukan hanya dengan menonton video tutorial bagaimana bermain bola. Cara terbaik untuk melatih skill ini dengan terbiasa menyelesaikan masalah.

Saya masih ingat, tugas-tugas awal di programming, membuat fungsi untuk menebak bilangan itu ganjil atau genap, atau menghubah angka suhu dari celcius ke fahrenheit misalnya. Hal-hal dasar yang akan melatih “otot “ menyelesaikan masalah kita.

Gabungkan dengan teknik “berpikir garis besar” sebelumnya, tahu persis masalah apa yang mau diselesaikan, seperti apa penyelesaiannya di bahasa manusia dan menerjemahkannya ke bahasa program.

Contoh latihan yang bisa kamu lakukan, jika kamu tinggal di kos-kosan, bayangkan kamu harus membuat sistem daftar pembayaran bulanan mahasiswa di kos ini. Gimana kamu akan merancang databasenya? gimana kamu akan membuat programnya untuk digunakan oleh pemilik kos nanti. Masalah yang ada di dunia nyata, pikirikan dan terjemahkan ke kode yang kamu tulis.

Jangan hanya berhayal dan keliling mencari lowongan kerja, berharap suatu hari nanti akan praktek di tempat kerja, praktek sekarang dan pekerjaan akan datang.

Link

> Kamu bisa memilih pekerjaan

Sebagai programmer kamu punya skill seperti lego, yang bisa dipasang-pasang untuk berbagai produk. Pastikan kamu tidak menggunakan skill ini untuk sesuatu yang negatif. Ada website judi, porno dan sebagainya, kamu TIDAK BOLEH ada di barisan ini.

Usahakan untuk melamar di tempat kerja yang memang ingin kamu dukung dan melihat manfaat luas. Ketika perusahaan ini semakin besar, kamu juga akan semakin senang. Kamu punya kekuatan super, kamu bisa memilih, menggunakannya untuk kebaikan, membuat dunia jadi sedikit lebih baik, atau sebaliknya.

Link

> Bagaimana cara mendapat pekerjaan sebagai programmer?

Cara yang sangat jelas adalah melamar kerja. Tapi kita semua tahu itu, dibawah ini beberapa cara yang -tidak jelas-

[1] Bikin portofolio! punya karya-karya yang bisa dilihat oleh perusahaan nantinya. Beri penjelasan apa yang kamu buat, apa tantangannya dan apa yang bisa diperbaiki. Hanya mengandalkan lulus kuliah tanpa pernah betul betul membuat sesuatu tidaklah membantu

[2] Pengalaman bekerja. Walalupun kamu belum pernah bekerja secara langsung di perusahaan, kamu bisa kerja freelance, mengerjakan website untuk organisasi atau usaha lokal di tempatmu. Sambil belajar, sambil mengumpulkan pengalaman. Bergerak, tawarkan jasamu ke usaha-usaha di sekitar.

[3] Pikirkan apa yang bikin kamu beda dari yang lain? Ada banyak lulusan informatika, kenapa kamu beda? ada banyak orang yang melamar kerja, kenapa kamu beda?

Link

> Apa tips menulis kode yang lebih bagus dalam sebuah tim?

Dari Joel Spolsky, founder Trello dan Stackoverflow:

Gunakan source-control : kamu akan pusing ketika bekerja dengan beberapa orang sekaligus tanpa source control

Bikin Database untuk bug: Kumpulkan di post-it ataupun dalam bentuk digital, semua bug yang kamu temukan, jangan harap kamu bisa menghapalkan semua bug. Catat, saat melakukan apa terjadinya, ekspektasi dan bug yang muncul. Sudah ada juga software untuk "bug-tracking"

Tempat kerja yang tenang : pekerja skill akan menghasilkan yang terbaik, ketika masuk ke "zone" atau "flow" saat konsentrasi pada titik yang luar biasa. Hal ini ngga akan datang dengan penuh gangguan.

Bayar bukan masalah : Jangan menyiksa diri (atau tim) kalau kamu bisa membayar sebuah tool untuk memudahkan pekerjaan. Bisa jadi software atau membeli hardware yang bikin lebih produktif

Apakah ada tester? : Setiap program harus ada pengujinya, kalau hanya programmer yang membuatnya sendiri, tanpa ditest oleh orang lain, akan sulit mencari kesalahan.

Ada 12 tips dari Joel disini

Link

> Membedakan jadwal manager dan programmer

Di artikelnya, Paul Graham menekankan kenapa programmer tidak suka dengan meeting yang begitu banyak. Secara umum ada dua jadwal yang perlu diketahui, ada jadwal manager, ada jadwal maker(pembuat sesuatu)

Orang yang beroperasi dengan manager schedule, bisa membagi jadwalnya ke banyak blok dalam sehari dan bisa dengan mudah berubah-ubah. Sementar orang yang berjalan dengan maker schedule, butuh blok yang panjang dan tidak terganggu.

Masalah datang, saat seorang manager (CEO atau product leader) ingin terus meeting membahas sesuatu, padahal jadwal seorang maker (programmer / designer / dkk.) tidak boleh diinterupsi, karena akan mengganggu konsentrasi yang sangat dibutuhkan. Satu meeting bisa mengganggu mood seharian seorang maker. Jadwal ini bekerja untuk masing-masing, tapi tidak ketika dipaksakan bersama.

Pastikan meeting sudah dijadwalkan sebelumnya, atau paling tidak memanfaatkan aplikasi, untuk mengatur jadwal bersama, dimana para maker punya slot waktu yang mereka siapkan, bukan diinterupsi tiba-tiba terus menerus.

Link

> Pekerjaan pertama di dunia programming

Penulis Python, Guido Van Rossum segera melama kerja ketika di kampusnya ada departemen di bagian komputer yang membuka lowongan kerja untuk mahasiswa, ia tahu, ia akan punya akses belajar yang tidak terbatas ketika mendapat pekerjaan ini

Ryan Dahl penulis node.js, mendapat kerjaan pertama bersama temannya mengurus website perusahaan snowboard. Fun fact, dia kuliahnya Matematika dan dropout dari program Ph.D. nya

DHH, penulis Ruby on Rails, mengurus salah satu website untuk komunitas gamer, sampai suatu hari ada perusahaan yang mengontak dhh dan menawarkannya pekerjaan karena ingin memasang tema game di website mereka.

Phil Sturgeon mulai dari umur 11 tahun, saat itu ia mengelola website dengan HTML bernama Gamezone3000 dan memasang link refereal untuk mendapatkan uang.

Kamu bisa mulai dari hobi. Kamu bisa mulai dari freelance (tidak terikat dengan satu kantor). Cari organisasi non-profit di sekitar kamu atau usaha lokal profit pun boleh, tawarkan aplikasi yang bisa membantu usaha mereka.

Sedikit tips: Jadikan rasa ingin tahu (belajar) yang utama saat mencari pekerjaan pertama, bukan sekedar karena uang.

Link

> Berani berbicara

Ketika kamu tidak mengerti suatu tugas, berani mengangkat tangan jangan takut dibilang bodoh dan akhirnya tidak bertanya. Tanya dengan detail apa yang kamu belum pahami.

Martin Fowler mengingatkan untuk para developer jangan hanya diam ketika ada yang salah. Berani bersuara ketika ada "pelanggaran" di software yang kamu tulis. Entah itu memaksa user melakukan hal tertentu, membuat kebiasaan buruk bagi user, menipu atau hal-hal negatif lainnya. Jangan asal ikut perintah, berani menyuarakan pendapat di tempat kerja.

Software itu dari manusia untuk manusia.

Link

> Saran untuk programmer pemula

Punya motivasi kenapa kamu belajar programming, apa yang ingin kamu buat, siapa yang ingin kamu bantu, jadikan ini bahan bakar motivasi.

Cari komunitas (offline ataupun online) untuk mendapatkan feedback dari apa yang kamu buat secara langsung, perlihatkan source code mu, apa yang perlu diperbaiki.

Baca kode orang lain, lihat bagaimana orang-orang menulis kodenya, pelajari kenapa, bertanya langsung kalau memungkinkan.

"Belajar lebih dari satu bahasa program. Sangat luar biasa ketika kamu bisa melihat perbandingan dan kontrasnya bahasa program" - Guido

Jangan lupa belajar research (meneliti). Hampir semua pertanyaan dan jawaban ada di google, baca pendapat orang lain alasan kenapa melakukan hal tertentu, lihat mana yang pas untuk masalahmu.

Kalau kamu bekerja di perusahaan, sangat boleh untuk bertanya ke senior, jangan lupa ceritakan apa yang sudah kamu lakukan sebelumnya. Bukan setiap ada masalah bertanya, tapi jelaskan kamu sudah mencoba A atau B tapi hasilnya tidak sesuai.

Sabar, ngga ada yang instan, orang berskill sangat langka, jadi orang yang langka, yang susah dicari dengan sabar dalam belajar, tidak usah terburu-buru

"Sesuatu yang tidak mungkin hanya butuh waktu yang lebih lama" Ian Hickson - Editor HTML5

Link

> Apakah hidup programming hanya koding?

Tentu tidak 😂😂

Phil Sturgeon, penulis buku APIs You Won't Hate sangat cinta dengan bersepeda! bisa dilihat dari websitenya ini

Adrian, penulis framework Django sangat cinta dengan hobinya bermain musik dan jurnalisme, kamu bisa melihat channel youtubenya yang penuh dengan bermain gitar.

David Heinemeier Hansson, atau yang dikenal dengan DHH, penulis framework RubyOnRails adalah pembalap (dan juara) balap kelas Le Mans & WEC

Link