فرق بین Senior Developer و Junior Developer چیست ؟
تو برخی از آگهی های استخدام برنامه نویس نوشته شده استخدام برنامه نویس Senior یا Junior. لطفا یکی برام توضیح بده :
- به چه کسی Senior Developer گفته میشه ؟
- به چه کسی Junior Developer گفته میشه ؟
- فرق بین برنامه نویسان Senior و Junior چی هست ؟
ممنون
رده بندی برنامه نویسان از لحاظ تخصصی چگونه است ؟
به طور کلی رده بندی مشخص و تایید شده ای برای برنامه نویسان وجود نداره. یعنی اینجوری نیست که بشه به هر برنامه نویس یک درجه از تخصص رو داد. عموما سطح تخصص یک برنامه نویس با توجه به تجربه، تخصص هایی که بلده و نمونه کارهاش مشخص میشه. با این حال یک رده بندی کلی بین برنامه نویسان مد شده که به 4 گروه زیر تقسیم بندی میشه. البته تشخیص اینکه واقعا شما به عنوان برنامه نویس در کدام یک از این گروهها هم قرار میگیرید مجدد یه کار سلیقه ایه.
- Senior Developer
- Junior Developer
- Middle Developer
- Trainee Developer
در ادامه به توضیح هر کدام از موارد بالا و تفاوت های اونها می پردازیم. البته بازم این نکته رو یادآور میشم که این سطوح بیشتر جنبه نمایشی دارن. چون ممکنه هر شرکت یا سازمانی استنباط خاصی از این سطوح داشته باشه. در واقع ممکنه برنامه نویسی باشه که سطح عملیش هم خوب باشه اما به دلیل اینکه با چالش های یک پروژه آشنا نباشه حتی سطح Trainee رو بهش بدن.
برنامه نویس Senior به چه کسی گفته می شود
بالاترین سطح از تخصص یک برنامه نویس سطح Senior یا برنامه نویس ارشد می باشد. اصولا به کسی برنامه نویس Senior گفته می شود که توانایی تحقیق بالایی داشته باشد. یک برنامه نویس ارشد باید توانایی مدیریت یک پروژه بزرگ را با چندین برنامه نویس داشته باشد. بتواند پروژه را به قسمت های مختلف تقسیم بندی کند و هر قسمت را به یک نفر از اعضای تیم بسپارد و در نهایت ارتباط بین بخش مختلف پروژه را بتواند برقرار کند. معمولا برنامه نویس ارشد باید با دیدگاه کلی تری به پروژه نگاه کند و طوری تیم برنامه نویسی را هماهنگ کند که خروجی نهایی کار صحیح باشد.
برنامه نویس ارشد باید بتواند سایر برنامه نویسان در یک تیم برنامه نویسی را راهنمایی کند. او باید در تکنولوژی هایی که در پروژه استفاده شده است مسلط باشد.
اینکه بگوییم چند سال نیاز است تا یک برنامه نویس را ارشد بنامیم اصلا پاسخ مشخصی نداره. ولی معمولا یک برنامه نویس باید بالای 7...8 سال سابقه داشته باشه تا شاید ارشد باشه.
برنامه نویسان ارشد باید ویژگیهای زیر را دارا باشند :
- توانایی مدیریت سایر اعضای گروه
- مسلط به فریم ورک، ساختار، معماری و تکنولوژی هایی که در پروژه استفاده شده است.
- توانایی ارائه راهکار در چالش ها
برنامه نویس Junior به چه کسی گفته می شود
عموما برنامه نویسانی که بین 2 تا 4 سال سابقه کار دارند در رده Junior قرار می گیرند. این برنامه نویسان معمولا با تکنولوژی ها و کدها آشنایی خوبی دارند. مسائل عمومی را می دانند و توانایی نوشتن کد تمیز و ارائه خروجی را دارند. معمولا این برنامه نویسان هنوز توانایی درک و ایجاد معماری های پیچیده و چالش هایی که نیاز به ایده دارند را ندارند. این برنامه نویسان با کسب تجربه آماده تبدیل شدن به برنامه نویس ارشد هستند.
عموما در اکثر پروژه ها تا 70 درصد کار به صورت روتین و عمومی میباشد و شاید 30 درصد کار نیاز به ارائه راهکار و ایده داشته باشد و چالش برانگیز باشد. بنابراین از یک برنامه نویس Junior در 70 درصد پروژه می توان استفاده کرد. این اشخاص توانایی مدیریت و ایجاد ساختار در تیم های برنامه نویسی را ندارند. اگر شما توانایی انجام صفر تا 100 پروژه های کوچک و متوسط را دارید اما در پروژه های بزرگ نمی توانید ساختار مناسبی ایجاد کنید احتمالا در این گروه جای دارید.
دقت کنید استفاده از این برنامه نویسان برای ارتباط با مشتریهای تخصصی توصیه نمی شود.
برنامه نویس Mid Level به چه کسی گفته می شود
معمولا برنامه نویسان با سابقه 1 تا 3 سال در این سطح شناخته می شوند. عمومی ترین مشخصه این برنامه نویسان این می باشد که کدهای روتین را می شناسند، توانایی نوشتن توابع، متدها و کدهای معمولی را دارند. دیتابیس را می شناسند و توانایی ایجاد دیتابیسهای نسبتا ساده را دارا هستند.
معمولا این افراد وقتی با کدهای پیچیده تر روبرو می شوند کمی گیج هستند و توانایی درک آنها را به خوبی ندارند. آنها ارتباطات بین ساختارها را می دانند اما دلیل آنها را به خوبی نمی دانند.
این افراد برای انجام کارهای روتین و پشتیبانی نرم افزارها مناسب هستند.
برنامه نویس Trainee به چه کسی گفته می شود
این افراد همان کارآموزها می باشند. در این سطح افراد فقط دانش تئوری دارند و تجربه کار عملی ندارند. معمولا شرکت ها برای جذب نیرو در ابتدا اقدام به استخدام Trainee Developer ها می کنند. این افراد بیشتر مشغول مطالعه و تست مباحث پایه در مورد برنامه نویسی هستند.
منبع
Software Engineer Qualification Levels: Junior, Middle, and Senior
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- نمایش صفحه در پنجره جدید با کلیک روی لینک (تگ a) در Asp
- افزودن مقادیر به صورت دستی به List دریافت شده از ریپازیتوری
- بهترین سایتها برای تمرین آنلاین برنامه نویسی چیست ؟
- نگهداری و نمایش تاریخچه ویرایش متن در Word
- اصول پنج گانه SOLID در برنامه نویسی چیست ؟
- Agile چیست ؟ مدیریت پروژه با روش Agile در برنامه نویسی چگونه است ؟
- فرق زبان های برنامه نویسی سطح بالا و سطح پایین چیست ؟
- معرفی آموزش برای Power BI و Data Warehouse
- چت GBT چیست ؟ نمونه مشابه ChatGBT وجود داره ؟
- آیا یادگیری سی شارپ به طور حرفه ای آینده شغلی خوبی داره ؟