Saya melihat beberapa pengembang baru masuk ke pekerjaan dan segera merasa tidak mampu. Saya melakukan hal yang sama di awal karir saya. Saya pikir setidaknya ada dua masalah utama yang perlu diatasi oleh kebanyakan orang pintar: persepsi waktu dan kemampuan alami mereka sendiri.
Persepsi Waktu Orang
pintar terbiasa memecahkan masalah dengan relatif cepat. Saya ingat terperanjat ketika harus menghabiskan satu jam untuk satu masalah kalkulus. Menghabiskan 60 menit untuk suatu masalah bukan apa-apa lagi. Hari-hari itu sudah berakhir ... mengubur mereka dan mengucapkan selamat tinggal. Kompleksitas dan ukuran sebagian besar perangkat lunak saat ini keterlaluan. Orang tidak mengerti semua alat yang harus mereka gunakan untuk menyelesaikan sesuatu lebih lama. Salah satu orang penting dari bahasa JavaScript, Douglas Crockford berkata,
"Misapplication of standard tools...is the new standard."
Tidak ada cukup waktu di dunia untuk mempelajari semua alat dev.
Kemampuan Alami
Kecerdasan Anda, kemampuan memecahkan masalah dan keterampilan alami membuat Anda masuk ke dalam seluruh pertunjukan pengembang. Tidak ada ruang untuk hal lain di bidang ini. Jadi apa yang Anda lakukan dengan 100.000 baris kode, bahasa, dan kerangka kerja yang hampir tidak Anda kenal, pola desain dan paradigma orang-orang mendorong Anda, orang-orang yang tahu sebagian besar seperti punggung tangan mereka, pelanggan yang menginginkannya kemarin, dan bos siapa yang mengharapkan dunia Anda? Freak out karena kemampuan alami Anda gagal.
Ya itu normal. Saya masih panik dengan beberapa barang yang dibuang ke arah saya.
Apa yang bisa dilakukan?
Saatnya untuk meningkatkan kemampuan alami itu dengan kerja keras kuno yang baik. Berusahalah memecah masalah menjadi beberapa bagian yang lebih kecil. Dan sadari bahwa tidak seperti banyak hal yang mungkin telah Anda lakukan di masa lalu, masalah ini membutuhkan banyak waktu untuk diselesaikan. Jadi jangan menyerah setelah hanya 15 menit memeriksa masalah yang kompleks. Alih-alih, pecahkan masalahnya dan berhenti menonton jam. Setelah beberapa saat, 30 menit bekerja dengan masalah sebenarnya tidak seperti dulu.
Percaya diri memainkan peran besar dalam kemampuan seseorang untuk memerintah sendiri. Begitu juga tim, terutama senior yang lebih berpengalaman. Adalah baik untuk berhati-hati agar tidak merusak barang-barang, tetapi ini tidak berarti Anda perlu mengajukan banyak pertanyaan.
Sebagai gantinya, gunakan kontrol sumber. Selama Anda tidak melakukan perubahan, Anda tidak dapat merusak produk utama dan membuat pengembang lainnya marah. Juga, buat perubahan yang bisa Anda pahami dan uji dan pastikan untuk mengujinya dengan baik sebelum checkin.
Saya bahkan punya proyek uji kecil yang saya gunakan untuk menulis satu kali, program sederhana jadi saya tidak perlu khawatir tentang semua yang terjadi di aplikasi utama.
Akhirnya, ingatlah bahwa setiap keputusan disertai dengan tingkat memberi dan menerima. Tidak ada langkah maju tanpa membuat semacam pengorbanan di tingkat tertentu. Jangan berjuang untuk kesempurnaan, berjuang untuk kedahsyatan dan memperhatikan tindakan Anda. Karena Anda selalu harus siap menerima kritik dan menjelaskan ide-ide Anda dan mengapa Anda membuatnya. Banggalah dengan keputusan yang Anda buat. Bahkan ketika mereka salah ada banyak yang harus dipelajari.