linting और formatting दोनों के लिए Ruff, mypy या pyright से type check, और pytest suite, और ये सब चेतावनी देने के बजाय build फेल करते हैं। Ruff एक ही तेज पास में flake8, isort और black की जगह ले लेता है, इसलिए ज्यादातर repositories में पूरा गेट एक मिनट से काफी कम में चलता है। Style के सवाल formatter तय करता है, रिव्यू के कमेंट नहीं।
इंटरव्यूअर यह क्यों पूछते हैं
इससे इंटरव्यूअर को पता चलता है कि आप दूसरों के साथ कैसे काम करते हैं। जिन टीमों में कोई ऑटोमैटिक गेट नहीं है वे रिव्यू का समय logic के बजाय import के क्रम पर बहस में लगाती हैं। वे सुनना चाहते हैं कि checks सलाह नहीं, लागू होने वाले हैं, pipeline इतनी तेज है कि कोई उसे किनारे से नहीं निकालता, और आदर्श रूप से वही checks लोकल पर pre commit hook से भी चलते हैं।
अपना जवाब कैसे स्ट्रक्चर करें
- गेट्स को उसी क्रम में गिनाएं जिसमें वे चलते हैं।
- कहें कि वे merge रोकते हैं, सिर्फ चेतावनी नहीं देते।
- रफ्तार पर जोर दें, वही इसे इस्तेमाल में रखती है।
- वही checks लोकल पर चलाने का जिक्र करें।
उदाहरण जवाब
तेज checks पहले ताकि फीडबैक जल्दी मिले: ruff check और check mode में ruff format, फिर type checker, फिर coverage के साथ टेस्ट suite। ये सब merge रोकते हैं। Ruff ने हमारे यहां flake8, isort, pyupgrade और black को निगल लिया, और वह पूरी repository को करीब एक सेकंड में चला देता है, जो सुनने में जितना लगता है उससे ज्यादा मायने रखता है, क्योंकि जिस गेट के लिए लोग दो मिनट रुकते हैं उसी गेट को लोग छोड़ने लगते हैं। Configuration pyproject में रहती है ताकि एडिटर, pre commit hook और CI आपस में असहमत न हो सकें। लोकल पर वही नियम commit पर चलते हैं, तो pipeline में कोई चौंकाने वाली चीज नहीं आती। इसके अलावा हम advisories के लिए pip-audit और container image का एक build चलाते हैं, ताकि टूटी हुई Dockerfile deploy के समय नहीं, रिव्यू में फेल हो। सांस्कृतिक फायदा मुझे सबसे ज्यादा मायने रखता है, यानी अब कोई formatting पर कमेंट नहीं करता और कोड रिव्यू इस बातचीत में बदल गया कि logic सही है या नहीं।
जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।
देखें यह कैसे काम करता हैफॉलो-अप सवाल जिनकी उम्मीद रखें
- formatter पहली बार अपनाने पर आने वाले भारी भरकम diff को कैसे संभालते हैं?
- क्या आप coverage की सीमा लागू करते हैं?
- जिस नियम से टीम असहमत हो उसका क्या करते हैं?
Python डेवलपर के और सवाल
आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।
मेरे सवाल प्रेडिक्ट करें