इस प्रोजेक्ट के बारे में
ms-job-watcher एक स्वचालित नौकरी अलर्ट पाइपलाइन है जो GitHub Actions पर बिना किसी अनुमति के चलती है। यह छह मुख्य कंपनी कैरियर API (Microsoft, NVIDIA, Amazon, Goldman Sachs, IBM, Oracle) और लगभग 1200 चुनिंदा ATS नौकरी पोर्टलों को पोल करती है, जो Greenhouse, Lever, SmartRecruiters, Workday और Ashby प्लेटफॉर्म पर चलते हैं। नौकरियाँ यूएस आधारित प्रवेश और मध्यम स्तरीय सॉफ्टवेयर इंजीनियरिंग भूमिकाओं के लिए नियम-आधारित वर्गीकरण के द्वारा फ़िल्टर की जाती हैं, जो इंटर्नशिप, QA, सेल्स, मार्केटिंग, क्लियरेंस, नागरिकता-आवश्यक और गैर-स्पॉन्सर्ड स्थितियों को हार्ड-एक्सक्ल्यूड करती है, जबकि DevOps/ऑप्स भूमिकाओं को सॉफ्ट-एक्सक्ल्यूड किया जाता है अगर उन्हें एक मजबूत SWE सिग्नल के साथ जोड़ा नहीं गया है। परिणामों को स्थायी JSON स्थिति के खिलाफ डुप्लिकेट किया जाता है, और नई मेल की जाती है जो Gmail SMTP के माध्यम से डायजेस्ट के रूप में भेजी जाती है।
पाइपलाइन दो स्वतंत्र मोड में चलती है: एक मुख्य पाइपलाइन जो कंपनी API को हर ~10 मिनट में जांचती है और एक बोर्ड पाइपलाइन जो ATS बोर्ड को हर ~30 मिनट में कर्सर-आधारित बैच में 200 के साथ स्कैन करती है ताकि पूरे स्कैन GitHub Actions के समय सीमा के भीतर पूरा हो सकें। बोर्ड समानांतर रूप से ThreadPoolExecutor के साथ प्राप्त किए जाते हैं, जिसमें प्लेटफॉर्म-आधारित सेमाफोर होते हैं। 404/410 वापस करने वाले मृत बोर्डों को स्वचालित रूप से छोड़ दिया जाता है। एक Flask डैशबोर्ड देखे गए कार्यों और रन इतिहास को ब्राउज़ करने की अनुमति देता है।
टेक स्टैक: Python 3.11, requests, BeautifulSoup4, GitHub Actions, Gmail SMTP, Flask। स्थिति को एटॉमिक JSON फ़ाइलों के रूप में रखा जाता है जो रिपो में फिर से कमिट किया जाता है ताकि अस्थायी रनर्स के बीच भी जानकारी बनी रहे। उत्पादन निर्धारण cron-job.org के माध्यम से workflow_dispatch API को हिट करके किया जाता है ताकि विश्वसनीय छोटे अंतरालों के लिए निर्धारित किया जा सके।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.