وقتی میگوییم توسعه دهنده نرمافزار، از چه کسی صحبت میکنیم؟
برای اینکه یک توسعهدهنده نرمافزار باشید و مسائل نرمافزاری را حل کنید مثل شرلوک هولمز به یک ذهن منضبط نیاز دارید،
البته استفاده از دخانیات توصیه نمیشود!
به طور کلی از یک توسعهدهنده نرمافزار انتظار میرود که:
- علاوه بر اینکه میتواند کد خوب بنویسد، بتواند این کار را در یک زمان از پیش تعیین شده (که نامحدود هم نیست) انجام بدهد. در واقع ارائه محصول نرمافزار خوب در زمان منطقی و مناسب. در این مورد لازم است توسعهدهنده با توجه به deadline ها بهترین راه حل را پیدا کند. ممکن است اگر زمان بیشتری به کار اختصاص داده شود، راه حل بهتری امکان پذیر باشد اما مهم انجام بهترین کار در زمان معین شده است.
- به طور مداوم در جستجو راههایی باشد تا با انجام کار کمتر، خروجی بیشتری را ایجاد کند. این کار از طریق یادگیری روشهای جدید در برنامهنویسی، تولید یا استفاده از کتابخانههای برنامهنویسی مختلف، بهبود عملکرد یا پردازش بخشهای مختلف نرمافزار و ... امکان پذیر است.
- بتواند کدهای موجود را مرتبسازی، اشکال زدایی و استفاده کند به جای اینکه هر دفعه همه چیز را از نو بسازد. این مهارت هم مربوط به توانایی خواندن کد دیگران و هم توانایی تغییر ساختار آن به گونهای که بعداً نیز قابل توسعه باشد هست.
- توانایی تخمین مناسب زمان انجام کارها را داشته باشد. کاری که با محاسبه زمان انجام وظایف پیشین و ترکیب آن با تجربه بدست میآید.
- با استفاده از ابزارها یا نرمافزارهای مناسب، سرعت تولید نرمافزار را بیشتر کند و با این کار منافع بیشتری برای خود، تیم نرمافزاری یا شرکت ایجاد کند.
- توانایی ایجاد مستندات استاندارد را داشته باشد.
- بتواند تستهای مناسب را برای یک نرمافزار تولید کند (تست اتوماتیک) و همچنین مراحل تست کیسهای نرمافزار را برای تست دستی تعریف نماید.
- تشنه کسب دانش در حوزه تخصصی خودش باشد، سکون مهمترین آفت توسعهدهندههای نرمافزار است و عامل مهم از رده خارج شدنشان.
- برای کسب دانش و همچنین به اشتراک گذاری آن وقت بگذارد. از طریق وبلاگ یا فعالیت در شبکههای اجتماعی و ...
- بتواند از طریق ایجاد یک نرمافزار یا خدمت الکترونیکی، ارزش آفرینی کند.
- همکاران و برنامهنویسهای تازه کار را در راه تبدیل شدن به یک توسعهدهنده راهنمایی کند. همانطور که از راهنمایی افراد با تجربه برای ارتقاء تجربیات خودش استفاده کرده است.
