Bagaimana Anda bisa memperkenalkan basis kode, yang mungkin agak rumit dan kusut dengan banyak "gotchas," kepada anggota baru tim Anda?
Saya pikir cara termudah adalah dengan membuat arsitektur keseluruhan ditata dengan diagram, dan mengambil beberapa minggu (atau bulan) memberikan orang baru tugas yang didefinisikan dengan baik (dan cakupannya baik) karena ia menjadi lebih terbiasa dengan kode.
Namun, sebagai konsultan (dan karyawan junior, pada saat itu), saya tidak dapat selalu memiliki itu karena keterbatasan waktu atau penunjukan peran tim. (Saya telah mengerjakan proyek khusus ini dua kali lebih lama dari yang lain, jadi "junior" sama sekali tidak "kurang tahu tentang kode / proyek.")
Saya telah ditugaskan beberapa kali sekarang untuk memperkenalkan anggota baru ke proyek dan kode, dan sayangnya setiap kali saya menemukan saya tidak jauh lebih baik daripada yang sebelumnya. Saya suka diagram dan gambar, tetapi sering merasa bahwa mereka tidak cukup memperhitungkan kompleksitas dalam suatu sistem. (Bagaimana dengan semua "gotchas" kecil?)
Proyek ini sampai pada titik di mana kami akan memberikannya kepada klien, dan untuk membuat hal-hal lebih menantang, orang yang saya akan lakukan transfer pengetahuan dengan dasarnya hanya keluar dari perguruan tinggi. (Bukannya aku jauh lebih baik ketika melakukan transfer pengetahuan dengan pengembang senior.)
Saya menghadiri grup pengguna sebulan sekali dan peluang lain ketika mereka muncul, jadi saya tidak terbiasa diperkenalkan dengan topik baru, tetapi merasakan kemampuan saya untuk mereplikasi berbagi pengetahuan yang efektif sangat tidak memadai.
Saran apa pun akan sangat dihargai. Saya mencari pedoman yang bisa saya ikuti. Misalnya: Di mana Anda mulai? Bagaimana Anda melanjutkan? Bagaimana Anda membahas teknologi atau pola asing pada bagian pendengar tanpa menghabiskan waktu seharian? Di mana Anda mengikat logika bisnis vs struktur kode?
Terima kasih!
(Seperti biasa, silakan mengedit pertanyaan sesuai keinginan Anda.)
# TODO: fix this ugly hack