Google सॉफ़्टवेयर इंजीनियर इंटरव्यू प्रश्न (2026)
Google की सॉफ़्टवेयर इंजीनियर प्रक्रिया डेटा स्ट्रक्चर्स और एल्गोरिथम्स पर ज़ोर देने के लिए मशहूर है। अधिकतर उम्मीदवार दो या तीन कोडिंग राउंड, कम से कम एक सिस्टम डिज़ाइन राउंड (L4 और ऊपर के लिए), और एक व्यवहारिक राउंड का सामना करते हैं जिसे Google आंतरिक रूप से 'Googleyness and Leadership' कहता है। मानक विचित्र ट्रिक्स से कम और साफ़, सही, अच्छी तरह बताए गए समाधानों के साथ कड़े जटिलता विश्लेषण से ज़्यादा जुड़ा है।
इंटरव्यू लेने वाले यह परखने के लिए प्रशिक्षित होते हैं कि आप कैसे सोचते हैं, न कि क्या आपने किसी विशेष समस्या को याद किया है। वे सुनना चाहते हैं कि आप समस्या को स्पष्ट करें, धारणाएँ बताएँ, समय और स्पेस पर ज़ोर से तर्क करें, और बाधाओं को कसने वाले फ़ॉलो-अप्स को संभालें। एक काम करने वाला ब्रूट फ़ोर्स जिसे आप बाद में ऑप्टिमाइज़ करते हैं, आधे-अधूरे याद किए गए ऑप्टिमल समाधान से बेहतर है जिसे आप समझा नहीं पाते।
नीचे दिए गए प्रश्न उन श्रेणियों को दर्शाते हैं जिन पर Google निर्भर करता है। अपने तरीके को बोलकर बताने का अभ्यास करें: L3 और L4 संकेत के बीच अंतर अक्सर संवाद और ट्रेड-ऑफ़ पर चर्चा करने की क्षमता है, न कि कच्ची समस्या-समाधान गति।
Google सॉफ़्टवेयर इंजीनियर इंटरव्यू प्रश्न और उनका जवाब कैसे दें
1. इंटरवल्स की एक लिस्ट दी गई है, सभी ओवरलैपिंग इंटरवल्स को मर्ज करें।
तरीका: स्टार्ट टाइम के अनुसार सॉर्ट करें, फिर एक बार में गुज़रते हुए मर्ज करें जब मौजूदा स्टार्ट ≤ पिछले एंड हो। O(n log n) पर सॉर्टिंग हावी रहती है। सॉर्टेड इनवेरिएंट को ज़ोर से बताएँ — Google के इंटरव्यू लेने वाले कोड करने से पहले स्पष्ट रूप से बताए गए तरीके की सराहना करते हैं।
2. किसी असॉर्टेड ऐरे में k-वाँ सबसे बड़ा एलिमेंट खोजें।
तरीका: साइज़ k का मिन-हीप (O(n log k)) और quickselect (औसतन O(n)) प्रस्तुत करें। ट्रेड-ऑफ़ पर चर्चा करें: quickselect औसतन तेज़ है पर सबसे बुरा केस O(n²) है; हीप ज़्यादा स्थिर है और स्ट्रीमिंग करता है। दोनों का नाम लेना गहराई दिखाता है।
3. एक बाइनरी ट्री को सीरियलाइज़ और डीसीरियलाइज़ करें।
तरीका: एक ट्रैवर्सल चुनें (null मार्कर्स के साथ preorder साफ़ है) और दिखाएँ कि दोनों दिशाएँ consistent हैं। डिलिमिटर और आप इसे कैसे पुनर्निर्माण करते हैं, इस पर चर्चा करें। Google यह देखना पसंद करता है कि आप null-node एज केस को स्पष्ट रूप से संभालते हैं।
4. Word ladder: दो शब्दों के बीच सबसे छोटा ट्रांसफ़ॉर्मेशन सीक्वेंस।
तरीका: इसे एक ग्राफ़ पर BFS के रूप में मॉडल करें जहाँ एज एक अक्षर अलग होने वाले शब्दों को जोड़ते हैं। एडजेसेंसी को कुशलता से बनाने (वाइल्डकार्ड बकेट्स) और BFS सबसे छोटा रास्ता क्यों सुनिश्चित करता है, इस पर चर्चा करें। बाइडायरेक्शनल BFS एक मज़बूत फ़ॉलो-अप है।
5. एक LRU कैश डिज़ाइन करें।
तरीका: O(1) get/put के लिए हैश मैप + डबली लिंक्ड लिस्ट। इविक्शन पाथ को स्पष्ट रूप से समझाएँ। यह Google का क्लासिक वॉर्म-अप है जो यह परखता है कि क्या आप समय के दबाव में दो स्ट्रक्चर्स को साफ़ तरीके से जोड़ सकते हैं।
6. 2D ग्रिड में द्वीपों (islands) की संख्या।
तरीका: हर अनविज़िटेड लैंड सेल से DFS या BFS फ़्लूड फ़िल करें, कंपोनेंट्स की गिनती करते हुए। O(rows×cols)। इन-प्लेस मार्किंग बनाम विज़िटेड सेट को स्पेस ट्रेड-ऑफ़ के रूप में बताएँ — एक सामान्य Google फ़ॉलो-अप।
7. सबसे ज़्यादा फ़्रीक्वेंट सर्च क्वेरीज़ के टॉप-k वापस करने के लिए सिस्टम डिज़ाइन करें।
तरीका: पहले रीड बनाम राइट रेट तय करें। बड़े स्तर पर अप्रॉक्सिमेट top-k के लिए count-min sketch या हैश मैप पर हीप पर चर्चा करें, और आप शार्डिंग कैसे करेंगे। यह सिस्टम डिज़ाइन राउंड से जुड़ता है जो कई Google प्रक्रियाओं में शामिल होता है।
8. मुझे किसी ऐसे समय के बारे में बताएँ जब आपको पूरे डेटा के बिना फ़ैसला लेना पड़ा।
तरीका: STAR इस्तेमाल करें। Google का 'Googleyness' राउंड अस्पष्टता के साथ सहजता, विवेक के साथ संतुलित कार्रवाई की प्रवृत्ति, और नतीजे से सीखने की क्षमता खोजता है। एक ठोस नतीजे और आप क्या अलग करेंगे, के साथ एक असली उदाहरण चुनें।
Google सॉफ़्टवेयर इंजीनियर इंटरव्यू में रीयल-टाइम मदद पाएँ
किसी असली Google इंटरव्यू में, Natively प्रश्न को ट्रांसक्राइब करता है, साझा किए गए कोड डॉक्यूमेंट को स्क्रीन OCR से पढ़ता है, और 500 मिलीसेकंड से कम समय में जटिलता विश्लेषण के साथ एक व्यवस्थित तरीका सुझाता है — पूरी तरह आपके डिवाइस पर। एल्गोरिथम और Googleyness दोनों राउंड में व्यवस्थित बने रहने के लिए इसका उपयोग करें।
