Saat ini saya bekerja sebagai karyawan magang di perusahaan pengembangan non-perangkat lunak yang sangat besar. Posisi yang saya lamar bukanlah secara khusus posisi pengembangan, tetapi tim yang mempekerjakan saya menginginkan seorang CS mayor untuk membantu mencoba mengembangkan beberapa proyek internal untuk mereka. Saya sudah di sini selama empat minggu dan kebingungan awalnya mulai hilang. Namun, saya satu-satunya CS mayor di seluruh kantor - tidak ada seorang pun di tim saya, di gedung, atau bahkan di lokasi tetangga memiliki latar belakang dalam pengembangan perangkat lunak. Yang terbaik yang saya dapatkan adalah manajer basis data, dan departemen mereka terlalu sibuk untuk mendukung saya dengan proyek-proyek saya. Rekan tim saya membantu saya belajar bagaimana mereka melakukan pekerjaan mereka (yang penting bagi saya untuk melakukan pekerjaan saya), tetapi tidak ada yang membantu saya melakukan pekerjaan saya yaitu pengembangan.
Proyek yang mereka berikan kepada saya memiliki cakupan yang lebih besar daripada semua yang saya lakukan di sekolah. Itu, dikombinasikan dengan kenyataan bahwa saya bekerja sendiri, mencoba mengembangkan aplikasi dari awal tanpa bentuk panduan atau bahkan tujuan yang jelas, membuat saya sangat khawatir dengan kemampuan saya untuk menjadi sukses. Saya hampir tidak tahu di mana saya harus mulai, dan sekarang saya mungkin memiliki kurang dari dua bulan tersisa.
Saya merasa seperti saya harus belajar proses pengembangan perangkat lunak, tetapi sekarang ini seperti saya merasakan jalan saya melalui kegelapan. Ini sangat mengganggu saya karena saya tidak terlalu percaya diri dengan keterampilan pengembangan saya. Saya telah meneliti dan mengajar diri saya sendiri, tetapi saya hanya mendapatkan sedikit demi sedikit. Mereka memiliki harapan yang tinggi dari saya, tetapi saya tidak yakin dengan kemampuan saya untuk memberikan. Jelas, saya perlu duduk dan berbicara dengan manajer saya tentang posisi saya dan saya bermaksud melakukan itu sesegera mungkin (mereka sering bepergian dan keluar kantor).
Bagaimana saya harus menangani ini? Magang ini akan berakhir sebelum saya menyadarinya, dan saya tidak ingin pergi tanpa menunjukkan apa pun untuk waktu saya di sini. Mereka juga tidak mau itu, dan mereka selalu tersedia untuk membantu saya tetapi tanpa pengetahuan pemrograman hanya ada begitu banyak yang bisa mereka lakukan. Saya takut memberi tahu mereka bahwa saya tidak mampu menghasilkan apa yang mereka inginkan. Bagaimana saya bisa menghubungkan ini dengan mereka? Saya melihat trainee praktek kerja mendapatkan bantuan dari insinyur lain, belajar bagaimana melakukan pekerjaan mereka, dan saya merasa seperti saya hanya duduk di sini menunggu waktu saya. Setiap saran tentang bagaimana memperbaiki situasi saya akan sangat dihargai.
Memperbarui
Saya menghargai semua umpan balik yang bermanfaat dari semua orang, ini membantu menenangkan pikiran saya. Hal pertama yang saya lakukan adalah bertemu dengan manajer dan penyelia saya. Kami membahas apa yang diharapkan dari waktu saya di sini. Mereka mengerti bahwa saya tidak memiliki waktu sebanyak itu sebagai pekerja magang, dan ini membantu menempatkan cakupan pada jenis kerangka kerja yang ingin kami selesaikan, yang akan memungkinkan pekerja magang atau karyawan masa depan mudah-mudahan membangun dari apa yang saya tinggalkan. Saya juga menyampaikan keprihatinan saya mengenai kemampuan saya dengan waktu yang ditentukan, yang mereka pahami dan harapkan.
Saya menerima telepon dari administrator basis data di lokasi lain - manajer saya berbicara dengan penyelianya dan mereka akan mendukung proyek saya, yang sekarang akan memberi saya sumber daya untuk digunakan sehingga saya tidak duduk-duduk tanpa tahu apa yang saya ' saya lakukan. Tapi itu baru setengah. Dari semua proyek yang mungkin, kami mempersempitnya menjadi dua yang paling penting untuk dikerjakan. Sedangkan untuk proyek saya yang lain, seperti yang disebutkan seseorang, saya pada dasarnya adalah arsitek perangkat lunak utama yang merupakan situasi unik bagi seorang magang. Jika semuanya berjalan semi-sukses, saya pikir saya akan memperoleh banyak pengetahuan dan pengalaman yang dapat membantu saya dengan calon majikan. Untuk saat ini, saya pikir saya memiliki dasar yang kuat untuk mulai meneliti dan mengembangkan proyek saya. Sekali lagi terima kasih atas tanggapan dari semua orang!
sumber
Jawaban:
Saya punya kabar buruk untuk Anda bhamlin:
Anda bukan magang. Sebaliknya, Anda adalah karyawan yang tidak dibayar / murah.
Magang adalah posisi yang tidak dibayar atau dibayar rendah di mana Anda dapat melatih keterampilan yang baru Anda dapatkan di lingkungan yang aman, (biasanya) santai, dan mendapatkan kesempatan untuk mengamati profesional 'nyata' di bidang Anda melakukan pekerjaan 'nyata', sambil mendapatkan umpan balik pada bagian yang mereka izinkan Anda modifikasi (biasanya di bawah pengawasan dan / atau persetujuan).
Apa yang diinginkan perusahaan Anda, sebenarnya bukan magang, melainkan sumber pengembangan perangkat lunak gratis / murah. Ini cukup umum , menurut saya. Saya tinggal di sebuah kota perguruan tinggi, dan di tempat kerja terakhir saya, manajer sering terdengar berkata "Hei, departemen TI terlalu sibuk untuk melakukan Proyek X, mari kita lihat apakah kita bisa meminta magang dari Universitas untuk menulisnya untuk gratis / murah! " Kami akan mengomel, mengerang, dan mengertakkan gigi ke langit, tetapi ini adalah realitas tempat itu, dan aku bisa mengerti mengapa para manajer menyarankan hal seperti itu. Sayangnya, hasilnya tidak terlalu bagus: perangkat lunak yang dikirim oleh pekerja magang tidak pernah kohesif / dapat diukur / bersih / dll (tapi jujur saja, tidak pula barang-barang yang dikeluarkan oleh IT ...)
Terserah Anda apa yang Anda lakukan. Saran saya adalah hanya mengembangkan apa pun yang Anda bisa (kadang-kadang tekanan adalah motivator yang hebat), TETAPI Anda juga harus merencanakan untuk mengambil magang 'nyata' di tempat lain ketika ini selesai jika memungkinkan.
Jadi jangan salahkan diri Anda, tetapi apa yang Anda jalani bukanlah magang nyata.
sumber
Sebagai mayor CS, Anda memiliki keterampilan memecahkan masalah yang Anda inginkan. Tidak jelas jenis proyek apa yang ingin mereka kembangkan. Jika saya harus menebak mereka mungkin ingin Anda membantu mengotomatisasi beberapa proses internal. Saya akan mulai dengan mencoba untuk mendapatkan diagram gambaran besar tentang proses apa yang ada saat ini dan ketergantungan antar departemen untuk masing-masing proses ini.
Selanjutnya, saya akan mencari beberapa buah gantung rendah yang bisa otomatis atau paling tidak efisien.
Cara Foolproof Mendokumentasikan Proses Apa Pun
Ajukan pertanyaan-pertanyaan ini dalam urutan sebagai berikut:
Jika jawaban ke nomor 3 adalah TIDAK , maka dapatkan bagian yang hilang. Ini bisa berupa formula atau aturan bisnis atau apa pun.
Jika output dari langkah pertama terlalu rumit, pilah menjadi bagian yang dapat dikelola dan serang setiap potongan sebagai proses terpisah.
Dokumentasikan apa yang Anda temukan. Identifikasi potensi titik kegagalan tunggal. Identifikasi kelemahan atau ketergantungan yang langka.
Saya tahu kedengarannya luar biasa, tetapi Anda memiliki keterampilan. Hanya mengubahnya menjadi potongan ukuran gigitan. Jika Anda dapat mempelajari cara menjelaskan "barang geek" menggunakan "bicara non-geek" maka Anda akan sebanding dengan emas Anda.
sumber
Inilah pendapat saya tentang seluruh situasi ini: Mereka meminta lebih dari yang dapat Anda capai secara wajar, tidak memberi Anda umpan balik atau panduan, dan umumnya membuat pekerjaan Anda tidak begitu menyenangkan. Tetapi ada hikmahnya di awan ini. Anda sedang belajar sesuatu.
Khususnya, Anda mempelajari jenis lingkungan yang Anda TIDAK ingin bekerja di saat Anda mendapatkan gelar Anda. Anda juga belajar bagaimana menangani proyek yang terlalu besar untuk Anda selesaikan. Kedua hal ini adalah bagian pengetahuan yang penting untuk dipertahankan, karena tidak ada yang akan memberi Anda pekerjaan yang menurut mereka di bawah kemampuan Anda. Mereka akan selalu meminta lebih dari apa yang dapat Anda berikan, dan tugas Anda adalah bekerja bersama mereka untuk mengelola harapan dan memberikan sesuatu yang mereka inginkan.
Aktif untuk apa yang dapat Anda lakukan di sini dan sekarang. Saya akan mulai dengan membuat jurnal tentang semua yang Anda lakukan di setiap hari. Ini memberi Anda akuntabilitas. Bahkan akhir hari yang sederhana "ini adalah apa yang saya kerjakan hari ini" akan memberi Anda sesuatu untuk mundur ketika mereka tidak mendapatkan apa yang mereka inginkan dan datang mencari jawaban.
Saya juga akan berbicara dengan atasan langsung Anda dan melihat apakah ada cara untuk memecah salah satu proyek yang lebih besar ini . Jika Anda merasa tidak nyaman melakukan semuanya, mungkin mereka hanya akan meminta Anda melakukan riset dan arsitektur untuk proyek tersebut, dan mungkin ada pekerja magang lain yang kemudian mengimplementasikannya. Cukup jelaskan apa yang menurut Anda dapat Anda capai secara wajar pada saat Anda masih magang, dan jadikan itu sebagai tujuan Anda. Dengan begitu Anda masih memberikan sesuatu yang relevan dengan atasan Anda di akhir hari.
Akhirnya, lihat apakah Anda dapat bergabung dengan trainee praktek kerja . Saya akan berasumsi bahwa pekerja magang ini juga mengembangkan perangkat lunak, dan saya tidak melihat alasan mengapa apa yang Anda lakukan dan apa yang mereka lakukan terpisah jauh sehingga Anda tidak dapat saling belajar. Saya bekerja dengan insinyur listrik, insinyur perangkat lunak, insinyur komputer, dan ilmuwan komputer pada proyek saya, dan setiap orang membawa kekuatan mereka sendiri ke tim. Identifikasi di mana kekuatan Anda berada dalam pengembangan, dan cobalah untuk menjelaskan mengapa kemampuan-kemampuan itu cocok untuk tim teknik.
sumber
Bicaralah dengan Penasihat Magang Anda
Semua jawaban yang saya lihat sejauh ini tampaknya berfokus pada majikan, yang penting.
Namun, Anda harus sudah diatur dengan magang ini melalui program atau kantor di sekolah Anda. Saya tidak dapat membayangkan bahwa Anda akan menjadi siswa pertama yang pernah mengalami situasi seperti ini. Mereka harus bisa membimbing Anda ke arah tertentu.
Bahkan jika mereka tidak dapat membantu Anda sekarang (yang menurut saya sulit untuk dipercaya), maka Anda akan membantu siswa berikutnya yang menemukan dirinya dalam situasi ini, yang merupakan sesuatu yang tidak dapat diremehkan.
sumber
Saya memiliki dua magang seperti itu, dan sangat menikmatinya. Ada sisi terang signifikan yang tampaknya Anda lewatkan:
Yang sedang berkata, menangani proyek besar pertama Anda bisa luar biasa. Berikut ini dapat membantu:
Jadi, santai, lakukan yang terbaik, dan pelajari sebanyak mungkin, baik itu tentang perangkat lunak atau tidak.
sumber
Jawaban lain di sini sangat bagus, bacalah berulang-ulang dan benar-benar berusaha mencari jawabannya. Jika Anda melakukannya, dengan upaya lebih dari rata-rata, Anda akan dapat muncul "hidup" di sisi lain magang Anda. Mengingat situasi Anda, itu akan lebih sulit dari yang Anda harapkan, tetapi itu bisa sia-sia.
Ini sangat penting karena, ketika Anda akan melamar suatu posisi ke perusahaan lain 1 , salah satu pertanyaan utama adalah:
Jika Anda kemudian dapat menunjukkan kepada mereka bahwa Anda menangani situasi sulit Anda secara profesional, ini akan BANYAK , pengusaha biasanya sangat terkesan dengan sesuatu seperti ini.
Bahkan jika itu agak menyebalkan, Anda bisa menjadikannya pengalaman yang berharga dari mana Anda memiliki kesempatan untuk mempelajari apa yang tidak akan pernah dilakukan teman sekelas Anda ...
1 = Saya harap Anda akan melakukannya, karena tinggal di sana akan ada bunuh diri dalam karier (cepat atau lambat ... mungkin lebih cepat)
sumber
Saya berada di posisi yang sama tahun lalu, di mana saya harus mengembangkan segalanya dari bawah ke atas dan tidak memiliki orang lain dengan pengalaman pengembangan apa pun. Saya menyelesaikan proyek yang mereka berikan kepada saya, tetapi saya tidak akan menyebutnya aplikasi yang dipoles atau bahkan aplikasi yang dapat dirawat (karena satu-satunya orang yang tahu cara kerjanya adalah saya dan tidak ada seorang pun di perusahaan yang melihat kode tersebut.)
Berikut adalah beberapa hal yang saya lakukan dan akan lakukan jika saya berada dalam situasi itu. Beberapa di antaranya telah disebutkan dalam jawaban sebelumnya
Mencari tahu:
Ini akan memberi Anda gambaran di kepala Anda tentang bagaimana produk seharusnya terlihat. Gambarlah ini di selembar kertas dan perlihatkan kepada manajer / penyelia Anda. Lihat apa yang mereka katakan tentang itu. Jika mereka tidak menyukainya, tanyakan pada mereka apa yang ingin mereka ubah, ubah dan ulangi prosesnya. Jika mereka menyukainya, lakukan jumlah minimum koding dan buat demo sederhana.
Perlihatkan demo kepada mereka (tanyakan kepada mereka apakah ini yang ada dalam pikiran mereka), ini akan menunjukkan kepada mereka kemajuan Anda dan membantu Anda memahami apa yang mereka inginkan.
Setiap kali Anda membutuhkan bantuan pengkodean, baca manual / tutorial, pencarian google dan akhirnya posting di stack overflow untuk bantuan.
Jangan terpaku pada detail kecil. Anda akan membuang banyak waktu jika melakukan ini.
Kode dalam potongan kecil , masing-masing potongan menjadi fungsi utama untuk aplikasi.
Komentari kode Anda. Jika mereka berencana untuk meneruskan ini ke karyawan magang atau karyawan lain, itu akan sangat membantu mereka.
Terus berkomunikasi dengan manajer / penyelia Anda tentang proyek dan kemajuan Anda di atasnya.
Dan jangan khawatir jika Anda tidak dapat menyelesaikan proyek, Anda adalah seorang magang dan Anda melakukan yang terbaik yang Anda bisa. Mereka bersalah karena mempekerjakan seseorang yang kurang berpengalaman untuk proyek semacam itu.
TL; DR
Berkomunikasi dengan manajer Anda setiap langkah
Kode fungsi utama
Dapatkan bantuan dari Google dan susun pertukaran
Jangan khawatir jika Anda tidak bisa menyelesaikannya
sumber
Waktu Anda akan sangat membantu perusahaan Anda jika Anda bekerja hanya pada satu proyek kecil. Pastikan untuk menyimpannya dengan baik. Fokus pada pembuatan dokumentasi arsitektur, tujuan proyek, kemajuan proyek, dan kode sumber yang bermanfaat.
sumber