Delapan kesalahan yang saya buat saat masih muda

Pada awal karier pengembang, sering kali menakutkan: Anda menghadapi masalah yang tidak dikenal, Anda harus belajar banyak dan harus membuat keputusan yang sulit. Dan dalam beberapa kasus, kita keliru dalam keputusan ini. Ini sangat alami, dan Anda tidak boleh menggigit diri sendiri tentang hal ini. Namun yang patut dilakukan adalah mengingat pengalaman Anda untuk masa depan. Saya adalah pengembang senior yang melakukan banyak kesalahan sekaligus. Di bawah ini saya akan berbicara tentang delapan yang paling serius dari mereka yang saya lakukan ketika saya masih pemula dalam pengembangan, dan saya akan menjelaskan bagaimana mereka dapat dihindari.



Mengambil hal pertama yang ditawarkan


Ketika Anda belajar menulis kode sendiri atau menyelesaikan studi di universitas, mendapatkan pekerjaan pertama dalam bidang spesialisasi menjadi salah satu tujuan utama. Sesuatu seperti cahaya di ujung terowongan yang panjang.

Dan mencari pekerjaan, sementara itu, tidak mudah. Ada semakin banyak orang yang melamar lowongan junior. Kita harus menyusun resume yang mengagumkan , menjalani serangkaian wawancara, dan seringkali seluruh proses ini sangat tertunda. Mengingat semua ini, tidak mengherankan bahwa tawaran pekerjaan apa pun menyebabkan keinginan untuk melekat padanya dengan kedua tangan.

Namun ini mungkin merupakan ide yang buruk. Pekerjaan pertama saya jauh dari ideal, baik dalam hal pertumbuhan profesional, maupun dalam hal kesenangan proses. Para pengembang dipandu oleh moto "dan itu akan terjadi", dan itu tidak lazim untuk khususnya tegang. Semua orang berusaha saling menyalahkan, dan saya sering harus mengambil jalan pintas untuk memenuhi tenggat waktu yang sangat ketat. Tetapi bagian terburuknya adalah saya belum belajar apa-apa.

Pada wawancara, saya melewatkan semua panggilan melewati telingaku, jadi saya terpesona oleh prospek mendapatkan pekerjaan. Jika ada keraguan muncul, mereka semua terbang keluar dari kepalaku begitu aku mendengar bahwa mereka membawaku! Ya, untuk gaji yang bagus!

Dan itu adalah kesalahan besar.

Pekerjaan pertama sangat penting. Ini memberikan gambaran umum tentang bagaimana rasanya menjadi seorang programmer sejati, dan pengalaman serta pelatihan yang Anda dapatkan darinya dapat meletakkan dasar bagi seluruh karir masa depan Anda. Oleh karena itu perlu mencari tahu segala sesuatu tentang lowongan dan majikan sebelum menyetujui. Pengalaman sulit, mentor buruk - Anda pasti tidak membutuhkan ini.

  • Cari informasi perusahaan. Pergi ke situs dengan ulasan, lihat situs resmi, hanya berselancar di Internet dan mengumpulkan ulasan. Dengan cara ini, Anda akan lebih memahami apakah perusahaan memenuhi kebutuhan dan tujuan Anda.
  • Tanya temanmu. Jika seseorang di lingkaran Anda telah bekerja untuk majikan ini atau mengenal seseorang di negara bagian tersebut, bicarakan langsung dengan mereka. Cari tahu apa yang mereka sukai, apa yang tidak mereka sukai, dan bagaimana mereka secara umum menghargai pengalaman itu.

Saya tidak mengajukan pertanyaan yang tepat di wawancara.


Wawancara adalah kesempatan terbaik untuk mengenal perusahaan lebih dekat, jadi pastikan untuk mendapatkan pertanyaan tentang apa yang ingin Anda ketahui dari karyawan. Berikut adalah beberapa contoh:

  • Tanyakan tentang proses pengembangan (metodologi apa yang mereka ikuti? Apakah ada inspeksi kode? Strategi percabangan apa yang diterapkan?)
  • Tanyakan tentang pengujian (tes apa yang dilakukan? Apakah ada orang khusus yang hanya terlibat dalam pengujian?)
  • Tanyakan tentang budaya perusahaan (seberapa informal segalanya? Apakah ada dukungan untuk junior?)

Bimbang pada lintasan pergerakan


Tidak diragukan lagi, jalan untuk menjadi pengembang yang berpengalaman sangat berliku. Sekarang dimungkinkan untuk memilih dari banyak bahasa, kerangka dan alat. Kesalahan saya di awal karir saya adalah saya mencoba menguasai segalanya. Ironisnya, ini hanya mengarah pada fakta bahwa saya tidak benar-benar maju dalam hal apa pun. Pertama saya meraih Java, lalu JQuery, lalu pindah ke C #, dari itu ke C ++ ... Alih-alih memilih satu bahasa dan melemparkan semua kekuatan saya padanya, saya melompat dari kelima ke kesepuluh, hanya dengan mood. Saya dapat meyakinkan Anda, ini adalah skema pelatihan yang sangat tidak efisien.

Saya akan mencapai hasil yang lebih baik dan akan naik tangga karier jika saya segera memutuskan lintasan, yaitu, seperangkat teknologi tertentu, dan fokus pada mereka. Misalnya, jika Anda adalah pengembang front-end, pelajari JavaScript, CSS / HTML, dan semacam kerangka pilihan Anda. Jika Anda melakukan backend, sekali lagi, ambil satu bahasa dan pelajari dengan benar. Anda tidak harus memiliki Python, Java, atau C #.

Jadi fokus, putuskan arahnya dan buat rencana yang akan memungkinkan Anda untuk menjadi seorang profesional di jalur yang dipilih (berikut adalah peta jalan yang dapat membantu Anda dengan ini).

Kode canggih


Jadi, Anda sedang mempersiapkan tes untuk menunjukkan kepada atasan Anda keterampilan Anda, atau Anda telah mengambil tugas pertama di pekerjaan pertama Anda. Anda pergi keluar dari jalan Anda untuk membuat kesan. Apa cara terbaik untuk mencapai hasil? Mungkin, untuk menunjukkan selama pelaksanaan teknik menipu yang baru saja Anda kuasai, kan?

Tidak. Ini adalah kesalahan serius yang saya buat sendiri, dan lebih sering daripada yang ingin saya lihat dalam karya junior lainnya. Sangat umum bagi mereka untuk menemukan kembali roda atau mencari solusi kompleks dalam upaya memamerkan pengetahuan.

Pendekatan terbaik untuk menulis kode dinyatakan dalam prinsip KISS . Berjuang untuk kesederhanaan, Anda mendapatkan kode yang dapat dimengerti yang akan mudah digunakan di masa mendatang (pengembang yang datang untuk menggantikan Anda akan menghargainya).

Lupa bahwa ada kehidupan di luar kode


Jangan pernah "memutuskan hubungan" adalah kebiasaan buruk, yang saya dapatkan sejak dini. Ketika saya pulang ke rumah pada akhir hari, saya secara teratur membawa laptop yang berfungsi dan menghabiskan waktu berjam-jam di belakang untuk menutup tugas atau memperbaiki bug, meskipun keduanya bisa menunggu sampai pagi. Seperti yang diharapkan, rejimen seperti itu menyebabkan stres dan saya cepat lelah.

Bagian dari alasan perilaku ini adalah keinginan saya untuk melakukan segalanya secepat mungkin. Tetapi pada kenyataannya, saya seharusnya mengerti bahwa pekerjaan adalah proses jangka panjang dan, dengan pengecualian langka, ketidaksempurnaan saat ini dengan tenang diteruskan ke hari esok. Sangat penting untuk secara berkala beralih dan mengingat bahwa hidup tidak terbatas pada pekerjaan - ada teman, keluarga, hobi, hiburan. Tentu saja, jika Anda suka duduk sebelum fajar atas kode - demi Tuhan! Tetapi ketika ini bukan lagi kesenangan, berhentilah dan pikirkan apakah sudah waktunya untuk melakukan hal lain. Kami tidak bekerja di hari terakhir!

Hindari mengatakan: "Saya tidak tahu"


Terjebak dalam proses penyelesaian masalah atau menyelesaikan tugas adalah hal biasa, bahkan senior yang paling senior pun dihadapkan pada hal ini. Ketika saya masih junior, saya berkata: "Saya tidak tahu" lebih jarang daripada seharusnya, dan ini salah. Jika seseorang dari manajemen mengajukan pertanyaan kepada saya, tetapi saya tidak tahu jawabannya, saya mencoba membiarkan kabut masuk, alih-alih hanya mengakuinya.

Tampaknya bagi saya, jika saya berkata: "Saya tidak tahu," orang akan mendapat kesan bahwa saya tidak mengerti apa yang saya lakukan sama sekali. Sebenarnya, ini sama sekali tidak benar, tidak ada yang maha tahu. Karena itu, jika Anda ditanya tentang sesuatu yang tidak Anda ketahui, katakan demikian. Pendekatan ini memiliki beberapa keunggulan sekaligus:

  • Ini jujur ​​- Anda tidak menyesatkan si penanya
  • Ada kemungkinan mereka akan menjelaskan kepada Anda dan kemudian Anda akan belajar sesuatu yang baru
  • Ini dihormati - tidak semua orang bisa mengakui bahwa dia tidak tahu sesuatu

Terburu-buru untuk maju


Anda mungkin mendengar pepatah: "Sebelum Anda berlari, belajarlah untuk berjalan." Ini jauh lebih relevan daripada di bidang pemrograman web. Ketika Anda pertama kali mendapatkan diri Anda di suatu tempat sebagai junior, Anda hanya ingin mengambil banteng tanduk dan segera memulai beberapa proyek besar dan kompleks. Bahkan pikiran tergelincir tentang cara cepat mendapatkan kenaikan gaji ke tingkat berikutnya!

Ambisi tentu saja bagus, tetapi dalam kenyataannya tidak ada yang akan memberikan hal seperti ini kepada seorang junior dari ambang pintu. Di awal karir Anda, kemungkinan besar Anda akan mendapatkan tugas-tugas sederhana dan memperbaiki bug. Bukan aktivitas yang paling menyenangkan di dunia, tetapi ke mana harus pergi. Ini akan memungkinkan Anda untuk terbiasa dengan basis kode langkah demi langkah dan mempelajari semua proses. Namun, atasan Anda mendapat kesempatan untuk melihat bagaimana Anda masuk ke dalam tim dan apa yang Anda lakukan terbaik.

Kesalahan saya adalah bahwa saya kesal pada tugas-tugas kecil ini dan itu mengalihkan perhatian saya dari pekerjaan. Bersabarlah, lakukan apa pun yang Anda minta nurani, dan segera sesuatu yang lebih menarik akan datang kepada Anda.

Tidak termasuk dalam komunitas dan tidak membuat koneksi


Pengembang memiliki komunitas yang hebat: mereka selalu siap membantu, memberikan umpan balik, dan bahkan menghibur. Pemrograman adalah hal yang rumit dan terkadang sangat melelahkan. Bagi saya, periode bekerja sebagai junior akan lebih mudah jika saya mulai aktif berkomunikasi dengan kolega sejak awal.

Berkomunikasi dengan masyarakat juga sangat berguna untuk pendidikan mandiri. Anda dapat memberikan kontribusi untuk proyek sumber terbuka, mempelajari kode orang lain, mengamati bagaimana pemrogram memimpin proyek bersama. Semua ini adalah keterampilan yang dapat Anda gunakan di pekerjaan utama Anda dan yang seiring waktu akan menjadikan Anda seorang spesialis yang baik.

Pilih komunitas yang menarik minat Anda - saya dapat menyebutkan freeCodeCamp, CodeNewbies, 100DaysOfCode di antara opsi - dan ikut terlibat! Anda juga dapat mengunjungi demonstrasi lokal di kota Anda (search meetup.com).

Akhirnya, dengan cara ini Anda dapat menumbuhkan koneksi profesional. Sebenarnya, komunikasi hanyalah orang-orang di industri Anda yang dengannya Anda berkomunikasi. Mengapa ini dibutuhkan? Nah, katakanlah Anda suatu hari nanti ingin berganti pekerjaan. Jika Anda beralih ke kontak Anda, seseorang mungkin memberi tahu Anda tentang lowongan yang cocok, atau bahkan merekomendasikan Anda kepada majikan Anda. Ini akan memberi Anda keuntungan yang signifikan dalam wawancara - sepatah kata sudah disiapkan untuk Anda, Anda tidak lagi "resume dari tumpukan".

Itu saja, terima kasih sudah menonton!

Source: https://habr.com/ru/post/id447854/


All Articles