Waktu yang diperlukan untuk memulai pengkodean di perusahaan baru [ditutup]

12

Saya seorang insinyur perangkat lunak selama 4 tahun, dan saya baru saja mengubah perusahaan saya untuk pertama kalinya.

Perusahaan bekerja dengan pemrograman pasangan, dan sudah 3 hari, saya bahkan tidak bisa menulis satu baris kode pun. Ini sangat menyebalkan bagi saya karena saya sangat produktif di perusahaan saya sebelumnya.

Basis kode besar, mereka menggunakan 5-6 bahasa / alat yang saya tidak kenal, seperti rspec, haml, melati dan lain-lain. Tapi tetap saja, aku merasa tidak enak.

Akhir pekan ini saya membuat UML untuk mendapatkan pemahaman yang lebih baik tentang aplikasi ini, tetapi saya masih menduga saya tidak akan bisa menulis jumlah kode yang layak minggu ini.

Apakah ini normal?

Apa pengalaman Anda ketika Anda mengganti pekerjaan, dan masuk ke basis kode besar yang ditulis dengan bahasa / perpustakaan yang tidak Anda kenal.

Tentu saja saya tidak meminta waktu yang tepat diperlukan, tetapi pengalaman masa lalu atau hal-hal untuk membuat prosesnya akan luar biasa.

Btw, saya sudah membaca di bawah pertanyaan & jawaban, Bagaimana Anda menyelam ke basis kode besar?

/programming/215076/whats-the-best-way-to-become-familiar-with-a-large-codebase

/programming/214605/the-best-way-to-familiarize-yourself-with-an-inherited-codebase

MEMPERBARUI

Semua saran bagus! Saya baru saja pulang kerja, saya sudah banyak bekerja!

Tentang pemrograman pasangan:

Umumnya mereka menulis kode, dan saya mencoba untuk tidak ketinggalan satu detik pun! Jika saya mencoba untuk menulis kode, saya tahu itu akan memakan waktu selamanya, karena saya bahkan tidak tahu file mana yang harus saya edit, tetapi di samping itu, seperti yang saya katakan, mereka menggunakan 6-7 bahasa / kerangka kerja yang tidak saya gunakan. terbiasa dengan, dan mempelajari semua sintaks ini sekaligus tidak mudah.

Seberapa baik perusahaan mempersiapkan para insinyur:

Saya tidak bisa mengatakan mereka terorganisir dengan baik, mereka agak mengharapkan saya untuk mulai menulis kode segera.

Mencatat, bersikap proaktif:

Saya selalu mencatat ketika mereka menulis perintah baru / atau apa pun tentang model data. Rekan-rekan saya adalah orang yang sangat cerdas dan baik, dan saya mencoba untuk mengajukan banyak pertanyaan, bahkan terkadang banyak pertanyaan bodoh .

Apakah ini biasa ?:

@ Telastyn, terima kasih atas jawaban Anda, itu membuat saya merasa sedikit lebih baik. Sepertinya masalah saya tidak biasa, tapi saya benar-benar produktif sebelum pekerjaan ini, dan sekarang saya benar-benar merasa tidak berguna dan tidak pintar.

Saya harap saya dapat mulai memecahkan bug / masalah implementasi segera.

Tentang kerangka / bahasa yang mereka gunakan:

Saya benar-benar jujur ​​tentang itu, saya tidak mengatakan saya tahu sesuatu yang sebenarnya tidak saya ketahui. Tetapi saya tidak mengharapkan hal-hal yang jauh berbeda, dan karena saya mulai bekerja pada hari saya menerima tawaran itu, saya tidak punya waktu untuk mempersiapkan diri.

@Southpaw Hare, terima kasih banyak untuk berbagi pengalaman Anda. Anda benar sekali. Tidak ada jaminan bahwa saya akan mempelajari semua hal ini, tetapi saya sedang mencoba. Pada akhirnya, sulit untuk mempelajari semua sintaksis sekaligus, dan saya pikir itu adalah masalah utamanya juga. Karena saya dapat menavigasi dalam kode ruby ​​dengan baik karena saya tahu bahasa itu, dan saya menavigasi dalam kode js terima kasih kepada inspektur browser, tetapi masalahnya adalah menulis kode aktual dengan kerangka / bahasa yang saya tidak tahu.

Robert Johnson
sumber
Karena Anda menyebutkan Bagaimana Anda menyelam ke basis kode besar? , apa yang ada di jawaban yang tidak mencakup kasus Anda?
Agak
3
Karena Anda berpasangan pemrograman, Anda tidak perlu menulis kode untuk menjadi produktif. Anda bisa sangat berguna hanya mengamati orang lain menulis kode. Segera Anda akan cukup tahu untuk mulai menulis kode sendiri.
kevin cline
@ kevincline jika dia berpasangan sebagai pengembang baru, dia harus yakin menjadi orang yang ada di keyboard jika tidak, itu akan menjadi pengaturan pasangan yang sangat buruk ...
Jimmy Hoffa
Jika ini cara perusahaan melakukan sesuatu, Anda benar-benar tidak punya pilihan. Pastikan Anda tahu apa yang mereka harapkan dari Anda ketika saatnya tiba. Mengajukan pertanyaan. Dapatkan umpan balik. Anda bisa membuang banyak waktu jika tidak hati-hati.
JeffO
@JimmyHoffa, saya tahu itu akan lebih baik bagi saya, tetapi dalam hal ini, saya akan banyak memperlambat teman saya. Karena saya harus bertanya setiap sintaks, file aktual yang perlu saya edit, model data atau yang lainnya, itu akan memperlambat rekan saya.
Robert Johnson

Jawaban:

10

Ini tergantung pada hal-hal seperti kompleksitas sistem dan seberapa baik organisasi dipersiapkan untuk bergabung dengan programmer baru. Ini bisa memakan waktu mulai dari 30 menit hingga beberapa minggu. Itu tidak selalu berarti Anda melakukan kesalahan dan Anda seharusnya tidak merasa bersalah karenanya.

Namun, yang harus Anda lakukan adalah bersikap proaktif untuk memperbaikinya sendiri dan orang lain. Beri tahu manajer Anda tentang frustrasi Anda dan bekerja sama untuk mengatasinya dan untuk meningkatkan proses untuk karyawan baru lainnya.

Tulis catatan tentang hal-hal yang Anda perjuangkan, pikirkan cara untuk memperbaikinya atau menyiasatinya, dan dokumentasikan proses Anda. Pertahankan orang lain yang dapat membantu Anda mengetahui perkembangan Anda dan mencari bantuan. Tidak ada yang memalukan dalam meminta bantuan.

Rein Henrichs
sumber
1
Beberapa bulan bukan tidak umum untuk kompleks, besar (1 juta + SLOC), terutama adalah domain juga niche dan / atau kompleks.
mattnz
1
+1: Beberapa perusahaan memiliki mentor yang ditugaskan ke karyawan baru tidak peduli berapa banyak pengalaman yang mereka miliki untuk alasan-alasan ini. Saya selalu payah pada orang yang duduk paling dekat dengan saya yang bersedia membantu dan bertanya kepada mereka TONNES pertanyaan - dan kemudian saya secara terbuka meminta mereka kepada manajer saya / mereka ketika mereka membantu.
Steven Evers
@mattnz Yap. Namun, beberapa bulan hanya beberapa minggu. ;)
Rein Henrichs
5

Apakah ini normal?

Untuk sebagian besar basis kode. Sial, di perusahaan saya Anda bertemu dengan HR selama 2 hari sebelum Anda diizinkan menyentuh komputer. Itu outlier, tetapi pertimbangkan berapa lama untuk mendapatkan pengaturan lingkungan pengembangan, dapatkan sedikit akrab dengan domain, struktur kode, norma tim ...

Sebagai pemimpin tim, saya berharap Anda tidak melakukan apa pun secara efektif selama 1 (dua minggu) sprint, dan bekerja pada ~ 50% untuk 1-2 sprint berikutnya.

Telastyn
sumber
2

berayun ke ekstrim lain .. Saya bekerja di sebuah perusahaan yang hanya memiliki 2-3 bahasa tetapi butuh bagian yang lebih baik dari setahun sebelum programmer dilepaskan pada basis kode, mungkin 1 atau 2 bulan sebelum mereka melakukan baris pertama mereka kode.

Jangan menyalahkan diri sendiri tentang hal itu, jika Anda jujur ​​dalam wawancara tentang kurangnya pengetahuan Anda pada platform ini, mereka tahu apa yang mereka hadapi. Perlu waktu dan waktu tidak dapat diperluas, dipotong pendek atau dikompresi, pastikan Anda memanfaatkannya sebaik mungkin.

Newtopian
sumber
1

Itu benar-benar tergantung pada pekerjaan yang Anda lakukan dan peran Anda.

Jika Anda melakukan pekerjaan berbasis kontrak, Anda diharapkan benar-benar berhasil, menggunakan semua keterampilan yang Anda miliki untuk menyelesaikan pekerjaan. Pekerjaan kontrak umumnya didefinisikan dengan baik dan Anda (biasanya) dapat melakukan ini, setidaknya dalam pengalaman saya.

Di sisi lain, saya sudah mulai di satu tempat yang memiliki basis kode warisan yang sangat besar dengan kurva belajar yang sangat besar. Kami tidak diharapkan untuk menulis kode produksi selama enam bulan pertama kami berada di sana.

Bersabarlah, serap sebanyak mungkin dan gunakan dengan praktis saat Anda mulai membuat kode. Jika Anda rawat inap atau tergesa-gesa, ada peluang bagus dalam sistem sebesar itu sehingga Anda mungkin akan melanggar sesuatu, terutama jika cakupan tesnya tidak brilian.

Sam
sumber
0

Sejumlah waktu sangat normal untuk terbiasa dengan sesuatu yang benar-benar asing - saya tidak akan menyalahkan diri sendiri atau merasa buruk. Namun, penting untuk bersedia menerima kemungkinan bahwa pekerjaan ini mungkin tidak berada dalam keahlian Anda. Ini belum tentu demikian, ada baiknya membiarkan kemungkinan itu terbuka di pikiran Anda.

Masalahnya mungkin bukan pada ukuran basis kode, tetapi pada kenyataan bahwa Anda tidak tahu bahasa yang terlibat. Dalam pengalaman pribadi saya, saya punya pekerjaan di satu perusahaan di mana saya tidak tahu bahasa apa pun yang digunakan dalam basis kode yang agak luas. Sayangnya, saya tidak pernah bisa mempelajari ini cukup setelah 5 bulan atau lebih, dan pergi ke perusahaan lain. Di sana, saya mahir dalam bahasa utama, dan meskipun ukuran basis kode sebanding, saya telah melakukannya dengan cukup baik.

Ketika datang untuk belajar bahasa baru, orang biasanya berpikir itu lebih mudah daripada yang sebenarnya, dan memegang standar tinggi belajar mereka dengan cepat. Mungkin butuh waktu lebih lama dari yang Anda kira, jadi ingatlah itu terlepas dari apa yang Anda putuskan.

Kelinci Southpaw
sumber
2
Beberapa orang berpikir itu lebih sulit daripada yang sebenarnya. Cukup sering karena kepercayaan daripada bakat.
ChaosPandion