Summary
A computer programmer, sometimes referred to as a software developer, a software engineer, a programmer or a coder, is a person who creates computer programs. A programmer is someone who writes/creates computer software or applications generally by providing instructions (commonly through the use of a specific programming language) to the computer or by configuring already existing code (such as a framework or existing code base). Most programmers have extensive computing and coding experience in many varieties of programming languages and platforms, such as Structured Query Language (SQL), Perl, Extensible Markup Language (XML), PHP, HTML, C, C++ and Java. A programmer's most often-used computer language (e.g., Assembly, C, C++, C#, JavaScript, Lisp, Python, Java, etc.) may be prefixed to the aforementioned terms. Some who work with web programming languages may also prefix their titles with web. There is no industry-wide standard terminology, so "programmer" and "software engineer" might refer to the same role at different companies. Most typically, someone with a job title of "programmer" or "software developer" might focus on implementing a detailed specification into computer code, fixing bugs, and performing code reviews. They might have a degree in computer science, an associate degree, or might be self-taught or attended a programming boot camp. Someone with a job title of "software engineer" is expected to understand software engineering principles, more advanced mathematics, and the scientific method, and may be required to have a degree in software engineering, computer engineering, or computer science. Some countries legally require an engineering degree to be called an engineer. In companies that make a distinction, software engineers might have broader and higher-level responsibilities, like designing or architecting new programs, features, and platforms; managing the software development lifecycle including design, implementation, testing, and deployment; leading a team of programmers; communicating with business customers, programmers, and other engineers; considering system stability and quality; and exploring software development methodologies.
About this result
This page is automatically generated and may contain information that is not correct, complete, up-to-date, or relevant to your search query. The same applies to every other page on this website. Please make sure to verify the information with EPFL's official sources.