چه چیزی مهندسان فرانت‌اند جونیور، میان‌رده و ارشد را از هم متمایز می‌کند

سال‌های تجربه، سطح شما را تعیین نمی‌کنند.

مسئولیت‌پذیری و میزان تأثیرگذاری تعیین‌کننده هستند.

بسیاری از توسعه‌دهندگان فکر می‌کنند ارشد بودن به معنای دانستن APIهای بیشتر است. اما این‌طور نیست. تفاوت واقعی در نحوه حل مسائل و دامنه تأثیرگذاری شما نهفته است.

در اینجا تفکیک این سطوح آورده شده است:

مهندسان فرانت‌اند جونیور (Junior) آن‌ها وظایف را اجرا می‌کنند. تمرکزشان بر یادگیری نحوه کار نرم‌افزارهای حرفه‌ای است.

  • آن‌ها کامپوننت‌های UI را بر اساس طرح‌ها می‌سازند.
  • آن‌ها باگ‌های ساده را رفع می‌کنند.
  • آن‌ها از الگوهای موجود پیروی می‌کنند.
  • آن‌ها به بازخورد و راهنمایی مداوم نیاز دارند.
  • هدف آن‌ها رشد و توسعه مهارت‌هاست.

مهندسان فرانت‌اند میان‌رده (Mid-Level) آن‌ها مالکیت ویژگی‌ها (features) را بر عهده می‌گیرند. با حداقل نظارت کار می‌کنند.

  • آن‌ها ویژگی‌های پیچیده را از ابتدا تا انتها می‌سازند.
  • آن‌ها APIها را یکپارچه‌سازی کرده و State را مدیریت می‌کنند.
  • آن‌ها برای حوزه تخصصی خود تصمیمات فنی می‌گیرند.
  • به جای پرسیدن «چطور این کار را انجام دهم؟»، می‌گویند «این برنامه من است.»
  • آن‌ها وظایف بزرگ را به قطعات کوچک‌تر تقسیم می‌کنند.

مهندسان فرانت‌اند ارشد (Senior) آن‌ها مسائل تجاری و فنی را حل می‌کنند. تأثیر آن‌ها فراتر از کد خودشان است.

  • آن‌ها معماری سیستم را طراحی می‌کنند.
  • آن‌ها ابتکارات فنی را رهبری می‌کنند.
  • آن‌ها به سایر مهندسان آموزش می‌دهند (Mentoring).
  • آن‌ها به جای پرسیدن «آیا می‌توانم این را بسازم؟»، می‌پرسند «آیا باید این را به این روش بسازیم؟»
  • آن‌ها باعث کارآمدتر شدن تمام اعضای تیم می‌شوند.

خلاصه مقایسه:

• نظارت: جونیور (زیاد) | میان‌رده (کم) | ارشد (حداقل) • دامنه: جونیور (وظایف) | میان‌رده (ویژگی‌ها) | ارشد (سیستم‌ها) • تصمیم‌گیری: جونیور (پیروی‌کننده) | میان‌رده (در سطح ویژگی) | ارشد (معماری) • حل مسئله: جونیور (مشخص) | میان‌رده (مبهم) | ارشد (بسیار مبهم)

چگونه رشد کنیم:

اگر جونیور هستید، بر استقلال تمرکز کنید. یاد بگیرید بدون کمک مداوم، کارها را تحویل دهید. مهارت عیب‌یابی (debugging) خود را بهبود ببخشید و کدی قابل نگهداری (maintainable) بنویسید.

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

تمرکز خود را فقط بر نوشتن کد بیشتر متوقف کنید. تمرکز خود را بر این بگذارید که کار شما چگونه بر تیم و شرکت شما تأثیر می‌گذارد.

Source: https://dev.to/ufomadu_nnaemeka_89/what-separates-junior-mid-level-and-senior-frontend-engineers-124e