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