برنامه‌نویس
ماهیت کار

برنامه‌نویس‌ها می‌نویسند، آزمایش می‌کنند، اشکال‌زدایی می‌کنند و از دستورالعمل‌های دقیق، که برنامه‌های رایانه‌ای گفته می‌شوند و رایانه باید از آن‌ها برای اجرا توابع‌شان پیروی کند، نگهداری می‌کنند. برنامه‌نویس‌ها همچنین تصور می‌کنند، طراحی می‌کنند و ساختارهای منطقی را برای برطرف کردن اشکال‌ها توسط رایانه آزمایش می‌کنند. بسیاری از نوآوری‌های فنی در برنامه‌نویسی — فناوری‌های رایانش پیشرفته، زبان‌های تازه پیچیده و ابزارهای برنامه‌نویسی — نقش برنامه‌نویس را دوباره تعریف کرده‌اند و بسیاری از کارهای برنامه‌نویسی که امروزه انجام می‌شوند را بسیار بهتر کرده‌اند. عنوان‌های شغلی و توصیف‌ها با توجه به آن سازمان ممکن است متفاوت باشند.
برنامه‌نویس‌ها در بسیاری از محیط‌ها، از جمله بخش‌های سازمان فناوری اطلاعات، شرکت‌های نرم‌افزاری بزرگ، شرکت‌های خدمت‌رسانی کوچک و نهادهای دولتی کار می‌کنند. بسیاری از برنامه‌نویس‌های حرفه‌ای همچنین برای شرکت‌های مشاوره‌ای در محل‌های خدمت گیرنده به عنوان پیمانکار کار می‌کنند. اجازه‌نامه به‌طور معمول برای کار کردن به عنوان یک برنامه‌نویس نیاز نیست، اگرچه گواهی‌نامه‌های حرفه‌ای به‌طور معمول توسط برنامه‌نویس گرفته می‌شوند. برنامه‌نویسی به‌طور گسترده یک حرفه در نظر گرفته‌می‌شود (هرچند بعضی از مقامات در مورد این اساس که فقط شغل‌هایی که پروانهٔ قانونی نیاز دارند به عنوان یک حرفه به حساب آیند اختلاف نظر دارند).
کار برنامه‌نویس‌ها به‌طور گسترده‌ای بسته به نوع کسب و کاری که آن‌ها برای آن برنامه می‌نویسند متفاوت است. برای نمونه، دستورالعمل‌های درگیر در به‌روزرسانی سوابق مالی بسیار متفاوت از تکثیر کردن شرایط در یک هواپیما برای آموزش خلبانان در یک شبیه‌ساز پرواز هستند. برنامه‌های ساده می‌توانند در چند ساعت نوشته شوند، آنهایی که پیچیدگی بیشتری دارند ممکن است بیش از یک سال کار نیاز داشته باشند، این در حالی است که دیگر برنامه‌ها هرگز 'کامل' در نظر گرفته نمی‌شوند بلکه به‌طور مداوم تا زمانی که از آن‌ها استفاده می‌شود بهبود می‌یابند. در بیشتر موارد، چندین برنامه‌نویس با یکدیگر زیر نظر یک برنامه‌نویس ارشد به عنوان یک تیم کار می‌کنند.
برنامه‌نویس‌ها مطابق مشخصات فنی که در درجهٔ اول توسط برنامه‌نویس‌های ارشد و تحلیل‌گرهای سیستم بیشتر تعیین شده‌اند برنامه می‌نویسند. پس از تکمیل فرایند طراحی، کار برنامه‌نویس است که آن طراحی را به دنباله‌های منطقی از دستورالعمل‌هایی که رایانه بتواند پیروی کند تبدیل کند. برنامه‌نویس کد این دستورالعمل‌ها را به یکی از بسیار زبان برنامه‌نویسی می‌نویسد. زبان‌های برنامه‌نویسی گوناگون بسته به هدف برنامه استفاده می‌شوند. کوبول برای نمونه، به‌طور معمول برای اپلیکیشن‌های تجاری که معمولاً روی بزرگ‌رایانه و رایانهٔ کوچک اجرا می‌شوند استفاده می‌شود؛ در حالی که، فرترن در علم و مهندسی استفاده می‌شود. سی++ به‌طور گسترده برای هر دو اپلیکیشن‌های علمی و تجاری کاربرد دارد. جاوا، سی شارپ، ویژوال بیسیک و پی‌اچ‌پی زبان‌های برنامه‌نویسی محبوبی برای وب و نرم‌افزارهای کاربردی تجاری هستند. برنامه‌نویس‌ها عموماً بیش از یک زبان برنامه‌نویسی می‌دانند، و چون بیشتر زبان‌ها مشابه یکدیگر هستند، اغلب نسبتاً به آسانی زبان‌های تازه را فرا می‌گیرند. در عمل، برنامه‌نویس‌ها اغلب با زبانی که می‌دانند نسبت داده می‌شوند، برای نمونه برنامه‌نویس‌های جاوا، یا با نوع وظیفه‌ای که انجام می‌دهند یا محیطی که در آن کار می‌کنند، برای نمونه، برنامه‌نویس‌های پایگاه داده‌ها، برنامه‌نویس‌های بزرگ‌رایانه یا  توسعه‌دهنده‌های وب.
زمانی که در کد منبع، چیزی که برنامه‌ها از آن ساخته شده‌اند تغییر ایجاد شود، برنامه‌نویس‌ها باید دیگر برنامه‌نویس‌ها را از وظیفه‌ای که روزمره انجام می‌شود آگاه کنند. آن‌ها این کار را با نوشتن توضیحات در کد منبع و مستندسازی کدشان انجام می‌دهند؛ بنابراین، دیگر برنامه‌نویس‌ها برنامه را با آسانی بیشتر درک می‌کنند. برای صرفه‌جویی در کار، برنامه‌نویس‌ها اغلب از کتابخانه‌های کد پایه که می‌توانند تغییر یابند یا برای نرم‌افزار کاربردی مشخص سفارشی شوند استفاده می‌کنند. نتیجهٔ این روش برنامه‌های قابل اطمینان و سازگارتر است و همین‌طور سودمندی برنامه را با حذف برخی از مرحله‌های روزمره افزایش می‌دهد.