جشنواره فطر سون لرن

Fullstack کیست و به چه کسی فول استک دولوپر می گویند؟

دسته بندی: برنامه نویسی
سطح مقاله: ساده
زمان مطالعه: 8 دقیقه
۰۳ آبان ۱۳۹۸
فارسی
فول استک
English
Full-stack

به یک سایت آگهی و نیازمندی مشاغل سر بزنید و بخش مربوط به برنامه نویسی آن سایت را مرور کنید. شرکت‌های زیادی را خواهید دید که به دنبال برنامه نویسانی با عنوان شغلی "FullStack Developer" می‌گردند. به احتمال زیاد در لینکدین هم افراد زیادی را با این عنوان شغلی دیده باشید. اگر برنامه نویسان زیادی اطراف شما باشند، ممکن است لا به لای صحبت‌های آنها این اصطلاح به گوشتان خورده باشد. حالا بهتر است ببینیم این FullStack Developer چیست که انقدر از آن حرف می‌زنند. اگر بخواهیم در یک کلمه فول استک دولوپر را تعریف کنیم بهترین کلمه ای که می‌توانیم بیان کنیم "همه فن حریف" است. این مقاله را انتها دنبال کنید تا به طور مفصل درباره این صحبت کنیم که Fullstack کیست و چه کارهایی انجام می‌دهد.

فهرست محتوای این مقاله

فول استک دولوپر کیست؟

به دلیل متنوع بودن زبان‌های برنامه نویسی، فریم ورک‌ها و کتابخانه ها، معمولا یک نفر نمی‌تواند به تنهایی از پس تمام کارهای یک پروژه بزرگ بربیاید. برای مثال در توسعه وب برنامه نویسان معمولا در دو بخش Front End و Back End فعالیت دارند. به این شکل که یک نفر یا یک تیم ظاهر سایت را ساخته و یک نفر یا یک تیم منطق سایت را پیاده می‌کنند. اگر یک نفر بتواند هر دو بخش کار را با هم انجام دهد، به آن شخص Fullstack Developer می‌گویند. یک Fullstack Developer این توانایی را دارد که به تنهایی یک پروژه را به طور کامل انجام داده و صفر تا صد آن را انجام دهد. به عبارت دیگر، یک فول استک دولوپر متخصصی است که دانش زیادی در برنامه نویسی، پایگاه داده، سرور، شبکه و موارد دیگر IT دارد.

مزایای FullStack Developer

فول استک بودن مزایای زیادی برای شخص به دنبال دارد. از آنجا که سطح توانایی برنامه نویسان در این حوزه بسیار بالا است معمولا هیچ مشکلی در پیدا کردن شغل نخواهند داشت. همینطور حقوق و دریافتی یک فول استک کار معمولا بسیار بالا بوده و متخصصان آن درآمد بیشتری نسبت به سایر برنامه نویسان دارند.

معایب FullStack Developer

از آنجایی که یک full stack developer با تکنولوژی‌های مختلف به طور همزمان کار می‌کند، ممکن است آخر سر نتواند در یک بخش خاص متخصص شود و آخر مانند کسی می‌شود که همه چیز می‌داند اما هیچ چیز نمی‌داند. یعنی با اینکه در بخش‌های مختلف تکنولوژی یک دانش عمومی داشته اما نمی‌تواند یک بخش را به طور کاملا تخصصی جلو ببرد. همینطور مسئولیت کاری و سطح انتظار از فول استک دولوپر بسیار بالا بوده و معمولا این افراد باید چالش‌های مختلفی را مدیریت کنند.

مهارت‌های مورد نیاز یک Fullstack Developer

دقت داشته باشید که دانش یک FullStack Developer هیچ سقف و محدودیتی ندارد. هر کس توانایی و تجربه بیشتری داشته باشد می‌تواند موفق‌تر عمل کند. اما داشتن یک سری مهارت‌ها ضروری بوده و برای این که به عنوان یک فول استک دولوپر شناخته شوید باید آنها را داشته باشید. در ادامه این مهارت‌ها را توضیح خواهیم داد.

1 - زبان‌های برنامه نویسی

یک فول استک دولوپر معمولا با چند زبان برنامه نویسی می‌تواند کار کند. معمولا زبان هایی مثل PHP، پایتون، جاوا، جاوا اسکریپت، C# و غیره. البته نیازی نیست که این شخص به تمام زبان‌های برنامه نویسی مسلط باشد چون تقریبا این کار غیرممکن است. اما باید دانش خوبی روی ساختار، گرامر، طراحی و پیاده سازی پروژه با یک یا چند زبان مطرح داشته باشد. برای مثال اگر می‌خواهید در زبان جاوااسکریپت فول استک شوید، باید روی خود این زبان، ES6، نود جی اس و فریم ورک‌های مختلف جاوااسکریپت مسلط باشید.

2 - فریم ورک‌ها و کتابخانه ها

برای این که یک پروژه را از صفر تا صد طراحی کنیم، بهتر است برای سرعت بخشیدن به کار خودمان بعضی از ابزارهای آماده را به کار بگیریم. حتما شما هم شنیده اید که چرخ را نباید دوباره ساخت، پس برای جلوگیری از تکرار یک فول استک دولوپر باید با طیف گسترده ای از فریم ورک‌ها و کتابخانه‌ها آشنا باشد. برای مثال یک فول استک دولوپر وب باید به جز زبان‌های مطرح وب، با کتابخانه‌ها و فریم ورک‌های مختلفی مثل Bootstrap، فاندیشن، جی کوئری، Angular یا غیره هم آشنا باشید.

3 - برنامه نویسی فرانت اند

فراند اند به بخش قابل مشاهده سایت و سرویس تحت وب گفته می‌شود که در مرورگر کاربر اجرا شده و کاربر از طریق این ظاهر نمایش داده شده از خدمات سایت استفاده خواهد کرد. یک Fullstack Developer باید با تکنولوژی‌های مختلف سمت کاربر مثل HTML، CSS، Javascript آشنا باشد. پیش پردازنده هایی مثل Sass و Less را بشناسد، بتواند با کتابخانه‌ها و فریم ورک هایی مثل Jquery، Angular یا React کار کند و به طور کلی از پس ساخت بخش Front End سایت به خوبی بربیاید.

4 - برنامه نویسی سمت سرور

بعد از طراحی ظاهر سایت، نوبت به پیاده سازی منطق و عملکردهای مختلف آن می‌رسد. به این شکل که تعامل کاربر با سایت از طریق فرانت اند به سرور رفته و بعد از انجام پردازش‌های مربوطه دوباره به مرورگر خود کاربر برگردد. به طور کلی سمت سرور را با PHP، پایتون، روبی و جاوااسکریپت می‌نویسند. به عنوان یک Fullstack Developer، برنامه نویسی سمت سرور به عهده شماست و باید بتوانید Logic و عملکرد سایت را درست پیاده کنید.

6 - کار با دیتابیس ها

هر محصول یا پروژه ای برای کار با داده‌ها مثل دریافت، ذخیره، آپدیت و حذف اطلاعات نیاز به یک دیتابیس یا پایگاه داده دارد. به عنوان یک فول استک دولوپر از شما انتظار می‌رود که حداقل با یک یا دو پایگاه داده مطرح بتوانید کار کنید بعضی از معروف‌ترین دیتابیس‌های دنیا عبارتند از MySQL، MongoDB، PostgreSQL، NoSQL که به طور گسترده در دنیا استفاده می‌شوند. هر کدام

5 - آشنایی با اصول طراحی (Design)

شاید با شنیدن نام فول استک، ذهن ما فقط به سمت برنامه نویسی، دیتابیس و مسائل فنی کشیده شود. در کل کمتر کسی از فول استک دولوپر انتظار دارد که در طراحی هم حرف برای گفتن داشته باشد. اما داشتن دانش طراحی و ذوق گرافیک یک مزیت بسیار مثبت برای این افراد حساب می‌شود. البته لازم نیست که حتما به خوبی یک طراح حرفه ای کار کنید، همین که با اصول طراحی، رابط کاربری (UI)، تجربه کاربری (UX) و یک نرم افزار گرافیکی آشنا باشید کافی است.

6 - مهارت‌های فردی

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

نتیجه گیری

در این مطلب بررسی کردیم که Fullstack کیست و چه کسی فول استک دولوپر است. امروزه به خاطر تخصصی شدن کارها، بیشتر برنامه نویسان ترجیح می‌دهند در یک حوزه به صورت تخصصی کار کنند. برای مثال یا سمت کلاینت کار کنند یا سمت سرور. اما فول استک دولوپر می‌تواند هر دو بخش را دست گرفته و به تنهایی یا با کمک کم یک پروژه را از صفر تا صد اجرا کند. اگر برنامه نویس باتجربه ای هستید و به عنوان فول استک دولوپر فعالیت می‌کنید، خوشحال می‌شویم تجربیات خود را با ما و کاربران سون لرن به اشتراک بگذارید.

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

نظرات کاربران

ایمان سلمانی

سلام
ممنونم خواندنی و ساده توضیح دادین.

محمد انوری

سلام ایمان جان … خوشحالم که دوست داشتی …
موفق باشی …

حسین اهل زاده

بسیار عالی و مفید بود، ممنون از مطالب خوبتون

محمد انوری

سلام حسین جان … خیلی خوشحالم که برات مفید بوده …
همیشه شاد و سرحال باشی …

ارسال دیدگاه
خوشحال میشیم دیدگاه و یا تجربیات خودتون رو با ما در میون بذارید :