Софтуерен разработчик е професия, която се занимава с изработката на компютърен софтуер. Софтуерните разработчици (наричани понякога „софтуерни инженери“) участват във всички етапи от разработката на софтуерни продукти – анализиране на изискванията, моделиране на бизнес процесите и проектиране на софтуера, реализация на функционалността, изпитване и поддръжка. В зависимост от функциите, които изпълняват в проекта, софтуерните разработчици могат да бъдат: бизнес анализатори, софтуерни архитекти, програмисти, специалисти по бази от данни, Web разработчици, специалисти по поддръжката и др. В зависимост от вида на разработвания софтуер могат да бъдат приложни разработчици или системни разработчици[1]. Приложните разработчици се занимават с проектирането и създаването на приложен софтуер. Системните разработчици разработват системите, които позволяват на компютрите да работят правилно. Това могат да бъдат операционните системи, вградени в компютрите, или потребителският интерфейс, позволяващ на потребителя да си взаимодейства с компютъра, в частност.
![Thumb](http://upload.wikimedia.org/wikipedia/commons/thumb/6/64/Coding_Shots_Annual_Plan_high_res-5.jpg/640px-Coding_Shots_Annual_Plan_high_res-5.jpg)
Отговорности
Отговорностите на софтуерния разработчик зависят от конкретната му длъжност и могат да не обхващат целия изброен спектър[2]
- Проучва и анализира изискванията за софтуерни приложения и операционни системи
- Изготвя спецификация, диаграма на работа, модел на решението
- Дава препоръки за подобряване на съществуващи системи и програми
- Модифицира съществуващ софтуер с цел отстраняване на грешки, адаптиране към нов софтуер или актуализиране на интерфейса и подобряване на работоспособността му
- Проектира всяка отделна част от приложението или системата и планира как тези части ще работят заедно
- Участва в имплементацията (същинското програмиране), понякога само напътства други, които осъществяват този процес
- Осигурява качеството на продукта чрез тестване и отстраняване на дефекти
- Документира всяка стъпка от работата на решението, за да може впоследствие тази документация да се използва като справка при поддръжка и последващо тестване
- Участва във внедряване за реална експлоатация при клиента (инсталация, конфигурация, клиентски настройки, интеграция, миграция на данни)
- Осигурява поддръжка на разработения софтуер
- Работи съвместно с другите компютърни специалисти за осигуряване на оптималното решение
Образование
Обикновено се изисква висше образование, макар и в някои случаи да е достатъчен и само практически опит, за да се започне работа по специалността. Най-релевантни образователни специалности са Информатика, Компютърни системи и технологии, Информационни технологии, Компютърни технологии и приложно програмиране, Компютърни науки, Софтуерно инженерство. За хората от тази професия е важно да са винаги в крак с новите технологии и инструменти за разработка, което е свързано с непрестанно допълнително самообучение.
Необходими умения
Основните умения[3], които са необходими, за реализация в тази професия са
- Способност за продуктивна работа в екип
- Познания за съвременния софтуер и хардуер и по-конкретно в прилаганите технологии
- Аналитично мислене и систематично подхождане към проблемите
- Способност за ефективна комуникация
- Умения за своевременно учене и усъвършенстване
- Осигуряване на качествено и продуктивно изпълнение на задачите
Класификация на длъжността
Според българската класификация на професиите и длъжностите професията е в група 251 – Разработчици на софтуер и софтуерни приложения и анализатори.[4][5]
Технологии
В тази област се използва широка гама от технологии и платформи, като най-широко разпространении са C, Java, J2EE, C++/C#, Linux, .NET, Python, ADO, Perl, HTML/HTML5, JavaScript, ASP, PHP, MySQL, SQL Server, Oracle, Ajax
Източници
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.