Forwarded from Django Expert (Boby Cloud)
سلام روزتون بخیر
یه پروژه جدید و اوپن سورس شروع کردم که با استفاده از Playwright و ChatGPT آگهیهای LinkedIn رو آنالیز میکنه و در کانال تلگرامی به صورت مرتب و قابل فهم قرار میده. این پروژه چند ویژگی جذاب داره که به شرح زیر میباشند:
1. تحلیل وضعیت حمایت از ویزا: با استفاده از ChatGPT، میتونه بفهمه که شرکت حمایت از ویزا داره یا نه.
2. ربات تلگرام: با استفاده از ربات تلگرام، براتون آگهی هایی که مناسبتون هست فروارد میکنه از کانال تا دیگه مجبور نباشین تو کانال دنبال آگهی مناسب بگردین
3. فیلتر منطقی تو در تو: این قسمت واقعا جالبه! برای مثال، شما میتوانید فیلتری به شکل زیر بسازید:
(django or fastapi or python) and (netherlands or germany) and (backend or (fullstack and vuejs))
با این فیلتر, وقتی شغلی تو کانال میره که پایتون یا جنگو یا fastapi که در کشور آلمان یا هلنده و بک انده یا فول استک با vuejs داره رو براتون همون لحظه فروارد میکنه ✌️
4. قابلیت آنالیز و پیدا کردن شغل های مختلف مربوط به IT مثل backend, frontend, software, devops .
و کلی فیچر دیگه که تو repo گیتهاب میتونید پیدا کنید و ازش استفاده کنید.
لینک کانال:
@Linkedin_python
لینک ربات:
@linkedin_python_bot
لینک پروژه:
https://github.com/ManiMozaffar/linkedIn-scraper/tree/main
جهت حمایت از پروژه, میتونید contribute داشته باشین یا داخل گیتهاب ستاره بدین 🙏
پی نوشت: سرویس کاملا رایگانه و رایگان خواهد موند. صرفا هدفم کمک به دوستان هست ❤️
یه پروژه جدید و اوپن سورس شروع کردم که با استفاده از Playwright و ChatGPT آگهیهای LinkedIn رو آنالیز میکنه و در کانال تلگرامی به صورت مرتب و قابل فهم قرار میده. این پروژه چند ویژگی جذاب داره که به شرح زیر میباشند:
1. تحلیل وضعیت حمایت از ویزا: با استفاده از ChatGPT، میتونه بفهمه که شرکت حمایت از ویزا داره یا نه.
2. ربات تلگرام: با استفاده از ربات تلگرام، براتون آگهی هایی که مناسبتون هست فروارد میکنه از کانال تا دیگه مجبور نباشین تو کانال دنبال آگهی مناسب بگردین
3. فیلتر منطقی تو در تو: این قسمت واقعا جالبه! برای مثال، شما میتوانید فیلتری به شکل زیر بسازید:
(django or fastapi or python) and (netherlands or germany) and (backend or (fullstack and vuejs))
با این فیلتر, وقتی شغلی تو کانال میره که پایتون یا جنگو یا fastapi که در کشور آلمان یا هلنده و بک انده یا فول استک با vuejs داره رو براتون همون لحظه فروارد میکنه ✌️
4. قابلیت آنالیز و پیدا کردن شغل های مختلف مربوط به IT مثل backend, frontend, software, devops .
و کلی فیچر دیگه که تو repo گیتهاب میتونید پیدا کنید و ازش استفاده کنید.
لینک کانال:
@Linkedin_python
لینک ربات:
@linkedin_python_bot
لینک پروژه:
https://github.com/ManiMozaffar/linkedIn-scraper/tree/main
جهت حمایت از پروژه, میتونید contribute داشته باشین یا داخل گیتهاب ستاره بدین 🙏
پی نوشت: سرویس کاملا رایگانه و رایگان خواهد موند. صرفا هدفم کمک به دوستان هست ❤️
👍6❤1
این پروژه شخصا خیلی کمکم کرده, 8 تا پیام اومده از اخرین باری که اپلای کردم. یعنی به احتمال قوی حداقل 6 اپلای دیگه, بدون effort گذاشتن برای پیدا کردن اون آگهی
یک عادتی دارم و اونم اینه که هر تسکی که میبنیم میشه اتومیت کرد میرم که اتومیتش کنم.
هم بازدهی بهتری خواهم گرفت (اپلای بیشتر, تو پوزیشن های مناسب تر)
تو این مدت زیاد مصاحبه گرفتم, این یکی از trick هاش بود. بقیه اش هم تو یک پست به زودی قرار میدم, و جا داره از بابی هم تشکر کنم بابت راهنمایی که کرد ❤️
خیلی کارساز بود, خیلی قشنگه که تو این کامینیتی آدم هایی رو میبینیم که خالصانه به پیشرفت همدیگه کمک میکنن بدون اینکه فاز رقابتی بگیرن
@ManifoldsPython
یک عادتی دارم و اونم اینه که هر تسکی که میبنیم میشه اتومیت کرد میرم که اتومیتش کنم.
هم بازدهی بهتری خواهم گرفت (اپلای بیشتر, تو پوزیشن های مناسب تر)
تو این مدت زیاد مصاحبه گرفتم, این یکی از trick هاش بود. بقیه اش هم تو یک پست به زودی قرار میدم, و جا داره از بابی هم تشکر کنم بابت راهنمایی که کرد ❤️
خیلی کارساز بود, خیلی قشنگه که تو این کامینیتی آدم هایی رو میبینیم که خالصانه به پیشرفت همدیگه کمک میکنن بدون اینکه فاز رقابتی بگیرن
@ManifoldsPython
❤8👍1
اولین موردی که بهش میپردازم از functools هست که میخوام یک سیستم کش رو براش بسازم
ولی با این تفاوت که بر اساس ورودی های تابع باشه.
اینو خیلی دوست دارم چون براتون ریزالتو کش میکنه ولی با این تفاوت که بر اساس args که بهش میدین این کش انجام میشه.
حالا یعنی چی, یعنی وقتی شما
نکته جالب تر و تمیزتر اینه که حتی
یک arg هم داره که به اسم maxsize, که درواقع مشخص میکنه ماکسیموم کش اختصاص داده شده برای این تابع چقدر باشه.
به طور دیفالت هم 128 هست. حواستون باشه مثل مثال بالا اگه از None استفاده کنید ممکنه مشکل پر شدن حافظه براتون رخ بده.
مثال خیلی قشنگش میتونه اینطوری باشه, برای گرفتن 100 تا شماره اول fibonacci.
ولی با این تفاوت که بر اساس ورودی های تابع باشه.
اینو خیلی دوست دارم چون براتون ریزالتو کش میکنه ولی با این تفاوت که بر اساس args که بهش میدین این کش انجام میشه.
حالا یعنی چی, یعنی وقتی شما
fibonacci(50)رو صدا میزنید 50امین عدد عدد fibonacci حساب میشه, و بار بعدی که
fibonacci(50)رو صدا میزنید دیگه نمیره محاسبه کنه و تو کش ذخیره میکنه که
fibonacci(50)مساوی با اون عدده.
نکته جالب تر و تمیزتر اینه که حتی
fibonacci(49)و ... هم ذخیره میکنه. یعنی شما دیگه
fibonacci(51)هم صدا بزنید خیلی سریعتر ران میشه.
یک arg هم داره که به اسم maxsize, که درواقع مشخص میکنه ماکسیموم کش اختصاص داده شده برای این تابع چقدر باشه.
به طور دیفالت هم 128 هست. حواستون باشه مثل مثال بالا اگه از None استفاده کنید ممکنه مشکل پر شدن حافظه براتون رخ بده.
مثال خیلی قشنگش میتونه اینطوری باشه, برای گرفتن 100 تا شماره اول fibonacci.
for num in range(1, 100):@ManifoldsPython
print(fibonacci(num))
👍2❤1❤🔥1
Snap.png
1.6 MB
Let's dig in a bit :) 🐕
سه حالت برای کش وجود داره,
در حالت اول، هیچ کشی انجام نمیشه و تنها آمار کلی از تعداد بارهایی که تابع فراخوانی شده ثبت میشه.
در حالت دوم، کش سادهای بدون محدودیت سایز وجود دارد. در این حالت، نتیجهی تابع برای ورودیهای مشابه ذخیره شده و برای بارهای بعدی فراخوانی میشود.
در حالت سوم، سایز کش محدود شده است. در این حالت، نتایج قدیمیتر ترک میشوند و به جای آنها، نتایج جدیدی که اخیرا استفاده شدهاند، ذخیره میشوند. پس وقتی maxsize پر شد بهتون ارور نمیده :)). جالبه نه؟
@ManifoldsPython
سه حالت برای کش وجود داره,
در حالت اول، هیچ کشی انجام نمیشه و تنها آمار کلی از تعداد بارهایی که تابع فراخوانی شده ثبت میشه.
در حالت دوم، کش سادهای بدون محدودیت سایز وجود دارد. در این حالت، نتیجهی تابع برای ورودیهای مشابه ذخیره شده و برای بارهای بعدی فراخوانی میشود.
در حالت سوم، سایز کش محدود شده است. در این حالت، نتایج قدیمیتر ترک میشوند و به جای آنها، نتایج جدیدی که اخیرا استفاده شدهاند، ذخیره میشوند. پس وقتی maxsize پر شد بهتون ارور نمیده :)). جالبه نه؟
@ManifoldsPython
👍2
fp.png
90.1 KB
براتون تاحالا سوال شده کمپانی ها و پروداکت های بزرگ مثل گوگل و یوتیوب کاربر guest رو identify میکنن؟ مثلا من اگه یک رباتی بنویسم که بیاد یوتیوب و کانتنمو 1 میلیون بار ببینه, چطور یوتیوب متوجه میشه؟ جدا از بحث آنالیز patternای که video هام ویو میخورن.
یا مثلا من در ازای تبلیغ یک سایتی که مبلغی میگیرم, اگه view سایتم رو فیک بزنم چطور سایت advertising agency متوجه میشه؟
یا چطور یک سایت vote counting متوجه میشه که شما دارین دوباره با یک session id دیگه vote میدین؟
اگه فکر میکنید با استفاده از incognito و پروکسی/وی پی ان, از دستشون فرار میکنید کاملا اشتباه میکنید.
این دیاگرام, نحوه پیاده سازی همچین سیستم اهراز حویت رو به شما میده که هم تو سرور ساید هست و هم تو کلاینت, و بعضی از use case های مختلف رو نشون میده.
تو پروداکت های ایرانی به شخصه ندیدم از همچین سرویسی استفاده شه, در صورتی که خیلی جاها میتونه بسیار به درد بخور باشه ✌️
@ManifoldsPython
یا مثلا من در ازای تبلیغ یک سایتی که مبلغی میگیرم, اگه view سایتم رو فیک بزنم چطور سایت advertising agency متوجه میشه؟
یا چطور یک سایت vote counting متوجه میشه که شما دارین دوباره با یک session id دیگه vote میدین؟
اگه فکر میکنید با استفاده از incognito و پروکسی/وی پی ان, از دستشون فرار میکنید کاملا اشتباه میکنید.
این دیاگرام, نحوه پیاده سازی همچین سیستم اهراز حویت رو به شما میده که هم تو سرور ساید هست و هم تو کلاینت, و بعضی از use case های مختلف رو نشون میده.
تو پروداکت های ایرانی به شخصه ندیدم از همچین سرویسی استفاده شه, در صورتی که خیلی جاها میتونه بسیار به درد بخور باشه ✌️
@ManifoldsPython
👍4
Python BackendHub
سلام! مانی هستم, فاندر دو تا استارت آپ, از سال 2020 برنامه نویسی میکنم, از همون روز اول, از اولین تابعی که نوشتم برای پروژه استارت آپم بوده تا 2023. اواسط سال 2023 تصمیم گرفتم که کار شرکتی انجام بدم, برای همین الان تحت پوزیشن software engineer مشغول هستم.…
قول دادم که اگه گیت هاب این پروژه به 100 ستاره برسه چند تا سایت اضافه کنم
کامنت کنید کدوم سایتا اضافه شن
چند سایتی که تو نظر خودم بود:
glassdoor.com
Indeed.com
frgconsulting.com
quera.org
jobinja.com
البته رو quera یکم شک دارم چون بنظرم ارزش effort ای که میذارم روش رو نداره کلا 4-5 آگهی کل روز پست میشه...
سایت دیگه ای مد نظرتون هست کامنت کنید ✌️
@ManifoldsPython
کامنت کنید کدوم سایتا اضافه شن
چند سایتی که تو نظر خودم بود:
glassdoor.com
Indeed.com
frgconsulting.com
quera.org
jobinja.com
البته رو quera یکم شک دارم چون بنظرم ارزش effort ای که میذارم روش رو نداره کلا 4-5 آگهی کل روز پست میشه...
سایت دیگه ای مد نظرتون هست کامنت کنید ✌️
@ManifoldsPython
❤2👍1
قضیه dry فقط به OOP ختم نمیشه و بنظرم باید هرجایی و تو هر بعدی که به نفعتونه انجام شه. تایم و زمان ما با ارزش ترین داراییمون هست.
میخواد حالا این برای job seeking باشه, یا هر چیز دیگه ای. هر تسکی که حساسیت خیلی بالای نداره و جنبه یادگیری نداره, اگه بیش از 3 بار دارین انجامش میدین و بیش از چند دقیقه هم هربار طول میکشه پس قطعا مسیر رو اشتباه رفتین.
این اصل زندگی من بوده همیشه و اگه کار هایی که 3 سال پیش میکردم رو امروز اتومیت شده نداشتم طی روز 1 ساعت وقتم نداشتم!
میخواد حالا این برای job seeking باشه, یا هر چیز دیگه ای. هر تسکی که حساسیت خیلی بالای نداره و جنبه یادگیری نداره, اگه بیش از 3 بار دارین انجامش میدین و بیش از چند دقیقه هم هربار طول میکشه پس قطعا مسیر رو اشتباه رفتین.
این اصل زندگی من بوده همیشه و اگه کار هایی که 3 سال پیش میکردم رو امروز اتومیت شده نداشتم طی روز 1 ساعت وقتم نداشتم!
برای مهاجرت حتما دقت کردین که از هر 5 تا آگهی, 4 تاشون یا GCP میخوان یا AWS.
هر جفت سرویس ها تو ایران تحریمن, حالا راه حل چیه؟
یک سایتی هست به اسم
acloudguru.com
همه جور دوره ای داره, شما اشتراکش رو میخرین که قیمتش طی دو پلن یکی 30 دلار و یکی 40 دلاره. دوره هاش کاملا interactive هست و بهتون دسترسی کامل میده به سرویس AWS و سایتشم کاملا معتبره.
سایت های مختلفی هم هستند که براتون پرداخت های ارزی رو انجام میدن, که اگه اشتباه نکنم ایرانی کارت یکی از اون سایت هاست.
هر جفت سرویس ها تو ایران تحریمن, حالا راه حل چیه؟
یک سایتی هست به اسم
acloudguru.com
همه جور دوره ای داره, شما اشتراکش رو میخرین که قیمتش طی دو پلن یکی 30 دلار و یکی 40 دلاره. دوره هاش کاملا interactive هست و بهتون دسترسی کامل میده به سرویس AWS و سایتشم کاملا معتبره.
سایت های مختلفی هم هستند که براتون پرداخت های ارزی رو انجام میدن, که اگه اشتباه نکنم ایرانی کارت یکی از اون سایت هاست.
👍4
اگه پروداکتی نوشتین که میبینید gapای از مارکت رو پر میکنه و میخواین معرفیش کنید, به جز linkedin یکی از OP ترین سایت ها درواقع hackers new هست
ycombinator.com
کافیه یک کراولر بنویسید که پستتون رو هی repost کنه با تغییرات کم که اسپم شناسایی نشه و هر 10-15 مین یک دفعه ریپست شه.
شایدم خودم اینکارو کردم 😅
ycombinator.com
کافیه یک کراولر بنویسید که پستتون رو هی repost کنه با تغییرات کم که اسپم شناسایی نشه و هر 10-15 مین یک دفعه ریپست شه.
شایدم خودم اینکارو کردم 😅
😁2👎1
من همیشه به یک چیزی اعتقاد دارم و آن، دید مهندسی است. از خصوصیات مفید و بزرگ دانشگاه خوب رفتنم، همین دید مهندسی است.
حالا این دید مهندسی یعنی چی؟
یعنی شما وقتی بدونید memory management چیست و GC چه کاری تو پایتون انجام میدهد، باعث میشود کدی که مینویسید، memory friendlyتر باشد.
یا وقتی SQL بلدید و PostgreSQL هم بلدید، باعث میشود خیلی وقتا query بنویسید که به جای ۳ بار هیت، یک هیت به دیتابیس بزند. out of box ترش این است که اگر query که میزنید، read هست، چند تا read replication بسازید و horizentonal scaling انجام دهید تا سرعت query بهتر شود. اگر میبینید query که میزنید، مثلاً ۱۰ درصد ریزالت کل دیتابیستون است و حجیم است، از طرفی مثلاً ۲ تا column خیلی استفاده میشود توی آن query، آن وقت میتوانید ترکیب آن دو تا column را ایندکس کنید تا پرفورمنس بهتری بگیرید. اما اگر ریزالت برگشتی ۷۰ درصد دیتابیستون باشد، آن موقع ایندکسها سربار دیتابیستون میشوند و نه تنها کمک نمیکنند بلکه سرعت شما را هم کاهش میدهند.
به این میگویند دید مهندسی. یعنی بدانید از چه چیزی کجا و به چه اندازهای استفاده کنید.
همه اینها را گفتم تا برسم به این کتاب:
https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable/dp/1449373321
این کتاب به شما یک دید مهندسی فوقالعاده میدهد. تازه شروع کردم و میتونم بگم محشره ✌️
حالا این دید مهندسی یعنی چی؟
یعنی شما وقتی بدونید memory management چیست و GC چه کاری تو پایتون انجام میدهد، باعث میشود کدی که مینویسید، memory friendlyتر باشد.
یا وقتی SQL بلدید و PostgreSQL هم بلدید، باعث میشود خیلی وقتا query بنویسید که به جای ۳ بار هیت، یک هیت به دیتابیس بزند. out of box ترش این است که اگر query که میزنید، read هست، چند تا read replication بسازید و horizentonal scaling انجام دهید تا سرعت query بهتر شود. اگر میبینید query که میزنید، مثلاً ۱۰ درصد ریزالت کل دیتابیستون است و حجیم است، از طرفی مثلاً ۲ تا column خیلی استفاده میشود توی آن query، آن وقت میتوانید ترکیب آن دو تا column را ایندکس کنید تا پرفورمنس بهتری بگیرید. اما اگر ریزالت برگشتی ۷۰ درصد دیتابیستون باشد، آن موقع ایندکسها سربار دیتابیستون میشوند و نه تنها کمک نمیکنند بلکه سرعت شما را هم کاهش میدهند.
به این میگویند دید مهندسی. یعنی بدانید از چه چیزی کجا و به چه اندازهای استفاده کنید.
همه اینها را گفتم تا برسم به این کتاب:
https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable/dp/1449373321
این کتاب به شما یک دید مهندسی فوقالعاده میدهد. تازه شروع کردم و میتونم بگم محشره ✌️
👍5
Forwarded from 𝘤𝘢𝘭𝘭 𝘮𝘦 𝘵𝘰𝘳𝘪
This media is not supported in your browser
VIEW IN TELEGRAM
01 Refresh your resume in 30 minutes
Forwarded from 𝘤𝘢𝘭𝘭 𝘮𝘦 𝘵𝘰𝘳𝘪
This media is not supported in your browser
VIEW IN TELEGRAM
02 Purpose of a resume
Forwarded from 𝘤𝘢𝘭𝘭 𝘮𝘦 𝘵𝘰𝘳𝘪
This media is not supported in your browser
VIEW IN TELEGRAM
03 What recruiters are looking for
Forwarded from 𝘤𝘢𝘭𝘭 𝘮𝘦 𝘵𝘰𝘳𝘪
This media is not supported in your browser
VIEW IN TELEGRAM
04 Get past the ATS
Forwarded from 𝘤𝘢𝘭𝘭 𝘮𝘦 𝘵𝘰𝘳𝘪
This media is not supported in your browser
VIEW IN TELEGRAM
06 Step 1 Choose your target role