Someone who develops software - sometimes called SoftwareEngineer, but not in Texas unless they can pass the state SoftwareEngineer criteria (see why the ACM dropped support for the SoftwareEngineeringBodyOfKnowledge).
Software developers are a new kind of professional that deal only with abstractions, while producing an abstract but yet sometimes useful contraption: a ComputerProgram.
A SoftwareDeveloper typically takes on a combination of the following jobs/roles: - SoftwareProgrammer, BusinessAnalyst, SystemAdministrator, SystemAnalyst, SoftwareArchitect, SystemArchitect and SoftwareEngineer.
There are other names for specific roles:
It is typical in large companies for those jobs to be specialized and in smaller companies for those jobs to be done by a single developer. In large companies, issues become more complex as the size and lifespan of the systems increase. In smaller companies it is typically more enjoyable because the scope of responsibility is larger.
There are some software developers who have a ProfessionalAttitude?, AmateurAttitude?. In addition, some developers treat their profession as ArtworkPerspective? and others treat their profession as a JobPerspective?. The difference in attitude and perspective has a massive affect on the advancement of a developer in a career as it affects how a developer thinks. A ProfessionalAttitude? typically realizes that being a SoftwareDeveloper is part of a career path and that path only advances if you put effort into the advancement of your knowledge and understanding of what you do and where you want to get to.
University Degree
A BachelorOfScience? is a part of the liberal arts field. A BachelorOfInformationSystems? is part of the commerce field and is typically beneficial in large companies.
I would say they are respectively good if you want to become an academic, work in highly technical fields, work in research fields. University has the effect of sharpening a person's understanding of complex thought, abstract ideas and conceptualizations (work of the mind). Software is a product of the mind and so someone who has sharpened their ability to think can only benefit from university. However, do not underestimate TheTechnologist?. A technologist will produce far more software than a small team of university graduates combined - quicker, more feature complete and more complex in nature, and less likely to fail. A typical example is LinusTorvalds. Sure, he went to university, but his ability to succeed is because he is a technologist, not because he went to university. A person may be as able as Linus but have different experiences and different social connections - therefore don't expect to achieve the same level of fame. My point - University is great but any true technologist does not need university to succeed.
A career in development is the product of how much effort you put in to advance yourself along that path.
-- TimTwelves