Forwarded from 𝘤𝘢𝘭𝘭 𝘮𝘦 𝘵𝘰𝘳𝘪
This media is not supported in your browser
VIEW IN TELEGRAM
09 How to align your resume to a job denoscription
Forwarded from 𝘤𝘢𝘭𝘭 𝘮𝘦 𝘵𝘰𝘳𝘪
This media is not supported in your browser
VIEW IN TELEGRAM
10 Name and contact info on a resume
Forwarded from 𝘤𝘢𝘭𝘭 𝘮𝘦 𝘵𝘰𝘳𝘪
This media is not supported in your browser
VIEW IN TELEGRAM
11 Summary and key skills on your resume
👍1
Forwarded from 𝘤𝘢𝘭𝘭 𝘮𝘦 𝘵𝘰𝘳𝘪
Media is too big
VIEW IN TELEGRAM
12 Professional experiences on a resume
👍1
Forwarded from 𝘤𝘢𝘭𝘭 𝘮𝘦 𝘵𝘰𝘳𝘪
Media is too big
VIEW IN TELEGRAM
13 Education and additional info on a resume
سلام دوستان, یک repo ساختم راجب تکنیک های رزومه نویسی که به صورت بخش بخش از تو سایتای مختلف میخوندم و یاد گرفتم یا از میتینگ هایی که داشتم و صحبتایی که کردم و تجاربم یاد گرفتم. خوشبختانه با این تکنیک هایی که یاد گرفتم تونستم تو 3 هفته نزدیک 10 مصاحبه مختلف بگیرم که یکیش استیج آخره و احتمالا تبدیل به جاب آفر شه . و حالا قصد دارم تجارب اندک خودمو هم باهاتون به اشتراک بذارم.
تو این ریپو, حتی رزومه های خوبم به اشتراک میذاریم. ممنون میشم contribute کنید, رزومتون رو اضافه کنید و حمایت کنید و ستاره بدین. پیشنهادی چیزی هم داشتین حتما بگین ✌️
https://github.com/ManiMozaffar/awesome-resumes
@ManifoldsPython
تو این ریپو, حتی رزومه های خوبم به اشتراک میذاریم. ممنون میشم contribute کنید, رزومتون رو اضافه کنید و حمایت کنید و ستاره بدین. پیشنهادی چیزی هم داشتین حتما بگین ✌️
https://github.com/ManiMozaffar/awesome-resumes
@ManifoldsPython
GitHub
GitHub - ManiMozaffar/awesome-resumes: Create resumes and CV with awesome-resumes. Practical tips, guidelines, guide, examples…
Create resumes and CV with awesome-resumes. Practical tips, guidelines, guide, examples and documentation for all IT fields - ManiMozaffar/awesome-resumes
👍4❤2
یکی از دوره هایی که هر بک اند کاری باید ببینه :)
https://git.ir/p/xnEZB
این تیکه ای که تو عکس گذاشتم رو اصلا فراموش نکنید. مخصوصا قسمت 229. واقعا جذابه 👌
@ManifoldsPython
https://git.ir/p/xnEZB
این تیکه ای که تو عکس گذاشتم رو اصلا فراموش نکنید. مخصوصا قسمت 229. واقعا جذابه 👌
@ManifoldsPython
چند هفته قبل یک سمینار یک ساعته داشتم در خصوص استفاده از chatgpt میتونید از لینک زیر خلاصش رو بخونید.
https://github.com/ManiMozaffar/use-chatgpt-like-a-pro
حتی میتونید شما data های روز رو اینجکت کنید. مثلا ذاتا برای chatgpt جنگو نسخه ۴ تعریف نشده ولی میتونید براش تعریف کنید.
اگه دسترسی ندارین به سایت chatgpt یا میخواین از مدل turbo 3.5 استفاده کنید که تو حالت رایگان ازش استفاده نمیشه میتونید از theb.ai استفاده کنید. یکی از کامل ترین سایت های alternative ای هست که دیدم دقیقا مارک داون های مختلف chatgpt مثل تیبل و کد نویسی رو ساپورت میکنه و خود صاحبشم هزینه turbo 3.5 رو از جیبش میده, حالا به چه هدفی رو اطلاعی ندارم :))
الان ابزار های بهتری اومده که با استفاده از همون API چت جی پی تی پیاده شده که بهترینش autogpt هست. برای این نیاز به openai api key دارین که فقط تو اکانت پرمیوم 20 دلاری فکر کنم بشه گرفت.
https://github.com/Significant-Gravitas/Auto-GPT
مثال: اگه برای یک شرکت دارین چت بات یا پشتیبانی زنده با chatgpt مینویسید یادتون باشه که مدل هارو بخونید و راجب هر کدوم خوب تحقیق کنید. صرفا chatgpt 3.5 turbo بهترین نیست و اگه prompt طولانی دارین و میخواین مثل تپسی چت باتتون تبلیغ اسنپ رو نکنه باید از Fine-tuning model استفاده کنید که هم هزینه رو کاهش میده و هم قیمتش کمتر میشه و هم پرفومنس بهتری داره براتون و هم جوابای سمی به کاربراتون نمیده.
https://platform.openai.com/docs/models
@ManifoldsPython
https://github.com/ManiMozaffar/use-chatgpt-like-a-pro
حتی میتونید شما data های روز رو اینجکت کنید. مثلا ذاتا برای chatgpt جنگو نسخه ۴ تعریف نشده ولی میتونید براش تعریف کنید.
اگه دسترسی ندارین به سایت chatgpt یا میخواین از مدل turbo 3.5 استفاده کنید که تو حالت رایگان ازش استفاده نمیشه میتونید از theb.ai استفاده کنید. یکی از کامل ترین سایت های alternative ای هست که دیدم دقیقا مارک داون های مختلف chatgpt مثل تیبل و کد نویسی رو ساپورت میکنه و خود صاحبشم هزینه turbo 3.5 رو از جیبش میده, حالا به چه هدفی رو اطلاعی ندارم :))
الان ابزار های بهتری اومده که با استفاده از همون API چت جی پی تی پیاده شده که بهترینش autogpt هست. برای این نیاز به openai api key دارین که فقط تو اکانت پرمیوم 20 دلاری فکر کنم بشه گرفت.
https://github.com/Significant-Gravitas/Auto-GPT
مثال: اگه برای یک شرکت دارین چت بات یا پشتیبانی زنده با chatgpt مینویسید یادتون باشه که مدل هارو بخونید و راجب هر کدوم خوب تحقیق کنید. صرفا chatgpt 3.5 turbo بهترین نیست و اگه prompt طولانی دارین و میخواین مثل تپسی چت باتتون تبلیغ اسنپ رو نکنه باید از Fine-tuning model استفاده کنید که هم هزینه رو کاهش میده و هم قیمتش کمتر میشه و هم پرفومنس بهتری داره براتون و هم جوابای سمی به کاربراتون نمیده.
https://platform.openai.com/docs/models
@ManifoldsPython
👍1
Forwarded from Meysam
چت جی پی پلاگین سرچ رو برای کاربرای پلاس فعال داره، یعنی چیزی بپرسید میره سرچ میکنه جواب بهتر میده.
حتی اگه مربوط به زمانی بعد از تاریخ ترینش باشه.
(بعضیا هنوز ندارنش، شاید به مرور برای همه موقعیت های مکانی ریلیز میشه)
حتی اگه مربوط به زمانی بعد از تاریخ ترینش باشه.
(بعضیا هنوز ندارنش، شاید به مرور برای همه موقعیت های مکانی ریلیز میشه)
یک تکنیک خیلی باحال امروز کشف کردم و اونم استفاده از chatgpt بود برای اینکه رزومتون رو کاستومایز تر کنید.
مثلا برای این شغل به من 8 از 10 داده و گفته این موارد رو missing داری ✌️
خیلی بهتون کمک میکنه که سریع برید سراغ major point هایی که میتونید برای اون شغل کاستومایز کنید.
خلاصه اینکه از chatgpt غافل نشید 😅
پی نوشت: اگه متوجه نشدین داستان چیه حتما ریپو زیر بخش snipe advertisement رو بخونید.
https://github.com/ManiMozaffar/awesome-resumes
@ManifoldsPython
مثلا برای این شغل به من 8 از 10 داده و گفته این موارد رو missing داری ✌️
خیلی بهتون کمک میکنه که سریع برید سراغ major point هایی که میتونید برای اون شغل کاستومایز کنید.
خلاصه اینکه از chatgpt غافل نشید 😅
پی نوشت: اگه متوجه نشدین داستان چیه حتما ریپو زیر بخش snipe advertisement رو بخونید.
https://github.com/ManiMozaffar/awesome-resumes
@ManifoldsPython
👍1
نکته: سعی کنید تو جمله بندی از chatgpt استفاده نکنید یا اخرش از AI های دیگه هم برای rephrase متنتون استفاده کنید.
دوستانی که به دلیل تحریم دسترسی ندارن به GCP یا AWS
یکی از راه هایی که میتونید دسترسی مستقیم به صورت رایگان بگیرین 30 day challenge هست
https://go.qwiklabs.com/30-day-challenge-120
معمولا qwiklabs یا سایت های مشابه همچین چیزی میذارن که به شما 30 روز تریال مجانی همراه با اموزش و به صورت interactive با دسترسی مستقیم به cloud های مختلف میدن که متاسفانه اینی که براتون فرستادم ژانویه تموم شده ولی احتمالا بازم در آینده بذارن. فقط کافیه تو چند پلتفورم دنبالشون کنید تا بهتون این دسترسی رو بدن.
تو گوگلم بگردین learning platform های مختلف برای جذب مخاطب زیاد از این حرکتا میزنن
@ManifoldsPython
یکی از راه هایی که میتونید دسترسی مستقیم به صورت رایگان بگیرین 30 day challenge هست
https://go.qwiklabs.com/30-day-challenge-120
معمولا qwiklabs یا سایت های مشابه همچین چیزی میذارن که به شما 30 روز تریال مجانی همراه با اموزش و به صورت interactive با دسترسی مستقیم به cloud های مختلف میدن که متاسفانه اینی که براتون فرستادم ژانویه تموم شده ولی احتمالا بازم در آینده بذارن. فقط کافیه تو چند پلتفورم دنبالشون کنید تا بهتون این دسترسی رو بدن.
تو گوگلم بگردین learning platform های مختلف برای جذب مخاطب زیاد از این حرکتا میزنن
@ManifoldsPython
❤2👍1
اگه از دوره دیدن خوشتون میاد, این 4 دوره مجموعا 100 ساعته. به هیچ وجه از دستش ندین, خیلی فوق العاده هست و سبک تدریس مدرسشو خیلی دوست دارم, پروژه تمرینی هم داره. نمیدونم پروژه های تمرینیش تو git.ir باشه یا نه ولی قاعدتا باید باشه.
بدون شک, بهترین مدرسی هست که دیدم. از نمرات دوره باید این موضوع بدیهی باشه!
لینک
@ManiFoldsPython
بدون شک, بهترین مدرسی هست که دیدم. از نمرات دوره باید این موضوع بدیهی باشه!
لینک
@ManiFoldsPython
👍7👎1
از همین کورس,
یک بحثی تو پایتون هست به نام circular reference که خلاصه بخوام بگم میشه همچین سناریویی:
خب اگه دو آبجکتی که دیستراکتر دارن داخل circular reference, برای پاک کردن حتی یکیشون از کجا gc میفهمه که اول باید کدوم دیستراکتر رو اجرا کنه؟ تو ورژن قبل تر از پایتون 3.4, میگفتن بیخیال پاکش نمیکنیم این uncollectable هست و هرچی از این reference ها بیشتر میشد باعث مموری لیک بیشتری میشد تا جایی که کار دستتون میداد این مموری لیک.
حالا برای اصلاحش تو ورژن 3.4 چیکار کردن؟ اومدن از الگوریتمی به اسم Deferred Finalization استفاده کردن که تو لینک زیر مفصل تر توضیح داده و میتونید بخونید, امیدوارم که کنجکاوتون کرده باشم 😁
لینک
یک بحثی تو پایتون هست به نام circular reference که خلاصه بخوام بگم میشه همچین سناریویی:
class MyClass:حالا فکر کنید داندر متود del رو داره کلسمون. (دیستراکتر) که معمولا برای clean up میتونیم تعریف کنیم مثلا برای بستن کانکشن دیتابیس یا پاک کردن فایل یا..
def __init__(self, value):
self.value = value
self.next = None
def set_next(self, obj):
self.next = obj
obj1 = MyClass(1)
obj2 = MyClass(2)
obj1.set_next(obj2)
obj2.set_next(obj1)
خب اگه دو آبجکتی که دیستراکتر دارن داخل circular reference, برای پاک کردن حتی یکیشون از کجا gc میفهمه که اول باید کدوم دیستراکتر رو اجرا کنه؟ تو ورژن قبل تر از پایتون 3.4, میگفتن بیخیال پاکش نمیکنیم این uncollectable هست و هرچی از این reference ها بیشتر میشد باعث مموری لیک بیشتری میشد تا جایی که کار دستتون میداد این مموری لیک.
حالا برای اصلاحش تو ورژن 3.4 چیکار کردن؟ اومدن از الگوریتمی به اسم Deferred Finalization استفاده کردن که تو لینک زیر مفصل تر توضیح داده و میتونید بخونید, امیدوارم که کنجکاوتون کرده باشم 😁
لینک
👍6
https://github.com/coditori/highly-skilled-job-offers
یک ریپو خیلی خوب برای گرفتن جاب آفر بیشتر و تجربیات ario جان در همین زمینه.
یک ریپو خیلی خوب برای گرفتن جاب آفر بیشتر و تجربیات ario جان در همین زمینه.
GitHub
GitHub - coditori/highly-skilled-job-offers: Sharing some info around job offers and interviews preparations
Sharing some info around job offers and interviews preparations - coditori/highly-skilled-job-offers
👍1
Python BackendHub
از همین کورس, یک بحثی تو پایتون هست به نام circular reference که خلاصه بخوام بگم میشه همچین سناریویی: class MyClass: def __init__(self, value): self.value = value self.next = None def set_next(self, obj): self.next = obj obj1…
از من سوال پرسیدن که ایا این همون Generational GC نیست؟
تفاوت اصلی اینجاست که در Generational GC، تمرکز بیشتر روی مدیریت حافظه برای object با طول عمر کوتاه تره. برای همین به جای اینکه تمامی object ها (از جمله آنهایی که lifetime زیادی داشتن) مورد بررسی قرار بگیرن, اونایی که لایف تایم کوتاه تری داره بیشتر مورد بررسی قرار میگیرن تا مدیریت حافظه بهینه تر پیاده سازی شه. اتفاقا تو مموری لیک هم کاربرد داره و جلوگیری میکنه چندین جا ولی اینجا نه اصلا ربطی نداره.
ولی Deferred Finalization بیشتر یک تکنیکه که اجازه میده gc میاد ابجکت هایی که داندر متود دیلیت یا همون دیستراکتر رو دارن به صورت امن و سیف کالکت کنه که تا اونجایی که من فهمیدم میاد از نسخه 3.4 گاربیج کالکتور میاد ابجکت هارو دو دسته میکنه. اونایی که del دارن و اونایی که ندارن. اونایی که ندارن که هیچ تکلیفشون معلومه.
اونایی که دارن, میاد تلاش میکنه که کانکشن دو آبجکت رو از بین ببره. چطوری؟ از دو طرف چک میکنه که از کدوم طرف اون آبجکت در دسترس هست. از اون طرفی که تلاشش موفقیت امیز بود وارد میشه و reference cycle رو کلا از بین میبره.
وقتی دو تا ابجکت دیگه reachable نبودن حالا میاد gc جفتشونو جدا جدا کالت میکنه و حالا del رو اجرا میکنه.
حالا قسمت جذاب اینجاست, اگه تلاش کرد ولی نشد چی؟
اگه نشد یعنی اینکه این دوتا دیستراکتور این دو آبجکت باهم ارتباط داشتن. اون موقع مقصر خودتونید یعنی pattern design ای استفاده کردین که تو کار gc تداخل ایجاد میکنه و مموری لیک میشه چون وقتی gc نتونه این reference cycle رو از بین ببره اونوقت دیگه مموری لیک داریم و خدا اون روزو نیاره که بخواین memory leak رو دیباگ کنید 😅
برای همین میگن که خیلی دیستراکتور reliable نیست و وقتی ازش استفاده میکنید باید حداقل dependacy رو داشته باشه رو variable و ابجکت های دیگه.
تفاوت اصلی اینجاست که در Generational GC، تمرکز بیشتر روی مدیریت حافظه برای object با طول عمر کوتاه تره. برای همین به جای اینکه تمامی object ها (از جمله آنهایی که lifetime زیادی داشتن) مورد بررسی قرار بگیرن, اونایی که لایف تایم کوتاه تری داره بیشتر مورد بررسی قرار میگیرن تا مدیریت حافظه بهینه تر پیاده سازی شه. اتفاقا تو مموری لیک هم کاربرد داره و جلوگیری میکنه چندین جا ولی اینجا نه اصلا ربطی نداره.
ولی Deferred Finalization بیشتر یک تکنیکه که اجازه میده gc میاد ابجکت هایی که داندر متود دیلیت یا همون دیستراکتر رو دارن به صورت امن و سیف کالکت کنه که تا اونجایی که من فهمیدم میاد از نسخه 3.4 گاربیج کالکتور میاد ابجکت هارو دو دسته میکنه. اونایی که del دارن و اونایی که ندارن. اونایی که ندارن که هیچ تکلیفشون معلومه.
اونایی که دارن, میاد تلاش میکنه که کانکشن دو آبجکت رو از بین ببره. چطوری؟ از دو طرف چک میکنه که از کدوم طرف اون آبجکت در دسترس هست. از اون طرفی که تلاشش موفقیت امیز بود وارد میشه و reference cycle رو کلا از بین میبره.
وقتی دو تا ابجکت دیگه reachable نبودن حالا میاد gc جفتشونو جدا جدا کالت میکنه و حالا del رو اجرا میکنه.
حالا قسمت جذاب اینجاست, اگه تلاش کرد ولی نشد چی؟
اگه نشد یعنی اینکه این دوتا دیستراکتور این دو آبجکت باهم ارتباط داشتن. اون موقع مقصر خودتونید یعنی pattern design ای استفاده کردین که تو کار gc تداخل ایجاد میکنه و مموری لیک میشه چون وقتی gc نتونه این reference cycle رو از بین ببره اونوقت دیگه مموری لیک داریم و خدا اون روزو نیاره که بخواین memory leak رو دیباگ کنید 😅
برای همین میگن که خیلی دیستراکتور reliable نیست و وقتی ازش استفاده میکنید باید حداقل dependacy رو داشته باشه رو variable و ابجکت های دیگه.
👍1
حالا برسیم به چالش پروژش که برای من بود و هنوزم هست :))
https://github.com/ultrafunkamsterdam/undetected-chromedriver
این لایبری رو میبینید؟ جناب آقای ultrafunkamsterdam که اونرشیپشو دارن, بسیارم تو حوضه خودشون مهارت دارن ولی متاسفانه هرجا دستشون میرسیده اومدن از دیستراکتور استفاده کردن. نتیجش چی شده؟ سوکتایی که تو chrome devtool protocol باز میشن دیگه بسته نمیشن :)) چرا؟ چون دیستراکتور هیچوقت اجرا نمیشه و gc هیچوقت کالتکشون نمیکنه. چه اتفاقی میفته ؟ کانکشن لیک میشه و port exhaustion, تمام پورت های سیستم مشغول میشه و شما تا اسکریپت رو متوقف نکنی و دوباره راه نندازی کار نخواهد کرد.
من چیکار کردم؟ process id رو میفرستم سمت سرور خودم بعد با bash noscript چک میکنم که ایا این process id باید سوکتاش بسته میشده یا نه؟ اگه بسته میشده که force kill میکنم. اگه نه در حال رانه که کاری ندارم باهاش.
خلاصه کلام, تا وقتی memory management و gc رو خوب تو پایتون درک نکردین با __del__ ور نرید 😁
و سورس کد لایبری هایی که هم استفاده میکنید و contributor کمی داره حتما بخونید. یا حداقل متود هایی که ازش استفاده میکنید یا کلس هایی که استفاده میکنید. برای همین همیشه توصیه میکنم برای بحث data scraping با مرورگر اگه میخواین دیتکت نشین از playwright استفاده کنید مثل پروژه لینکدین من.
چون بخواین از سلنیوم استفاده کنید یا باید
1. کد کثیف این آقا رو تمیز کنید که خودش زمان زیادی میبره
2. یا باید چرخه رو دوباره درست کنید و یک لایبری شبیه لایبری ایشون درست کنید
(حالا این یک قسمت داستانه, بقیه قسمتای سمش رو باید برید تو سورس کد بخونید. هردفعه میاد یک کروم دانلود میکنه بعد آپش میکنه :)) خب مرد مومن همونو ذخیره کن رو هارد دیسک که برای بالا اومدن هر کروم چند دقیقه معطل نباشیم. چرا اینکارو کرده؟ خدا میدونه. البته executable path هم میگیره که دیگه دانلود نمیکنه ولی اونوقت کروم آپدیت شه کرومتون بالا نمیاد. اون موقع حالا باید bash اسکریپت بنویسید که جلوی آپدیت کروم رو بگیره که خود این موضوع در تضاده با هدف اصلی لایبری, که میشه دیتکت نشدن! )
https://github.com/ultrafunkamsterdam/undetected-chromedriver
این لایبری رو میبینید؟ جناب آقای ultrafunkamsterdam که اونرشیپشو دارن, بسیارم تو حوضه خودشون مهارت دارن ولی متاسفانه هرجا دستشون میرسیده اومدن از دیستراکتور استفاده کردن. نتیجش چی شده؟ سوکتایی که تو chrome devtool protocol باز میشن دیگه بسته نمیشن :)) چرا؟ چون دیستراکتور هیچوقت اجرا نمیشه و gc هیچوقت کالتکشون نمیکنه. چه اتفاقی میفته ؟ کانکشن لیک میشه و port exhaustion, تمام پورت های سیستم مشغول میشه و شما تا اسکریپت رو متوقف نکنی و دوباره راه نندازی کار نخواهد کرد.
من چیکار کردم؟ process id رو میفرستم سمت سرور خودم بعد با bash noscript چک میکنم که ایا این process id باید سوکتاش بسته میشده یا نه؟ اگه بسته میشده که force kill میکنم. اگه نه در حال رانه که کاری ندارم باهاش.
خلاصه کلام, تا وقتی memory management و gc رو خوب تو پایتون درک نکردین با __del__ ور نرید 😁
و سورس کد لایبری هایی که هم استفاده میکنید و contributor کمی داره حتما بخونید. یا حداقل متود هایی که ازش استفاده میکنید یا کلس هایی که استفاده میکنید. برای همین همیشه توصیه میکنم برای بحث data scraping با مرورگر اگه میخواین دیتکت نشین از playwright استفاده کنید مثل پروژه لینکدین من.
چون بخواین از سلنیوم استفاده کنید یا باید
1. کد کثیف این آقا رو تمیز کنید که خودش زمان زیادی میبره
2. یا باید چرخه رو دوباره درست کنید و یک لایبری شبیه لایبری ایشون درست کنید
(حالا این یک قسمت داستانه, بقیه قسمتای سمش رو باید برید تو سورس کد بخونید. هردفعه میاد یک کروم دانلود میکنه بعد آپش میکنه :)) خب مرد مومن همونو ذخیره کن رو هارد دیسک که برای بالا اومدن هر کروم چند دقیقه معطل نباشیم. چرا اینکارو کرده؟ خدا میدونه. البته executable path هم میگیره که دیگه دانلود نمیکنه ولی اونوقت کروم آپدیت شه کرومتون بالا نمیاد. اون موقع حالا باید bash اسکریپت بنویسید که جلوی آپدیت کروم رو بگیره که خود این موضوع در تضاده با هدف اصلی لایبری, که میشه دیتکت نشدن! )
GitHub
GitHub - ultrafunkamsterdam/undetected-chromedriver: Custom Selenium Chromedriver | Zero-Config | Passes ALL bot mitigation systems…
Custom Selenium Chromedriver | Zero-Config | Passes ALL bot mitigation systems (like Distil / Imperva/ Datadadome / CloudFlare IUAM) - ultrafunkamsterdam/undetected-chromedriver