Bagaimana tidak kelelahan pada sebuah proyek





Halo semuanya! Pada awalnya saya ingin merefleksikan dalam judul itu sesuatu tentang keefektifan pribadi, tetapi kemudian saya dengan tegas menolak gagasan itu. Saya ingin mencatat sebelumnya bahwa ini bukan tentang pencapaian dan pengaturan tujuan yang benar (walaupun ini penting), tetapi lebih tentang pengalaman pribadi dan peristiwa yang membawa saya langsung ke pelukan pertanyaan ini (dan itu terjadi secara spontan). Saya juga akan menyoroti cara-cara dasar untuk menyederhanakan pekerjaan, itu sesederhana dan efektif.



Latar Belakang



Untuk sebagian besar karir pengembangan saya (baik front-end dan full-stack), saya telah memikirkan tugas penting: kinerja kode. Namun, keefektifan pribadi entah bagaimana berada di luar zona minat saya ... Yah, tidak secara langsung sama sekali, tetapi saya tidak tinggal di sana untuk waktu yang lama, jadi pengetahuan saya di bidang ini sampai sekarang sangat, sangat terbatas dan tiba-tiba.



Melewatkan penjelasan yang panjang, saya akan langsung menuju ... Puncak dari cerita saya, yang terjadi musim panas ini. Kebetulan semua bintang yang bisa melakukannya bersatu. Semuanya ada di sana: Saya secara aktif tidak menyukai proyek saya, dan saya juga dipindahkan ke yang baru, yang saya sukai (pada saat itu) bahkan lebih sedikit, "menambahkan" kebahagiaan dan tenggat waktu yang dekat, menambahkan bahan bakar ke api oleh insiden rutin dengan lingkungan lokal, cukup besar masalah dalam kehidupan pribadi saya, pembatalan penerbangan, berkat itu saya terjebak di kota lain, jika Anda menambahkan epidemi di sini, Anda mendapatkan gambaran yang cukup lengkap dan dapat dimengerti. Semua ini mengarah pada fakta bahwa saya mulai terbakar: sulit bagi saya untuk bekerja, sulit untuk melakukan tugas-tugas yang agak sulit, sepanjang waktu saya ingin melarikan diri ke suatu tempat: teh, YouTube, buku, dll. Pada titik tertentu, saya menyadari bahwa saya tidak dapat lagi bekerja (baik, benar sama sekali).Ini bisa dimaklumi, karena semua pekerjaan saya dalam beberapa bulan terakhir ini dibangun di atas paksaan diri: Saya memaksakan diri untuk bekerja. Hasil yang cukup logis.



Cara yang jelas untuk keluar dari situasi ini adalah mencoba mengubah proyek atau pergi berlibur. Tapi, pertama, itu tidak terjadi secara instan, dan kedua, saya tidak tahu berapa lama saya akan bertahan setelah liburan atau mengerjakan proyek baru. Kemudian dia bertanya pada dirinya sendiri pertanyaan: apa yang sebenarnya saya inginkan? Ternyata tidak ada yang bisa diprogram (luar biasa). Misalnya, minum teh (saya bertanya-tanya bagaimana orang lain menjawab pertanyaan ini, menemukan diri mereka dalam situasi yang sama, tetapi mungkin kita tidak akan pernah tahu). Dan saya berkata kepada diri saya sendiri, "Oke, saya akan minum teh, tapi pertama-tama saya akan melakukan sesuatu." Dan ini adalah poin yang sangat penting, mencoba memahami apa yang dapat saya lakukan dalam kondisi seperti itu, saya mulai membagi tugas menjadi tugas mikro dan memotong tugas yang tidak perlu. Kedengarannya sederhana dan logis, terlebih lagi, ini adalah dasar-dasar desain. Namun, nyatanya, tidak semuanya begitu indah. Dalam proses menyelesaikan tugas,kami masih melihat tugas sebagai sejenis monolit, meskipun mungkin telah dipecah menjadi komponennya sebelumnya. Selain itu, kami terus-menerus mengajukan ratusan pertanyaan berbeda, dan apa yang akan terjadi jika ini terjadi (misalnya, jawaban dengan kesalahan datang dari server).



Sampai sejauh mana menyederhanakan tugas



Saya membagi masalah tidak menjadi modul independen, tetapi sampai mereka menjadi dasar dan berhenti menyebabkan saya penolakan internal. Secara umum, mungkin terdengar seperti ini:



  1. Buat rintisan komponen dengan antarmuka dasar
  2. Hubungkan dia
  3. Tambahkan markup
  4. Transfer data nyata
  5. Tambahkan gaya
  6. Tulis tes


Jika sulit, maka langkah-langkah ini dapat disempurnakan, atau komponen dapat dikembangkan menjadi beberapa bagian. (Bagaimana Anda melakukannya?)

Selanjutnya, saya ingin menarik perhatian pada tiga prinsip penting:



Membagi tugas menjadi SD



Dalam kasus saya, tahap awal terlihat seperti ini:



  1. Stub komponen dengan teks mencurigakan
  2. Tambahkan rute untuknya
  3. Periksa apakah dia terhubung
  4. Cari tahu di alamat mana Anda perlu menerima data dari server


Hasil dari keputusan ini:



  • Tugas-tugasnya dasar, bahkan dalam keadaan ini saya melihatnya dengan sedikit lega, bukan jijik.
  • Lebih mudah untuk berkonsentrasi pada tugas-tugas seperti ini.
  • Juga mengurangi tingkat stres (saya tidak memaksakan diri, dan tugasnya tidak terlalu menakutkan)


Memfokuskan perhatian pada rentang subtugas yang sempit



  • Lebih sedikit waktu yang dihabiskan untuk subtugas
  • Lebih sedikit sumber daya otak yang dihabiskan
  • Hasilnya, tugas itu sendiri selesai lebih cepat.


Waktu terbatas untuk satu iterasi



  • Saya dapat dengan mudah setuju dengan diri saya sendiri bahwa sekarang saya akan bekerja selama 15 menit, dan kemudian saya akan beristirahat sejenak selama 5 menit. Sementara meyakinkan diri sendiri (mulai) bekerja sepanjang hari akan lebih sulit dan membuat frustrasi


Mari kita simpulkan



Agar tidak menyia-nyiakan waktu saya sendiri dan orang lain, saya akan berusaha melakukannya secepat mungkin:



  • Pekerjaan tidak lagi membuat saya stres
  • Saya tidak terlalu lelah di penghujung hari
  • Kinerja telah meningkat dibandingkan dengan nilai non-stres: sebelumnya tugas untuk 3 poin cerita + tes menulis membutuhkan waktu 2 hari, sekarang ternyata tidak lebih dari satu setengah
  • Pendekatan yang lebih profesional adalah dengan menggunakan pengatur waktu. Saya ingin berbicara tentang kesuksesan saya (dan kegagalan, di mana saya bisa melakukannya tanpa mereka) dalam memperkenalkan teknik tomat di lain waktu.



All Articles