b14grubu

منظور از مسلط به یک زبان برنامه نویسی

b14grubu ۱۳۹۷/۱۲/۲۳ مباحث عمومی برنامه‌نویسی

با سلام

منظور از مسلط به زبان برنامه نویسی هایی که توی اگهی های کار میزنن منظور چیه؟؟؟؟

از کجا بفهمیم که ما به زبان برنامه نویسی مسلط شدیم در حدی که به تونیم تو یک شرکت یا به صورت فریلنسر کار کنیم؟؟؟

پاسخ‌ها به این تاپیک
بهزاد مرادی
بهزاد مرادی مدرس، کپی‌رایتر و دولوپر
۱۳۹۷/۱۲/۲۴

سلام و عرض ادب،

در ادامه در این ارتباط دیدگاهم رو خدمت شما عرض می‌کنم. خب نیاز به توضیح نیست که آقای محمد منصوری خیلی دقیق،‌ کوتاه و موجز جان کلام رو گفتند.

برای شروع، باید گفت که واژه‌ای مثل «مسلط» همچون واژه‌ای مثل «زیبایی» کاملاً نسبی است و از یک شرکت به شرکت دیگری فرق می‌کند. به طور مثال، معنای مسلط در یک شرکت نرم‌افزاری در شهرستان با معنای مسلط در شرکتی خوب و تراز اول در تهران با معنای مسلط در شرکتی همچون گوگل در سیلیکون‌ولی کاملاً متفاوت است.

در ادامه اصلاً کاری به مقولهٔ‌ تسلط نداریم بلکه یک نکتهٔ کلی رو عرض می‌کنم. ما وقتی که یک زبان رو مثل PHP برای توسعهٔ نرم‌افزار انتخاب می‌کنیم، خودِ آن زبان یک بحث است و مباحث جانبی‌اش بحثی دیگر. به طور مثال، اگر بخواهید بتونید در کار خود موفق باشید مسلماً‌ باید با فیچرهای این زبان مثل OOP و ... به خوبی آشنا باشید اما در عین حال مثلاً نیازی نیست تا با کلیهٔ‌ توابع کار را آرایه‌های این زبان آشنا باشید بلکه بسته به نیاز می‌شه سرچ کرد (کاری که همه می‌کنن.)

در کنار خود یک زبان برنامه‌نویسی، معمولاً شرکت‌ها نیاز دارند تا شما لایبرری‌ها یا فریمورک‌های مطرح آن زبان را نیز بشناسید و مهم‌تر از این با یکی از آن‌ها به خوبی بتوانید کار کنید. اگر برگردیم به همین مثال PHP، الان اگر در شرکتی شما بخواهید استخدام شوید، بیش از خود این زبان،‌ باید بتوانید با فریمورک مطرحش یعنی لاراول خوب کار کنید.

نکتهٔ دیگری که می‌شود در صورت وجود آن صفت «مسلط» را روی یک دولوپر زد این است که وی جسارتاً مثل گربه 🐱 باشد که مدیر پروژه هر طور انداختش بالا، بتونه چهار دست و پا بیاد پایین. به عبارتی، بتونه از پس چالش‌هایی که توی عمرش حتی تجربه هم نکرده با پرس‌وجو و سرچ و مطالعه بربیاد.

مقولهٔ‌ بعدی این هست که در شرکت‌ها معمولاً ما وارث کدهای دیگر دولوپرها هستیم که از شرکت رفته‌اند که معمولاً نه مستندات درستی دارند و نه اصولی نوشته شده‌اند و ما داریم پول می‌گیریم که بتونیم اون‌ها رو دیباگ کنیم و توسعه دهیم. پس منِ نوعی وقتی در یک آگهی می‌زنم «دولوپر مسلط نیاز داریم» منظورم آن است که باید از عهدهٔ چنین کاری نیز برآید.

در پایان هم عرض کنم که یکسری مباحث کلی هستند که فارغ از نوع زبان برنامه‌نویسی که با آن کد می‌زنیم نیز باید در یک برنامه‌نویسی که دوست دارد با حقوق بالا در جایی به عنوان دولوپر ارشد استخدام شود وجود داشته باشد که برخی از مهم‌ترین آن‌ها عبارتند از:

- قوانین SOLID
- دیزاین پترن‌ها (این مورد خیلی مهم است!)
- زبان SQL (فارغ از هر زبانی که بلد هستید، معمولاً شرکت‌ها انتظار دارند که یک تسلط نسبی به این موضوع داشته باشید.)
- آشنایی با مباحث کلی امنیت
- کار با RESTful API

با مراجعه به لینک‌ها فوق می‌تونید اطلاعات نسبتاً خوبی در مورد تک‌تک اون‌ها به دست بیارید.

و در انتها عرض کنم که جنسِ کار به عنوان کارمند با جنس کار به عنوان فریلنسر دو مقولهٔ کاملاُ متفاوت است. به عبارتی، وقتی که شما قصد دارید به صورت فریلسنری کار کنید،‌ آن‌طور که در محیط یک شرکت به خاطر عدم تسلط ممکن است در مقابل سایرین یا مدیرفنی خجالت‌زده بشید، هرگز به مشکل نخواهید خورد چون اساساً کسی نیست که به خاطر دانش کم شما را تحقیر کند بلکه نهایتاً ممکن است به سندرم ایمپاستر مبتلا بشید.

پس به طور کلی، فریلنسر استرس‌هایی از این جنس را کمتر تجربه می‌کند اما در عین حال یک مشکلی دیگر وجود دارد و آن هم اینکه اگر در حین کار به مشکلی و یا چالشی بربخورید،‌ فقط و فقط باید به خودتان اتکا کنید اما وقتی که در شرکتی مشغول به کار هستید، ظرف ۳۰ ثانیه می‌تونید از کسی که باتجربه‌تر هست کمک می‌کنید و سولوشنی که ممکن هست خودتون پس از یکی دو روز بهش برسید رو در کمتر یک دقیقه بهش دست خواهید یافت.

به طور کلی معتقدم آدم‌ها فعال در این صنعت که به دنبال کار هستند رو میشه به دو گروه کلی تقسیم‌بندی کرد:

۱. کسانی که آن‌قدر حرفه‌ای هستند که سقف شرکت فعلی‌شان کوتاه است و احساس پیشرفت نمی‌کنند و می‌گردند دنبال کار
۲. کسانی که آن‌قدر غیرحرفه‌ای هستند که حتی در شرکت‌های رده چندم نیز نمی‌تونن استخدام بشن و اینها هم دائم در جستجوی کار هستند.

در انتهای توصیه می‌کنیم به اپیزودهای رادیو فول‌استک گوش بدید و واقعاً برخی مهمان‌ها نکاتی رو گفته‌اند که در هیچ فوروم، سایت یا کتابی نوشته نشده اما جزو قوانین نانوشتهٔ موفقیت در صنعت نرم‌افزار هستند.

ببخشید طولانی شد
ارادت
ب. مرادی

b14grubu
b14grubu
۱۳۹۷/۱۲/۲۵

واقعا پاسختون خیلی کامل و عالی بود

ازتون خیلی متشکرم

در پاسخ به

محمد منصوری
محمد منصوریبرنامهِ نویسِ جاوا
۱۳۹۷/۱۲/۲۳

سلام . بذار اینطوری برات بگم که : خوده من که به عنوان کارآموز به یک شرکتی رفتم برا مصاحبه. اولا که چون فکر میکردم php رو خوب بلدم تو رزومه ام زده بودم مسلط به زبان php. و همین که وارد شدم گفتن شما "مسلط" نیستی. چرا که اگر مسلط بودی الان سره کار بودی و حقوق بالایی داشتی بجای اینکه دنبال جایی باشی برا کارآموزی و گفت : تسلط لازمش اینه که حدودا 3 سال حرفه ایی با این زبون کار کنی و از 0 تا 100 شو کامل بلد باشی و همچنین نمونه کار قوی داشته باشی.

حالا اینطور به من گفتن... شایدم اشتباه گفتن✋😉

b14grubu
b14grubu
۱۳۹۷/۱۲/۲۴

ممنونم به سوالم جواب دندان شکنی دادید

تا حالا به این خوبی قانع نشده بودم

در پاسخ به