توسعه دهندگان
سوال مصاحبه برای توسعهدهنده ارشد فرانتاند
سؤال مصاحبه برای سطح سنیوره و میدلول:
پروژهتون هنگام Build شدن خیلی کند انجام میشه. برای افزایش سرعت Build چه مراحلی رو انجام میدید؟
✍🏽 ¦ @DevYara ¦ #سوال_مصاحبه
پروژهتون هنگام Build شدن خیلی کند انجام میشه. برای افزایش سرعت Build چه مراحلی رو انجام میدید؟
✍🏽 ¦ @DevYara ¦ #سوال_مصاحبه
👍17
هیچوقت نمیفهمی چقدر چیزی رو بلد نیستی، تا وقتی که شروع به کدنویسی کنی!
✍🏽 ¦ @DevYara
✍🏽 ¦ @DevYara
👍45🙈2👌1
گیفت من سمبل موس داره 🫱🏽🫲🏼👨🏻💻
t.me/nft/RecordPlayer-9886
t.me/nft/RecordPlayer-9886
Telegram
Record Player #9886
Model: Neo-Noir
Backdrop: Hunter Green
Symbol: PC Mouse
Gifted to Afshin Karimi on 22 Dec 2024
Backdrop: Hunter Green
Symbol: PC Mouse
Gifted to Afshin Karimi on 22 Dec 2024
1🔥10👍3
توسعه دهندگان
سؤال مصاحبه برای سطح سنیوره و میدلول:
سوال مصاحبه برای یک توسعهدهنده ارشد جاوااسکریپت:
"نشت حافظه" (Memory Leak) در برنامههای JS/TS چه زمانی رخ میدهد و چگونه میتوان از آن جلوگیری کرد؟
✍🏽 ¦ @DevYara ¦ #سوال_مصاحبه
"نشت حافظه" (Memory Leak) در برنامههای JS/TS چه زمانی رخ میدهد و چگونه میتوان از آن جلوگیری کرد؟
✍🏽 ¦ @DevYara ¦ #سوال_مصاحبه
🙉14❤3👍1
درباره (Vibe Coding) - یک حرف خوب، یک حرف بد:
نکته خوب:
- میشه با اون محصولی عالی در سطح MVP ساخت، حتی با طراحی فوقالعاده.
نکته بد:
- کدها ممکنه نامرتب شود و اصلاحشان زمان زیادی بگیره. هرچه برنامه بزرگتر شه، هوش مصنوعی گیجتر میشه.
نکته :
اگر برنامهنویس خوبی نباشی، استفاده از این ابزارها سخته. حتی برای کار با هوش مصنوعی هم باید مهارت برنامهنویسی قوی داشته باشی!
هوش مصنوعی کد مینویسه، اما برنامهنویسی یک سطح کاملاً متفاوت است...
✍🏽 ¦ @DevYara
نکته خوب:
- میشه با اون محصولی عالی در سطح MVP ساخت، حتی با طراحی فوقالعاده.
نکته بد:
- کدها ممکنه نامرتب شود و اصلاحشان زمان زیادی بگیره. هرچه برنامه بزرگتر شه، هوش مصنوعی گیجتر میشه.
نکته :
اگر برنامهنویس خوبی نباشی، استفاده از این ابزارها سخته. حتی برای کار با هوش مصنوعی هم باید مهارت برنامهنویسی قوی داشته باشی!
هوش مصنوعی کد مینویسه، اما برنامهنویسی یک سطح کاملاً متفاوت است...
✍🏽 ¦ @DevYara
🙉80👍13🙈10🙊6👌3❤2💋2👎1👨💻1
توسعه دهندگان
درباره (Vibe Coding) - یک حرف خوب، یک حرف بد: نکته خوب: - میشه با اون محصولی عالی در سطح MVP ساخت، حتی با طراحی فوقالعاده. نکته بد: - کدها ممکنه نامرتب شود و اصلاحشان زمان زیادی بگیره. هرچه برنامه بزرگتر شه، هوش مصنوعی گیجتر میشه. نکته : اگر…
ری اکشن (🙉) ندید، ممنون!
🙉113🙊10🙈8💩5❤3🍌3
This media is not supported in your browser
VIEW IN TELEGRAM
مظلوم ترین برنامه دنیا...
✍🏽 ¦ @DevYara
✍🏽 ¦ @DevYara
🤣47❤4🔥1
❓ #چی_میدونی
تو همکاری تیمی با Git، همیشه یه دوراهی هست: Merge یا Rebase؟ کدومش رو ترجیح میدین؟ چرا؟ تمیزی تاریخچه مهمتره یا سادهتر بودن روند کار؟
🧠 تو چی میدونی؟ نظرت رو بگو، تجربهتو بنویس، با هم یاد میگیریم.
✍🏽 ¦ @DevYara
تو همکاری تیمی با Git، همیشه یه دوراهی هست: Merge یا Rebase؟ کدومش رو ترجیح میدین؟ چرا؟ تمیزی تاریخچه مهمتره یا سادهتر بودن روند کار؟
🧠 تو چی میدونی؟ نظرت رو بگو، تجربهتو بنویس، با هم یاد میگیریم.
✍🏽 ¦ @DevYara
👍11
درگیر اینکه کدوم IDE و کدوم ادیتور بهتره نباشه، باور کن همشون یه کار انجام میدن!
✍🏽 ¦ @DevYara
✍🏽 ¦ @DevYara
👍38⚡2👎2
This media is not supported in your browser
VIEW IN TELEGRAM
بدترین سوتی تون چی بوده؟
✍🏽 ¦ @DevYara
نکته:
یه اکستنشن تو VSCode هست که موقع لایو، (secret keys) رو مخفی میکنه!
extension: Dotenv
✍🏽 ¦ @DevYara
نکته:
یه اکستنشن تو VSCode هست که موقع لایو، (secret keys) رو مخفی میکنه!
extension: Dotenv
👍17🤣10
از زحمت کشیدن نترس!
توی مسیر یادگیری برنامهنویسی، همیشه یه عده هستن که فقط دنبال یادگیری نیستن؛ دنبال تجربهان، دنبال رشد واقعی. بهشون میگن Contributor — کسایی که وقتی یه پروژه نیاز به کمک داره، بدون هیچ چشمداشتی پا پیش میذارن و کمک میکنن.
جالبه بدونی خیلی از این آدما الان تبدیل شدن به برنامهنویسهای موفق. چرا؟ چون از تلاش کردن، حتی وقتی سودی براشون نداشته، فرار نکردن. چون فهمیدن تجربه و رشد، تو دل همون کارای بیدستمزد شکل میگیره.
پس اگه تو هم لبهی پرواز توی دنیای برنامهنویسیای، یه توصیه مهم:
از زحمت نکشیدن نترس؛ مخصوصاً وقتی کاریه که قراره بیشتر از پول، بهت ارزش بده.
همین کاراست که مسیرتو میسازه.
✍🏽 ¦ @DevYara
توی مسیر یادگیری برنامهنویسی، همیشه یه عده هستن که فقط دنبال یادگیری نیستن؛ دنبال تجربهان، دنبال رشد واقعی. بهشون میگن Contributor — کسایی که وقتی یه پروژه نیاز به کمک داره، بدون هیچ چشمداشتی پا پیش میذارن و کمک میکنن.
جالبه بدونی خیلی از این آدما الان تبدیل شدن به برنامهنویسهای موفق. چرا؟ چون از تلاش کردن، حتی وقتی سودی براشون نداشته، فرار نکردن. چون فهمیدن تجربه و رشد، تو دل همون کارای بیدستمزد شکل میگیره.
پس اگه تو هم لبهی پرواز توی دنیای برنامهنویسیای، یه توصیه مهم:
از زحمت نکشیدن نترس؛ مخصوصاً وقتی کاریه که قراره بیشتر از پول، بهت ارزش بده.
همین کاراست که مسیرتو میسازه.
✍🏽 ¦ @DevYara
👍38❤13
❓ #چی_میدونی
تو پروژههایی که از میکروسرویسها استفاده میشه، چطور ارتباط بین سرویسها رو مدیریت میکنید؟ از «GraphQL» برای API Gateway استفاده میکنید یا ترجیح میدید هر سرویس جداگانه با RESTful API ارتباط داشته باشه؟
🧠 تو چی میدونی؟ نظرت رو بگو، تجربهتو بنویس، با هم یاد میگیریم.
✍🏽❗️¦ @DevYara
تو پروژههایی که از میکروسرویسها استفاده میشه، چطور ارتباط بین سرویسها رو مدیریت میکنید؟ از «GraphQL» برای API Gateway استفاده میکنید یا ترجیح میدید هر سرویس جداگانه با RESTful API ارتباط داشته باشه؟
🧠 تو چی میدونی؟ نظرت رو بگو، تجربهتو بنویس، با هم یاد میگیریم.
✍🏽❗️¦ @DevYara
👍8
چرت ترین ایده رو به Chat GPT بگی نظرت چیه بدون تحلیل میگه "ایده خوبیه" نظرتو واقعیتو بگو پفیوز
✍🏽 ¦ @DevYara
✍🏽 ¦ @DevYara
👍31🤣10😁2👎1
یه جمله ای که الان شنیدم یه ایده میلیون دلاری از استاد دانشگاهمون
"میگه که در آینده نمیدونم اینا میخوان چی درست کنن مثلا میان سخت افزار رو حذف میکنن فقط میرن تو کار نرم افزار"
✍🏽 ¦ @DevYara
"میگه که در آینده نمیدونم اینا میخوان چی درست کنن مثلا میان سخت افزار رو حذف میکنن فقط میرن تو کار نرم افزار"
✍🏽 ¦ @DevYara
🤣35👍6
سؤال مصاحبه برای موقعیت Team Lead :
این یکی از سوالاتیست که ممکن است در مصاحبه موقعیت شغلی رهبر تیم (Team Lead) مطرح شود. هر کس میتواند بر اساس تجربه شخصی خودش به آن پاسخ دهد.
فرض کنید یکی از توسعهدهندگان تیم شما بهاشتباه اطلاعات حساس مانند لاگینها و رمزهای عبور را در محیط Production منتشر کرده است و شما پس از انتشار از این موضوع مطلع میشوید.
در چنین شرایطی، اقدامات بعدی شما چه خواهد بود؟
✍🏽 ¦ @DevYara ¦ #سوال_مصاحبه
این یکی از سوالاتیست که ممکن است در مصاحبه موقعیت شغلی رهبر تیم (Team Lead) مطرح شود. هر کس میتواند بر اساس تجربه شخصی خودش به آن پاسخ دهد.
فرض کنید یکی از توسعهدهندگان تیم شما بهاشتباه اطلاعات حساس مانند لاگینها و رمزهای عبور را در محیط Production منتشر کرده است و شما پس از انتشار از این موضوع مطلع میشوید.
در چنین شرایطی، اقدامات بعدی شما چه خواهد بود؟
✍🏽 ¦ @DevYara ¦ #سوال_مصاحبه
👍13
برخی نکات مهم و کمتر گفتهشده درباره زبانهای برنامهنویسی
(بر پایه مطالعه و تحلیل منابع مختلف)
در مسیر آشنایی با زبانهای مختلف برنامهنویسی، مفاهیمی دیده میشه که شاید تو نگاه اول ساده بهنظر بیان، اما بررسی عمیقترشون نتایج جالبی داره. اینجا چند تا از اون نکات رو مطرح میکنیم:
1. سادگی همیشه یک مزیت نیست
سادگی یک زبان کاملاً نسبیه. چیزی که برای یک فرد آسونه، ممکنه برای فرد دیگه چالشبرانگیز باشه. پس نمیشه سادگی رو بهعنوان معیار مطلق برای خوب یا بد بودن یک زبان دونست.
2. اعتماد به کد، فراتر از خود زبان
اینکه یک زبان قابل اعتماده، خیلی وقتها به مهارت برنامهنویس بستگی داره، نه صرفاً خود زبان. مثلاً با اینکه Haskell زبانی بسیار قویه، ممکنه خروجیهای ناامن هم با اون نوشته بشه، اگر توسعهدهنده باهاش آشنا نباشه.
3. خود زبان رو جدا از اکوسیستمش بشناسیم
خیلیها موقع مقایسه زبانها، بیشتر روی ابزارها و کتابخونهها تمرکز میکنن تا خود زبان. اما مهمه که اول ویژگیهای خود زبان رو بسنجیم، مثل نوع سیستم تایپ، شیوه بیان مفاهیم و سبک حل مسئله. اکوسیستم مهمه، اما نباید جای زبان رو بگیره.
4. تعداد بهتنهایی نشاندهنده کیفیت نیست
اینکه یه پکیج npm هزاران استار داره، لزوماً نشوندهنده امنیت یا کیفیت بالا نیست. همیشه بهتره کدها رو بررسی کرد، چون تجربه نشون داده که حتی محبوبترین پکیجها هم ممکنه آسیبپذیری داشته باشن.
5. پیچیدگی همیشه بد نیست
ساده بودن یه زبان همیشه بهمعنای خوب بودنش نیست. باید دید پیچیدگی چه امکاناتی رو فراهم کرده. مثلاً Go زبانی سادهست اما بسیار کارآمده. یا JavaScript سریع یاد گرفته میشه، ولی هیچ تضمینی برای خروجی درست وجود نداره!
6. پارادایمها و برداشتهای اشتباه
تصورات اشتباهی مثل "OOP سریعه و FP کنده" زیاد دیده میشن، اما بستگی به پیادهسازی داره. مثلاً FP در Haskell میتونه از Java یا #C سریعتر باشه. پارادایمها بیشتر به سبک سازماندهی کد مربوط میشن تا سرعت.
7. بنچمارکها و پشتپردهی عملکرد
هر زبان، بهینهسازیهای خاص خودش رو داره. مثلاً ترتیب فیلدهای object در JS روی سرعت تأثیر میذاره یا در زبانهای تابعی، کامپایلر میتونه بازگشت دنبالهدار رو به loop تبدیل کنه. پس مقایسه عملکرد، نیاز به تحلیل چندبُعدی داره، نه فقط عدد خام.
✍🏽 ¦ @DevYara
(بر پایه مطالعه و تحلیل منابع مختلف)
در مسیر آشنایی با زبانهای مختلف برنامهنویسی، مفاهیمی دیده میشه که شاید تو نگاه اول ساده بهنظر بیان، اما بررسی عمیقترشون نتایج جالبی داره. اینجا چند تا از اون نکات رو مطرح میکنیم:
1. سادگی همیشه یک مزیت نیست
سادگی یک زبان کاملاً نسبیه. چیزی که برای یک فرد آسونه، ممکنه برای فرد دیگه چالشبرانگیز باشه. پس نمیشه سادگی رو بهعنوان معیار مطلق برای خوب یا بد بودن یک زبان دونست.
2. اعتماد به کد، فراتر از خود زبان
اینکه یک زبان قابل اعتماده، خیلی وقتها به مهارت برنامهنویس بستگی داره، نه صرفاً خود زبان. مثلاً با اینکه Haskell زبانی بسیار قویه، ممکنه خروجیهای ناامن هم با اون نوشته بشه، اگر توسعهدهنده باهاش آشنا نباشه.
3. خود زبان رو جدا از اکوسیستمش بشناسیم
خیلیها موقع مقایسه زبانها، بیشتر روی ابزارها و کتابخونهها تمرکز میکنن تا خود زبان. اما مهمه که اول ویژگیهای خود زبان رو بسنجیم، مثل نوع سیستم تایپ، شیوه بیان مفاهیم و سبک حل مسئله. اکوسیستم مهمه، اما نباید جای زبان رو بگیره.
4. تعداد بهتنهایی نشاندهنده کیفیت نیست
اینکه یه پکیج npm هزاران استار داره، لزوماً نشوندهنده امنیت یا کیفیت بالا نیست. همیشه بهتره کدها رو بررسی کرد، چون تجربه نشون داده که حتی محبوبترین پکیجها هم ممکنه آسیبپذیری داشته باشن.
5. پیچیدگی همیشه بد نیست
ساده بودن یه زبان همیشه بهمعنای خوب بودنش نیست. باید دید پیچیدگی چه امکاناتی رو فراهم کرده. مثلاً Go زبانی سادهست اما بسیار کارآمده. یا JavaScript سریع یاد گرفته میشه، ولی هیچ تضمینی برای خروجی درست وجود نداره!
6. پارادایمها و برداشتهای اشتباه
تصورات اشتباهی مثل "OOP سریعه و FP کنده" زیاد دیده میشن، اما بستگی به پیادهسازی داره. مثلاً FP در Haskell میتونه از Java یا #C سریعتر باشه. پارادایمها بیشتر به سبک سازماندهی کد مربوط میشن تا سرعت.
7. بنچمارکها و پشتپردهی عملکرد
هر زبان، بهینهسازیهای خاص خودش رو داره. مثلاً ترتیب فیلدهای object در JS روی سرعت تأثیر میذاره یا در زبانهای تابعی، کامپایلر میتونه بازگشت دنبالهدار رو به loop تبدیل کنه. پس مقایسه عملکرد، نیاز به تحلیل چندبُعدی داره، نه فقط عدد خام.
✍🏽 ¦ @DevYara
👍18🔥2🤬1