फ्रंटएंड डेवलपर इंटरव्यू सवाल

service worker आपको क्या करने देता है, और उसे जोड़ने से पहले आप किस बात का ध्यान रखेंगे?

इंटरव्यूअर असल में क्या परख रहा है, अपना जवाब कैसे स्ट्रक्चर करें, और एक बोला हुआ उदाहरण जिसे आप अपना सकते हैं।

छोटा जवाब

service worker पेज और network के बीच का proxy है, तो वह cached responses दे सकता है, offline चला सकता है, shell precache कर सकता है और background sync या push संभाल सकता है। सावधानी lifecycle को लेकर है: वह activation के बाद ही पेजों को कंट्रोल करता है, पुराना worker बदले जाने तक पुराने assets देता रहता है, और गलत cache नियम यूज़र्स को किसी टूटे हुए build पर चिपका सकता है। अपनी caches को हमेशा version दें और अपडेट का साफ रास्ता शिप करें।

इंटरव्यूअर यह क्यों पूछते हैं

service workers ताकतवर और सच में खतरनाक हैं, तो यह सवाल असल में जोखिम की समझ का है। इंटरव्यूअर install, waiting और activate, cache versioning, और वह क्लासिक incident सुनना चाहता है जिसमें शिप किया गया fix यूज़र्स तक पहुंचता ही नहीं। यह बताना कि HTTP caching और CDN ज़्यादातर ज़रूरतें पूरी कर देते हैं, यह समझ दिखाता है कि अतिरिक्त जटिलता कब सच में जायज़ है।

अपना जवाब कैसे स्ट्रक्चर करें

  • इसे lifecycle वाला network proxy बताएं।
  • वे इस्तेमाल गिनाएं जिन्हें सच में इसकी ज़रूरत है।
  • अपडेट का मॉडल और cache versioning समझाएं।
  • बताएं कि आप कब इसका झंझट नहीं लेंगे।

उदाहरण जवाब

बोला हुआ उदाहरण, पहले व्यक्ति में

यह पेज और network के बीच एक अलग worker की तरह बैठता है, तो यह fetches बीच में पकड़ सकता है और तय कर सकता है कि जवाब cache से देना है या नहीं। इससे मुझे offline सपोर्ट मिलता है, दोबारा आने पर तुरंत shell, कतार में लगे कामों के लिए background sync और push notifications। मैं जिस चीज़ का ध्यान रखता हूं वह lifecycle है, क्योंकि incidents वहीं से आते हैं। नया worker install होता है, फिर तब तक इंतज़ार करता है जब तक हर नियंत्रित tab बंद न हो जाए, तो यूज़र्स आपकी सोच से कहीं ज़्यादा देर तक पुराने कोड पर बैठे रह सकते हैं। और अगर मैं HTML को cache first नियम से cache कर लूं और फिर कोई टूटा हुआ worker शिप कर दूं, तो लौटने वाले यूज़र्स असल में bricked हो गए, क्योंकि उन तक fix पहुंचता ही नहीं। तो मैं cache के नाम version करता हूं और activate पर पुराने मिटाता हूं, HTML को network first रखता हूं और cache first सिर्फ hashed assets के लिए, और हमेशा एक kill switch रास्ता रखता हूं जो unregister करके caches साफ कर दे। अगर ज़रूरत सिर्फ दोबारा आने पर रफ्तार है, सच्चा offline इस्तेमाल नहीं, तो मैं वह cache headers और CDN से लेना पसंद करूंगा और इस पूरी श्रेणी की समस्या से बच जाऊंगा।

जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।

देखें यह कैसे काम करता है

फॉलो-अप सवाल जिनकी उम्मीद रखें

  • पुराने service worker पर अटके यूज़र्स तक अर्जेंट fix कैसे पहुंचाएंगे?
  • HTML और hashed assets के लिए आप कौन सी caching रणनीति इस्तेमाल करते हैं?
  • skipWaiting क्या करता है, और वह कब खतरनाक है?

फ्रंटएंड डेवलपर के और सवाल

आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।

मेरे सवाल प्रेडिक्ट करें

मुश्किल सवाल पूछे जाने से पहले उनकी रिहर्सल कीजिए

एक लाइव कोपायलट के साथ प्रैक्टिस कीजिए, फिर तैयार होकर अंदर जाइए। $29 Session Pass आपको इंटरव्यू पार करा देता है, न कोई सब्सक्रिप्शन, न कोई लॉक-इन।

GhostPilot पाएं