JavaRush /Java Blog /Random-ID /Rehat kopi #49. Contoh kode yang harus dilihat oleh setia...

Rehat kopi #49. Contoh kode yang harus dilihat oleh setiap pengembang. Bagaimana mempersiapkan wawancara

Dipublikasikan di grup Random-ID

Contoh kode yang harus dilihat oleh setiap pengembang

Sumber: Medium Terkadang di waktu luang saya berkeliling di repositori GitHub. Ketika saya mulai mempelajari program, alat, atau utilitas baru, saya mencoba melihatnya beraksi. Untuk melakukan ini, saya melihat kode mereka: ini membantu untuk memahami cara kerja semuanya, modul dan dependensi eksternal apa yang ada. Perendaman dalam teknologi memberikan sensasi yang luar biasa dan memungkinkan Anda memperoleh pengetahuan baru. Rehat kopi #49.  Contoh kode yang harus dilihat oleh setiap pengembang.  Bagaimana mempersiapkan wawancara - 1Dalam artikel saya, saya ingin berbagi contoh kode paling mengesankan yang saya temui saat menjelajahi repositori.

Program kendali Apollo 11

Apollo 11 adalah pesawat luar angkasa yang membawa manusia ke bulan. Komputer kontrol on-board (AGC) mengendalikan operasi penerbangan hanya dengan memori fisik 4 kilobyte. Perangkat lunak AGC, yang ditulis dalam bahasa assembly, disimpan dalam memori khusus hanya-baca (rope memory). Beberapa tahun yang lalu, salinan kertas yang dipindai dari kode sumber ini diposting di Internet . Kemudian seseorang menulis beberapa modul ke dalam file teks dan mengunggahnya ke repositori GitHub . Rehat kopi #49.  Contoh kode yang harus dilihat oleh setiap pengembang.  Bagaimana mempersiapkan wawancara - 2Tim teknik Apollo 11 bekerja keras untuk mencapai hasil yang luar biasa ini. Mereka menulis banyak baris kode dalam bahasa assembly, meskipun pemrograman pada tahun 1960an jauh lebih sulit dibandingkan sekarang. Pada saat itu, bahasa pemrograman memiliki tingkat abstraksi yang lebih rendah. Selain itu, karena perangkat keras berdaya rendah, pengembang harus menulis kode yang sangat optimal.

Arena Gempa III

Quake III Arena adalah video game first-person shooter yang dibuat oleh id Software. Game ini muncul pada tahun 1990-an, ketika industri game 3D baru saja dimulai. Mesin permainan id Tech 3 digunakan untuk pengembangannya.Seperti halnya program bulan Apollo 11, karena keterbatasan sumber daya perangkat keras, kode untuk rendering grafik sangat dioptimalkan. Banyak perhitungan pemrograman game memerlukan konsep normalisasi vektor, yang mengharuskan penghitungan akar kuadrat terbalik. Karena pengembang perlu memilih algoritme yang paling efisien untuk grafik komputer, Quake III Arena mengambil pendekatan cerdas untuk menghitung akar kuadrat terbalik dengan cepat menggunakan penghitungan tingkat bit. Rehat kopi #49.  Contoh kode yang harus dilihat oleh setiap pengembang.  Bagaimana mempersiapkan wawancara - 3Tingkat optimasi pada beberapa kode yang Anda lihat, dan pada kenyataannya semua kode yang digunakan untuk membuat game pada tahun 1990an, sungguh menakjubkan. Saat ini, pengembang video game biasanya tidak melakukan komputasi pada level ini karena banyak fungsi yang dilakukan pada level mesin game.

Koleksi Kompiler GNU

Bahasa pemrograman C dapat disebut sebagai bapak pemrograman modern karena sangat dekat dengan perangkat keras, namun pada saat yang sama menawarkan tingkat abstraksi yang baik dan dapat dimengerti oleh manusia. Kompiler GNU C adalah kompiler bootstrap. Artinya, ditulis dalam C menggunakan konsep pelepasan kompiler. Dalam kode Koleksi Kompiler GNU di GitHub, saya menemukan file sumber C terpanjang yang pernah saya lihat (mungkin ada file yang lebih panjang, tapi ini yang saya temukan).Rehat kopi #49.  Contoh kode yang harus dilihat oleh setiap pengembang.  Bagaimana mempersiapkan wawancara - 4

Kromium

Browser populer seperti Google Chrome, Microsoft Edge, dan Opera didasarkan pada proyek open source Chromium. Proyek ini memiliki dua dependensi utama: mesin Blink (cabang perpustakaan WebCore dari tim Webkit) dan mesin JavaScript V8 yang dikembangkan oleh tim proyek Chromium. Tentu saja, kode Chromium cukup luas dan berisi banyak modul pihak ketiga seperti gRPC dan Skia . Namun pengembang Chromium berhasil menyusun semua komponen ini dengan sempurna. Basis kode dengan cerdik memisahkan logika fungsi internal dari logika antarmuka pengguna. Hal ini memastikan dukungan yang baik untuk keseluruhan proyek. Rehat kopi #49.  Contoh kode yang harus dilihat oleh setiap pengembang.  Bagaimana mempersiapkan wawancara - 5Selain itu, kode proyek berisi kode sumber untuk aplikasi Chromium Android dan iOS. Menstrukturkan aplikasi lintas platform yang sangat skalabel dapat menjadi sebuah tantangan. Namun, Chromium memiliki pemisahan kode yang sangat mengesankan di Linux, Windows, dan Mac.

Gitk

Saat ini, setiap tim menggunakan Git untuk mengelola versi kode. Sistem kontrol versi ini dikembangkan oleh Linus Torvalds (pencipta kernel GNU/Linux OS). Basis kode Git mencakup kode sumber Gitk. Gitk adalah aplikasi GUI yang menyediakan navigasi visual melalui penerapan. Untuk melihat perbedaan dua commit, Anda dapat menggunakan perintah berikut:
$ git diff <commit hash> <commit hash>
Namun karena Gitk adalah alat visual, kita dapat melihat perbedaannya lebih cepat. Rehat kopi #49.  Contoh kode yang harus dilihat oleh setiap pengembang.  Bagaimana mempersiapkan wawancara - 6Semua kode sumber Gitk cocok menjadi satu . Kode ditulis dalam bahasa skrip Tcl menggunakan toolkit Tk UI, ekstensi Tcl. Mengondensasi seluruh aplikasi GUI menjadi satu file adalah tugas yang sulit.

Bagaimana cara pengembang mempersiapkan wawancara?

Sumber: Hackernoon Saya ingat wawancara pertama saya. Saya baru saja menyelesaikan gelar saya dan melamar magang di sebuah perusahaan keuangan di Madrid. Saya sangat gugup karena saya tidak tahu bagaimana wawancaranya akan berlangsung dan saya tidak mengetahui tren terkini dalam pengembangan perangkat lunak. Saat itu setelah Paskah, saya baru berusia 21 tahun, dan akan lebih menyenangkan jika saya menghabiskan waktu bersama teman-teman di pantai. Namun alih-alih bersenang-senang, saya harus mempersiapkan wawancara. Rehat kopi #49.  Contoh kode yang harus dilihat oleh setiap pengembang.  Bagaimana mempersiapkan wawancara - 7Langkah pertama sebelum setiap wawancara adalah mengenal satu sama lain. Mereka menanyakan nama, alamat, spesialisasi Anda, dan sebagainya. Setelah itu, Anda akan menjalani wawancara pribadi, bisa secara tatap muka atau melalui link video. Bagaimanapun, wawancara ini akan menguji pengalaman, pengetahuan, dan keterampilan Anda untuk posisi yang Anda lamar. Anda kemudian mungkin akan diminta untuk menulis kode di mana Anda akan menunjukkan kemampuan Anda untuk memecahkan masalah atau masalah. Selain itu, Anda mungkin mengharapkan wawancara dengan manajer proyek atau direktur perusahaan. Hal ini tergantung pada posisi yang Anda lamar. Proses wawancara bisa memakan waktu lama. Oleh karena itu, Anda perlu bersabar dan tetap tenang. Saya telah menyiapkan beberapa tips dan trik untuk Anda mengenai hal ini.

Teliti posisinya untuk memastikan itu cocok untuk Anda.

Terkadang ketika kita sedang mencari pekerjaan, kita hanya muncul untuk wawancara tanpa melihat semua informasi tentang posisi tersebut. Lebih baik perjelas daftar tanggung jawab dan jadwal kerja Anda terlebih dahulu. Periksa juga apakah perusahaan dan posisinya sesuai dengan kebutuhan Anda

Cobalah untuk selalu mengikuti perkembangan tren karier Anda.

Kesalahan besar adalah tidak mengikuti tren dan teknologi baru dalam pekerjaan Anda. Anda mungkin seorang pengembang atau manajer proyek, Anda memiliki cara Anda sendiri dalam menjalankan peran Anda saat ini dan teknologi yang sama untuk semua proyek Anda. Namun cobalah meluangkan sedikit waktu setiap hari untuk mempelajari teknologi baru. Ini sangat penting dalam karier kami. Anda harus terus mengikuti perkembangan kerangka kerja baru, metodologi baru, dan banyak lagi. Ini akan membuat perbedaan besar dalam wawancara Anda.

Selama wawancara tatap muka atau panggilan video: cobalah untuk tampil menarik dan santai

Penampilan Anda sama pentingnya dengan desain aplikasi Anda. Anda mungkin memiliki backend yang sempurna, namun jika aplikasi Anda memiliki frontend yang buruk, Anda akan kesulitan menjual produk Anda. Hal yang sama berlaku untuk penampilan Anda: saat wawancara, Anda harus berpenampilan, jika tidak formal, setidaknya layak. Ini akan menunjukkan kesediaan Anda untuk mengikuti peraturan perusahaan. Saya tahu beberapa orang di sini akan berpikir, “Hei, saya jenius, mengapa saya harus peduli dengan penampilan saya?” Nah, jika Anda jenius dan berpenampilan menarik , Anda pasti akan berkesan!

Tidak usah buru-buru

Sebelum wawancara, Anda perlu mempersiapkan, mempelajari topik, melatih algoritma dan pemecahan masalah, serta mempersiapkan pidato. Beberapa dari proses ini memakan waktu lama dan memakan waktu. Jadi pastikan Anda memiliki keuntungan di sini.

Praktik

Tergantung pengalaman Anda, tapi rekomendasi saya disini adalah jika Anda harus menulis kode dalam sebuah wawancara, harap tulis dengan benar. Untuk melakukan ini, Anda perlu mempelajari cara membersihkan dan meninjau kode. Ini akan membantu Anda mengatur ulang atau meningkatkan beberapa fungsinya.

Tunjukkan pengalaman Anda dalam wawancara tatap muka atau dalam kode

Cobalah untuk menunjukkan pengalaman. Wawancara adalah tempat yang tepat untuk menjelaskan kepada pewawancara mengapa perusahaan harus mempekerjakan Anda. Sebelum wawancara Anda, biasakan diri Anda dengan konsep dasar pemrograman, metodologi, dan praktik terbaik.

Tidur yang cukup sehari sebelum wawancara Anda.

Cobalah untuk cukup tidur. Ini akan membantu Anda tetap fokus pada hari berikutnya. Jika Anda tidak tahu jawaban atas pertanyaan wawancara apa pun, mohon jangan berbohong — jujurlah, ini akan membantu menghindari banyak komplikasi di masa depan. Dan ini akan membantu Anda melihat kelemahan Anda yang perlu Anda perbaiki.

Percayai jawaban Anda

Jangan meragukan diri sendiri. Tidak pernah.

Selama wawancara, Anda harus menunjukkan rasa aman dan percaya diri kepada semua orang.

Jika Anda tidak memiliki keterampilan ini, Anda mungkin perlu melatihnya. Keyakinan adalah ketika Anda menjawab, “Saya tidak tahu jawabannya, tapi saya bisa mencarinya dan menjawabnya nanti.” Pilihan jawaban ini menunjukkan keamanan dan kepercayaan diri.

Analisis wawancara tersebut

Setiap wawancara berbeda, tetapi semuanya memiliki ciri-ciri yang serupa. Oleh karena itu, setelah wawancara, Anda harus merenungkan apa yang baik atau buruk bagi Anda. Wawancara adalah saat yang tepat untuk melihat diri Anda dari luar, kekuatan dan kelemahan Anda.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION