توسعه دهنده AWS برای ساخت وب اسکرپر سرورلس Terraform- Lambda
در سراسر کشور
در وبسایت پونیشا(چند ساعت پیش)
دورکاری
اطلاعات شغل:
امکان دورکاری و کار در منزل: دارد
نوع همکاری: پروژهای
مهارتهای مورد نیاز:
Amazon Web Services
جاوا اسکریپت (JavaScript)
Node.js
Web Scraping
Web Services
متن کامل آگهی:
شرح کلی پروژه
به دنبال یک توسعهدهنده ماهر و باتجربه AWS هستم تا یک راهکار وب اسکرپینگ (Web Scraping) مقاوم و غیرقابل شناسایی را با معماری سرورلس پیادهسازی کند. وظیفه اصلی، استخراج اطلاعات محصولات از یک وبسایت فروشگاهی، مدیریت مکانیزمهای ضد ربات، ذخیرهسازی دادهها در DynamoDB و ارسال هر محصول جدید در قالب JSON به یک وبهوک (Webhook) مشخص است.
کل زیرساخت پروژه باید با استفاده از Terraform تعریف و پیادهسازی شود تا قابلیت نگهداری و مقیاسپذیری بالایی داشته باشد.
مسئولیتهای کلیدی
توسعه یک سیستم وب اسکرپینگ سرورلس در AWS با استفاده از Lambda، SQS و DynamoDB.
نوشتن و مدیریت کامل زیرساخت به عنوان کد (IaC) با استفاده از Terraform و با ساختاری ماژولار و تمیز.
پیادهسازی استراتژیهای پیشرفته برای دور زدن سیستمهای ضد ربات، شامل چرخش پراکسیهای مسکونی (Residential Proxy) و مدیریت User-Agent.
ساخت یک سیستم دو بخشی با Lambda: یک تابع برای مدیریت و تولید تسکها (Orchestrator) و یک تابع برای اجرای اسکرپینگ (Worker).
پس از ذخیرهسازی موفق هر محصول در DynamoDB، تابع اسکرپر باید یک درخواست POST حاوی دادههای محصول به صورت JSON به URL وبهوک ارسال کند.
طراحی یک اسکیمای بهینه برای DynamoDB جهت ذخیرهسازی دادهها و جلوگیری از ثبت اطلاعات تکراری با استفاده از Global Secondary Index (GSI).
تکنولوژیها و نیازمندیهای فنی
زیرساخت: Terraform
کلاد: AWS (Lambda, SQS, DynamoDB, EventBridge, CloudWatch)
زبان برنامهنویسی: Node.js (نسخه 22.x)
اسکرپینگ: Cheerio, Axios
یکپارچهسازی: ارسال امن داده به یک وبهوک خارجی.
پایگاه داده: DynamoDB با ظرفیت On-Demand و قابلیت TTL.
خروجیهای پروژه
کد کامل Terraform: کد ماژولار و آماده برای محیط پروداکشن که تمام منابع AWS را تعریف میکند.
توابع Lambda با Node.js:
Orchestrator: برای تولید و ارسال تسکها به صف SQS.
Scraper: برای دریافت HTML، پارس دادهها، ذخیرهسازی در DynamoDB و ارسال پیلود JSON به وبهوک.
منطق ضد شناسایی: پیادهسازی محدودیت نرخ درخواست (Rate Limiting)، چرخش پراکسی و تغییر هدرها.
مدیریت داده: طراحی اسکیمای جدول DynamoDB برای کوئریهای بهینه و جلوگیری از تکرار داده.
مدیریت خطا: استفاده از صف SQS Dead-Letter Queue (DLQ) برای مدیریت تسکهای ناموفق و تنظیم آلارم در CloudWatch.
مستندات: یک فایل README.md جامع شامل توضیحات معماری، راهنمای استقرار، متغیرهای محیطی (شامل URL وبهوک) و نمونهای از پیلود JSON.
این آگهی از وبسایت پونیشا پیدا شده، با زدن دکمهی تماس با کارفرما، به وبسایت پونیشا برین و از اونجا برای این شغل اقدام کنین.
هشدار
توجه داشته باشید که دریافت هزینه از کارجو برای استخدام با هر عنوانی غیرقانونی است. در صورت مواجهه با موارد مشکوک، با کلیک بر روی «گزارش مشکل آگهی» به ما در پیگیری تخلفات کمک کنید.