Wawancara wiki — Panduan untuk Insinyur perangkat lunak

Nov 27 2022
Umumnya, Wawancara Insinyur Perangkat Lunak memiliki 4 jenis putaran: - - Putaran Teknis - Putaran Desain Tingkat Tinggi (HLD) - Putaran Desain Tingkat Rendah (LLD) - Putaran Perilaku Jumlah putaran untuk setiap peran akan tergantung pada perusahaan. Misalnya Amazon, mereka biasanya memiliki 4 putaran di mana 2 putaran pertama akan terkait dengan Struktur Data (DS) dan algoritme, dan sisanya akan menjadi putaran desain jika untuk peran SDE2+.

Secara umum, Wawancara Insinyur Perangkat Lunak memiliki 4 jenis putaran: -

- Putaran Teknis

- Putaran Desain Tingkat Tinggi (HLD).

- Putaran Desain Tingkat Rendah (LLD).

- Putaran Perilaku

Jumlah putaran untuk setiap peran akan bergantung pada perusahaan. Misalnya Amazon, mereka biasanya memiliki 4 putaran di mana 2 putaran pertama akan terkait dengan Struktur Data (DS) dan algoritme, dan sisanya akan menjadi putaran desain jika untuk peran SDE2+. Bagi mereka, mereka tidak membuat babak terpisah untuk perilaku, melainkan mengajukan beberapa pertanyaan kepemimpinan di setiap babak.

Setiap putaran penting dan kita harus meluangkan waktu untuk setiap putaran. Biasanya, mahasiswa baru yang sudah lulus kuliah tidak mengikuti putaran HLD dan LLD. Tetapi mereka dapat mengharapkan putaran OO (Berorientasi Objek), di mana mereka menguji keterampilan Berorientasi Objek Anda.

Di sini, di wiki ini, saya akan membagikan semua konten yang saya temukan selama persiapan wawancara saya. Saya akan membagikan kursus, buku, blog, dan repo GitHub yang sangat berguna bagi saya selama persiapan wawancara. Ini tidak berarti Anda harus mengikuti hal yang sama untuk wawancara Anda karena setiap orang memiliki gaya belajarnya sendiri. Tapi Anda bisa menggunakan wiki ini sebagai panduan atau referensi untuk persiapan. Pada akhirnya, Andalah yang menghadiri wawancara.

Saya akan membahas setiap putaran secara terpisah. Mari kita mulai dengan putaran Teknis.

Putaran Teknis

Salah satu putaran terpenting bagi orang yang lebih baru dan berpengalaman. Di sini mereka menguji pengetahuan Anda tentang struktur Data dan Algoritma. Putaran ini tidak menguji pengetahuan Anda tentang algoritme canggih yang ada untuk menyelesaikan masalah kompleks. Tetapi Anda setidaknya harus mengetahui yang paling umum. Saya telah melihat orang-orang menjadi sangat aneh dan masalah sampah yang hanya dapat diselesaikan dengan beberapa algoritme unik. Tapi itu sangat jarang. Saya tidak akan menyarankan menghabiskan waktu di sana karena kita harus memercayai kemungkinan dasar untuk menghadapinya. Jika Anda ingin melihat pola pertanyaan wawancara umum, Anda dapat mengunjungi situs web berikut (https://algo.monster/problems/stats)

Hal-hal yang tidak boleh Anda lewatkan:

Struktur data,

Larik, Daftar Tertaut, Tumpukan, Antrian, Tumpukan, Peta, Set, Trie, Pohon, BST

Algoritma

Sorting, Pemrograman Dinamis, Greedy, Searching, Divide and Conquer, dan algoritma Grafik.

Desain Tingkat Tinggi

Ini menguji pengetahuan Anda tentang merancang arsitektur keseluruhan sistem. Ini mencakup deskripsi arsitektur sistem, desain basis data, dan deskripsi singkat tentang sistem, layanan, platform, dan hubungan antar modul. Pertanyaan dulunya sangat kabur seperti desain WhatsApp, desain Redbus, dll. Di sini Anda perlu membuat desain dalam waktu kurang dari 30–45 menit tergantung pewawancara. Di sini pewawancara tidak mengharapkan Anda untuk membuat kode tetapi Anda harus dapat mendesain database, API, dll jika diminta.

Desain Tingkat Rendah

Ini menjelaskan deskripsi terperinci dari setiap modul, yang berarti menyertakan logika aktual untuk setiap komponen sistem dan masuk jauh ke dalam spesifikasi setiap modul. Di sini Anda harus membuat kode kelas, antarmuka, dll. Anda juga harus memiliki pengetahuan yang baik tentang pola Desain. Jika Anda mengetahui bahasa berorientasi objek maka itu akan menjadi poin plus.

Putaran perilaku

Saya percaya di sini saya tidak perlu memberikan pengantar apa pun. Ini adalah salah satu putaran yang biasanya dilewati orang, tetapi menurut saya, luangkan setidaknya satu hari untuk persiapan. Sebagian besar pewawancara sebenarnya peduli dengan apa yang Anda katakan di babak ini. Amazon, Google, dll. benar-benar menanggapi putaran ini dengan sangat serius dan Anda harus mengetahui pertanyaan yang diajukan, dan strategi apa yang harus diikuti untuk menjawab pertanyaan tersebut.

Sumber daya:

Babak teknis

1.https://www.geeksforgeeks.org/top-algorithms-and-data-structures-for-competitive-programming/(Yang terpenting)

2.https://takeuforward.org/interviews/strivers-sde-sheet-top-coding-interview-problems/(Masalah)

3.https://www.youtube.com/user/purpongie(Tutorial)

4.https://cses.fi/problemset/list(Masalah)

5.https://github.com/donnemartin/interactive-coding-challenges(Sedang belajar)

6.https://leetcode.com/discuss/interview-question/2001789/Collections-of-Important-String-questions-Pattern(Masalah)

7.https://github.com/jwasham/coding-interview-university(Sedang belajar)

8.https://leetcode.com/discuss/interview-question/2069641/the-only-lists-you-need-for-your-interview-preparation(Sedang belajar)

Putaran HL

1.https://www.youtube.com/c/SystemDesignInterview/videos(Tutorial)

2.https://www.youtube.com/watch?v=0163cssUxLA&list=PLA8lYuzFlBqAy6dkZHj5VxUAaqr4vwrka(Tutorial)

3.https://www.youtube.com/watch?v=xpDnVSmNFX0&list=PLMCXHnjXnTnvo6alSjVkgxV-VH6EPyvoX(Tutorial)

4.https://blog.bytebytego.com/?utm_source=linkedin_post(Blog)

5.https://leetcode.com/discuss/general-discussion/125038/system-design-interview-prep(Sedang belajar)

6.https://www.educative.io/courses/grokking-modern-system-design-interview-for-engineers-managers(Kursus berbayar)

7.https://github.com/donnemartin/system-design-primer(Sedang belajar)

8.https://github.com/checkcheckzz/system-design-interview(Sedang belajar)

Putaran LLD

1.https://workat.tech/machine-coding/practice(Masalah Pengodean Mesin)

2.https://www.youtube.com/playlist?list=PL564gOx0bCLouDCUMtmj6hMEu1JS7QYEr(Tutorial)

3.https://github.com/prasadgujar/low-level-design-primer/blob/master/questions.md(Masalah)

4.https://betterprogramming.pub/how-to-ace-the-low-level-design-interview-3f1be6401070(blog)

Putaran Perilaku

1.https://www.youtube.com/watch?v=RzlUQCy84rQ(Prinsip Kepemimpinan Amazon)

2.https://leetcode.com/discuss/interview-question/1729926/a-guide-for-behavioral-round(memandu)

3.https://drive.google.com/file/d/1sb6Kll5enH3H70uaNwnjWPkN9pNtSu9-/view(pdf)

4.https://igotanoffer.com/blogs/product-manager/behavioral-interview-questions-tech-companies#techniques(pertanyaan Facebook)

5.https://leetcode.com/discuss/interview-question/437082/Amazon-Behavioral-questions-or-Leadership-Principles-or-LP(pertanyaan Amazon LP)

6.https://www.techinterviewhandbook.org/behavioral-interview-questions/(Pertanyaan)

7.https://www.principle.cards/(Uji dirimu)

Untuk pembaruan terbaru dari wiki-wawancara, Anda dapat mengikuti repo GitHub sayahttps://github.com/aashan007/Interview-wiki