Pada pekerjaan saat ini saya memiliki dua proyek untuk dikerjakan. Pertama adalah sistem yang sangat besar dan yang kedua lebih kecil tetapi juga besar (proyek pertama sedang dikembangkan selama 12 tahun, kedua selama 4 tahun).
Awalnya saya hanya mengerjakan proyek pertama dan mencoba membiasakan diri. Kemudian saya dipindahkan ke proyek kedua dan mencoba di sana, sehingga pengetahuan saya tentang proyek pertama menjadi teduh. Sekarang saya harus mengerjakan kedua proyek secara bersamaan.
Ini sangat sulit bagi saya karena meskipun mereka berdua menggunakan java, mereka menggunakan kerangka kerja yang berbeda dan jumlah kode dan logika bisnis untuk dipahami sangat besar sehingga saya benar-benar tidak dapat menahan kedua proyek itu di kepala saya.
Apakah ini normal dan saya harus terbiasa dengannya, meskipun keahlian saya menjadi sangat licin, apa yang tidak akan terjadi jika saya hanya bekerja pada satu proyek? Atau haruskah saya menyampaikan kekhawatiran atau mungkin berganti majikan?
Jawaban:
Saya sepenuhnya tidak setuju ketika orang mengatakan "ya, multi-tasking adalah normal"
Itu tidak normal! Tidak sama sekali, sangat tidak wajar bagi pengembang untuk melakukan banyak tugas di beberapa proyek (saya akan menjelaskan lebih lanjut nanti). Di sisi lain multi-tasking sangat umum di kalangan pengembang. Ini pasti sesuatu yang Anda harus terbiasa. Jadi jawaban sebenarnya untuk pertanyaan Anda adalah: bagaimana melakukan multi-tugas?
Pertama-tama, Anda tidak boleh hanya menerima nasib Anda karena "Anda adalah karyawan yang luar biasa" dan itu berarti Anda harus mengambil lebih banyak tugas daripada yang bisa Anda tangani. Tidak sama sekali, kamu tidak. Terkadang orang diberikan banyak tugas karena tidak ada orang lain. Kadang-kadang manajer tidak bisa menangani pekerjaan mereka sehingga mereka mendelegasikan, menegakkan multi-tasking di tim mereka karena mereka tidak bisa menangani jadwal proyek mereka dengan benar. Jadi, Anda harus mencoba menentukan apakah Anda diminta mengerjakan banyak tugas karena itu bagian dari pekerjaan Anda atau karena orang lain tidak kompeten. Apa pun itu, Anda dapat menilai sendiri apakah itu dapat diterima atau tidak. Jika Anda tidak nyaman [dengan pekerjaan Anda], ada tempat-tempat lain yang bisa Anda cari pekerjaan. [Kamu, pengembang, adalah komoditas. Pengusaha tahu ini dan berdoa agar Anda tidak pernah menyadarinya.]
Sekarang tentang multi-tasking, saya tidak setuju 100% ketika orang mengatakan "ya, cukup bolak-balik dan pastikan Anda melakukan jumlah yang sama pada setiap proyek". Maaf tapi itu saran yang sangat buruk.
Pertama, Anda harus menyadari bagaimana otak Anda bekerja ketika Anda sedang mengembangkan perangkat lunak (Saya tahu ada tugas lain yang terlibat tetapi mari kita fokus pada yang satu itu). Pertama-tama Anda perlu "terhubung", artinya Anda harus banyak berkonsentrasi dan memusatkan pikiran pada posisi di mana Anda memiliki segalanya yang terpetakan di kepala Anda. Semua nama variabel dan metode, alur kerja kode Anda, model objek, utas berjalan berdampingan, semuanya. Biasanya saya membutuhkan waktu 15 mungkin 20 menit untuk mendapatkan "di zona".
Ketika Anda mencapai kondisi itu, Anda benar-benar terbang dan menulis kode seperti sedang mengendarai sepeda. Saat Anda terganggu, Anda bisa kehilangan semuanya. Jika interupsi cukup lama (5, 10, mungkin 30 menit), Anda akan kehilangan akal sehat dan harus memulai dari awal.
Jadi multi-tasking mengerikan karena memaksa Anda untuk meninggalkan "zona" dan beralih ke sesuatu yang lain. Jika Anda terus-menerus beralih itu berarti Anda tidak produktif karena setiap kali Anda beralih ke tugas / proyek baru, Anda perlu kehilangan 15-20 menit untuk masuk ke zona itu lagi (tidak menyebutkan itu melelehkan otak Anda perlahan-lahan).
Ini seperti multi-threading: pada titik tertentu biaya mengganti konteks utas setiap siklus terlalu tinggi sehingga CPU akhirnya menghabiskan lebih banyak waktu untuk mengubah konteks daripada menjalankan tugas nyata.
Saya sangat merekomendasikan membaca artikel dari Joel Spolsky tentang masalah ini:
http://www.joelonsoftware.com/articles/fog0000000022.html
Jadi saran saya adalah: cobalah belajar bagaimana (bukan) multi-tugas karena itu memang biasa. Tetapi juga pastikan Anda nyaman melakukannya. Beberapa orang dapat mengambil lebih banyak waktu untuk berkonsentrasi dan akan lebih menderita daripada yang lain ketika melakukan banyak tugas; dan itu juga ok. Bukan karena itu umum bahwa itu harus dianggap normal.
Joel mengatakannya dengan baik ketika dia berkata:
sumber
Ya, itu sudah diduga. Dan disambut.
Ada beberapa cara untuk melihatnya:
Anda diharapkan melakukan banyak tugas dan hampir tidak mungkin untuk fokus. Ini menghasilkan proses rekayasa sub-optimal, kebingungan sesekali ketika Anda bolak-balik, perasaan dieksploitasi, frustrasi, stres, dll. Ini semua negatif, tentu saja; namun,
Anda dipercaya oleh banyak proyek, yang mencerminkan dengan baik hasil yang Anda hasilkan dan kepercayaan yang dimiliki majikan Anda dalam kemampuan Anda. Ini adalah kesempatan untuk menunjukkan kepada mereka bahwa kepercayaan itu dijamin.
Saran saya adalah untuk mengembangkan penilaian yang bijaksana tentang tugas mana yang membutuhkan perhatian langsung Anda dan mana yang bisa menunggu. Terkadang jawabannya adalah tidak ada yang bisa menunggu dan Anda perlu mengambil pendekatan kreatif untuk memberikan hasil (sedikit untuk proyek A, kemudian sedikit untuk proyek B, lalu bilas dan ulangi). Kembangkan keterampilan untuk berkembang dalam situasi seperti ini.
Biasanya (meskipun tidak selalu), ini akan dihargai dengan lebih banyak tanggung jawab, lebih banyak proyek untuk menyulap, dan lebih banyak harapan. Pada titik tertentu Anda akan dapat, dan diharapkan, untuk mendelegasikan beberapa pekerjaan ini. Ini adalah ukuran kesuksesan.
Jadi, bahkan jika keterampilan juggling Anda yang sedang tumbuh hanya dieksploitasi oleh perusahaan Anda saat ini, ini adalah keterampilan yang baik untuk dimiliki dan akan melayani Anda dengan baik dalam karier Anda.
Untuk apa nilainya, saya biasanya bekerja pada proyek besar, yang lebih kecil, pemeliharaan dan dukungan proyek lama, dan mengelola setidaknya satu yang lain. Ini membuat frustrasi, membingungkan, melelahkan, dan saya sangat berterima kasih.
sumber
Iya nih! Itu benar-benar "normal" / biasa ketika Anda bekerja di perusahaan jasa xD
Juga jika Anda berkolaborasi dengan proyek sumber terbuka, itulah aturannya
Mungkin tidak dan keadaan ideal, tetapi roti sehari-hari.
sumber
Itu biasa. Tapi itu tidak baik, karena alasan yang telah Anda uraikan. Mengubah konteks makan menjadi produktivitas, jadi jika Anda bisa, cobalah bekerja pada satu proyek untuk banyak waktu, misalnya sehari.
sumber
Saya aktif mengerjakan 2 hingga 3 proyek berbeda setiap hari. Dan pertahankan beberapa lusin lagi. Beberapa minggu ini menjadi sedikit luar biasa. Beberapa proyek sangat besar, ada yang sangat kecil mereka diberi kode dalam beberapa hari dan jarang membutuhkan perubahan. Ini bervariasi, tetapi membuat saya tetap terpapar pada berbagai cara berpikir dan memecahkan masalah, berbagai teknologi, dan area bisnis. Saya menikmatinya.
Jadi, untuk menjawab pertanyaan Anda, ya, itu sangat umum.
sumber
Lihat artikel berjudul Multitasking yang Membuat Anda Nanti . Grafik ini menceritakan kisahnya:
Dengan kata lain, perusahaan membuang-buang waktu dengan meminta pemrogram mereka mengerjakan lebih dari satu proyek pada satu waktu. Dengan hanya tiga proyek, pemborosannya adalah 40%! Sisa waktu dibagi menjadi tiga proyek.
Alasan untuk multitasking sering dinyatakan sebagai "menyelesaikan lebih banyak hal". Tapi itu alasan yang salah. Multitasking hanya menghasilkan penundaan semua rilis. Gambar ini menunjukkan efek tugas ganda vs menyelesaikan satu proyek pada satu waktu:
(Gambar mengabaikan overhead sepenuhnya. Pada kenyataannya waktu yang terbuang akan membuat kedua proyek 20% kemudian.)
sumber
Itu tergantung pada perusahaan. IMO sangat diharapkan untuk hanya bekerja pada satu proyek saja, tetapi itu seringkali tidak mungkin, terutama dengan perusahaan kecil.
Tentu saja, perbaikan bug dll. Selalu dapat terjadi dengan proyek apa pun.
sumber
Ya, dalam pengalaman saya itu normal (bahkan jika beberapa 'proyek' sangat mirip, misalnya proyek pemeliharaan dan fitur pada produk yang sama). Untuk menghindari konflik dan harapan yang tidak realistis, sepakati dengan manajer proyek dan manajer Anda untuk mengalokasikan fraksi tertentu dari waktu Anda untuk setiap proyek (misalnya tiga hari di proyek X, dua di proyek Y per minggu). Anda biasanya dapat mendistribusikan alokasi tersebut sesuka Anda, mis. Senin-Rabu di X, Kamis-Jumat di Y.
Kadang-kadang akan ada saat-saat ketika satu proyek "melempar pengecualian" dan perlu dikerjakan sekarang . Ada dua hal yang harus dilakukan di sini:
sumber
Jika Anda merasa sulit untuk kembali dengan kecepatan dengan kerangka kerja proyek atau logika bisnis ketika Anda kembali ke sana, Anda harus mengambil kesempatan untuk menulis sebanyak mungkin dokumentasi saat Anda mengerjakannya. Dengan merinci bagaimana sistem yang kompleks bekerja, dengan kata-kata Anda sendiri, akan membuatnya lebih mudah untuk kembali ke proyek nanti. Selain itu, dokumentasi ini dapat bermanfaat bagi rekan kerja Anda jika mereka perlu membantu.
Jika proyek sudah memiliki cakupan yang baik dari dokumentasi teknis, masih bisa bermanfaat untuk menuliskan pemikiran Anda saat Anda sedang mengerjakan area yang rumit. Dengan begitu, Anda dapat menangkap proses pemikiran Anda saat berikutnya Anda kembali.
sumber
Yah itu seharusnya tidak normal tetapi saya memiliki banyak proyek di pundak saya di tempat kerja saya saat ini. Aku perlu membiasakan diri. Kiat paling penting yang bisa saya berikan adalah untuk selalu memprioritaskan pekerjaan Anda. Paksa atasan Anda untuk memberi tahu Anda apa tugas prioritas dan kerjakan saja itu. Jangan berikan tekanan dari siapa pun yang mengeluh tentang proyek Anda yang lain. Anda belum perlu memperbarui resume Anda, tetapi pastikan beban tidak meningkat melebihi sesuatu yang dapat Anda tangani secara wajar.
sumber
Saya pikir itu normal. Cara kerja saya sekarang (saya di sebuah perusahaan dengan sekitar 40 pengembang, total ukuran perusahaan sekitar 700). Dan saya biasanya memiliki satu proyek "jangka panjang" dengan banyak tiket kecil / cacat yang muncul sehingga biasanya berakhir menjadi 50% tiket kecil dan 50% bekerja pada proyek jangka panjang. Apa yang bisa sulit adalah bahwa gangguan konstan dapat memperlambat dan menggagalkan proyek jangka panjang ..
sumber
Saya pikir itu normal untuk bekerja pada banyak proyek. Kuncinya adalah untuk menerima bahwa Anda akan menghadapi beberapa ambiguitas dalam hal gambaran keseluruhan sistem pada awalnya.
Jika Anda berusaha untuk mendapatkan gambaran yang lebih besar, Anda akan mendapatkan kejelasan dan dapat melihat bagian yang bergerak / diperbaiki dalam sistem dan bagaimana perubahan Anda mempengaruhi sistem.
Selama periode waktu Anda akan belajar untuk menemukan pola umum di berbagai sistem yang Anda kerjakan. Ini dapat Anda terapkan pada proyek Anda yang lain yang akan mengurangi jumlah informasi terperinci yang perlu Anda simpan di kepala Anda sekaligus.
sumber
Dalam setiap proyek non-sepele ada lebih dari satu orang yang ditugaskan untuk itu. Ini berarti bahwa Anda perlu berkolaborasi dengan orang lain dan menunggu mereka melakukan pekerjaan mereka, serta mereka harus menunggu Anda.
Alih-alih membuat orang duduk diam, biasanya ada beberapa proyek yang aktif sehingga selalu ada tugas terbuka yang harus dilakukan jika diperlukan.
Anda masih harus bekerja dalam potongan yang cukup besar pada setiap proyek sehingga Anda bisa mendapatkan "di zona" dan menjadi produktif.
sumber
Saya setuju dengan yang mengatakan itu normal / umum.
Lihatlah itu sebagai positif, Anda akan menjadi lebih berguna, terlihat fleksibel, seorang pria yang dapat menyelesaikan sesuatu! Mungkin lebih berharga karena Anda akhirnya mengetahui 2 sistem luar-dalam.
sumber
IMHO, tidak hanya itu biasa, tetapi juga diinginkan.
Pekerjaan pengembangan terburuk yang pernah saya miliki adalah mengerjakan bagian kecil yang sama dari bagian aplikasi yang sama selama berbulan-bulan. Kebosanan. Dan ketika Anda bosan, Anda lepaskan bola ...
sumber
Saya mengerti bagaimana perasaan Anda, sulit untuk membuat pengusaha baru memahami perkembangan yang terlibat, terutama jika Anda pengusaha tidak fokus pada pengembangan.
Masalahnya adalah mereka melihat 3 Pekerjaan sedang dikerjakan bersama-sama lebih dari menghasilkan uang daripada 1 sekaligus, dan statistik menunjukkan 40% penurunan kinerja. Hilangnya laba 40% ..
Saya sebelumnya pernah bekerja untuk orgasisasi yang memungkinkan saya untuk fokus pada 1 proyek besar sekaligus dengan pekerjaan kecil di antaranya, tiket dan dukungan dll. Kami bekerja pada kesepakatan di mana 8: 00-10: 00AM adalah Tiket dan dukungan untuk sistem saat ini yang datang melalui email / telepon / helpdesk kemudian 10:00 - 16:30 atau waktu selesai Anda adalah pengembangan penuh yang solid. Ini bekerja dengan sangat baik, karena kami memiliki meja bantuan untuk menerima telepon dan email, saya dapat melakukan tiket di pagi hari dan mengembangkan sisa hari itu. Masalahnya adalah jika Anda memiliki manajemen yang buruk. Seorang manajer membuat semua ini terjadi, dan tanpa dukungan atau pemahaman mereka tentang tantangan yang Anda hadapi setiap hari, mereka tidak mengetahui fakta tersebut.
Saya telah bersyukur terutama dalam pekerjaan terakhir saya atas dukungan dan pengertian dari manajer saya, itu membuat hidup saya lebih mudah, lebih sedikit stres dan kami masih melakukan SEMUA pekerjaan yang dilakukan ..
Masalah lain adalah, uang cinta Boss, mereka melihat proyek dalam uang, Ketika mereka memiliki 5 Proyek seharga £ 20.000 semua pada saat yang sama (dan Anda adalah pengembang solo) itu £ 100.000 dalam buku. Terlihat bagus di atas kertas tetapi bisa merusak reputasi perusahaan ketika ini tidak terpenuhi, tenggat waktu terlewatkan dan sistem bermasalah karena kurang konsentrasi.
Saya bersimpati sepenuhnya dengan Anda, saya di posisi Anda sekarang.
sumber
Tergantung bagaimana Anda menggambarkan proyek. Biasanya pengembang bekerja dengan beberapa masalah dan jika di perusahaan lebih dari satu produk daripada Anda bekerja dengan banyak.
sumber
Proyek perangkat lunak, seperti mitra cinta, mungkin banyak, dan bagus di banyak, tetapi mereka hanya baik jika satu per satu.
sumber
Menambah apa yang dikatakan @Martin Wickman, cobalah untuk tidak terlalu banyak berganti tugas. Misalnya bekerja AM pada proyek A, PM pada proyek B. Juga mengatakan tidak untuk menambahkan fitur; itu lebih menyakitkan ketika Anda tidak mengerjakan proyek penuh waktu.
sumber