Programmierer
- 1. Definition Programmierer
- 2. Arten von Programmierern
- 3. Grundkenntnisse von Programmierern
- 4. Tools für Programmierer
- 5. Aufgaben von Programmierern
- 6. Arbeitsfelder von Programmierern
- 7. Branchen
- 8. Qualifikationen von Programmierern
- 9. Zielgruppen von Programmierern
- 10. Programmierung bei TenMedia
Definition Programmierer
Das Wort Programmierung stammt aus dem Altgriechischen und bedeutet Befehl. Die Programmierung ist ein Teilbereich der Softwareentwicklung und Webentwicklung und meint die Erstellung des Quellcodes für Computerprogramme, auch Software genannt, und Webanwendungen wie Websites und Apps mithilfe von Programmiersprachen.
Der Vorgang des Programmierens ist als eine Übersetzung von Anforderungen zu verstehen, indem Logiken erstellt werden. Diese Logiken folgen dem Prinzip der kausalen Bedingungen: Wenn A eintritt, soll B geschehen. Sie werden auch Algorithmen genannt, eine Abfolge von Handlungsschritten, die festgelegten Regeln für eintretende Ereignisse folgen.
Ein großer Teil der Programmierung ist die Automatisierung, die von Programmierern entwickelt wird, um Prozesse von selbst ablaufen zu lassen (wie beispielsweise E-Mail-Vorgänge, Marketingmaßnahmen oder der Umgang mit großen Datenmengen). Diese Technik kommt auch bei der Programmierung von smarten Technologien oder von künstlicher Intelligenz zum Einsatz.
Meist sind Programmierer Teil von Entwicklungs-Teams, sodass die Aufgaben auf mehrere Entwickler verteilt werden. Programmierer können aber auch Aufgaben anderer Rollen übernehmen (s. u. Aufgaben von Programmierern).
Arten von Programmierern
Software-Programmierer
Software ist der erste und ursprüngliche Bereich der Programmierung. Bereits im Jahre 1848 schrieb Ada Lovelace die Grundlage für ein Computerprogramm zur Verarbeitung von Zahlen, Musiknoten, Buchstaben und Bildern.
Mit der Zeit und vor allem durch die Erfindung des Internets in den späten 1980er und frühen 1990er Jahren haben sich immer mehr Felder gebildet (s.u.). Programmierer spezialisieren sich immer mehr. Softwareentwickler lassen sich in viele unterschiedliche Spezialisierungen einteilen, die zwei größten Felder jedoch sind System-Software und Anwendungssoftware.
Softwareentwickler von System-Software schreiben das “Manuskript” für die Hardware, in den meisten Fällen ein Computer und seine physischen Bestandteile, das ihm sagt, was und wie er etwas ausführen soll.
Softwareentwickler von Anwendungssoftware schreiben den Code für Computerprogramme für den Nutzer, wie zum Beispiel Microsoft Office Anwendungen oder Bearbeitungssoftware für Fotos, Videos und andere Medien.
Gaming-Programmierer
Spiele und Games sind streng genommen ein Teil der Anwendungssoftware, da Gaming aber so ein großes Feld geworden ist, haben sich immer mehr Programmierer darauf spezialisiert. Programmierer von Games können selbstständig tätig sein oder, wie bei der Software- und Web-Programmierung auch, zu einem Entwickler-Team gehören, die sich die Aufgaben von der Konzeption über die Programmierung, das Design bis hin zum Testing teilen.
Web-Programmierer
Web-Programmierer sind im weitesten Sinne ebenfalls Programmierer von Anwendungssoftware. Diese lassen sich wiederum in unterschiedliche Kompetenzbereiche unterteilen. Programmierer von Websites schreiben den Code für alle Arten von Internetseiten, die über einen Browser abrufbar sind. Dazu gehören Homepages, Blogs, Online-Shops, Marktplätze und viele weitere.
Programmierer von Webanwendungen, die im Unterschied zu Websites keine rein statische Anzeige von Informationen sind, sondern Interaktionen durch Nutzer in Form von Eingaben und Steuerung ermöglichen, schreiben den Code für alle Arten von Anwendungen, die in einem Browser laufen. Dies können beispielsweise Navigationsanwendungen wie Google Maps sein, eine Übersetzung von Desktop-Anwendungen wie Word Online oder, und hier überschneiden sich ebenfalls die Kompetenzbereiche, Online-Games.
Programmierer von Cloud-Software entwickeln die Infrastruktur und Funktionen von online-basierten Speicher- und Serverdiensten sowie Netzwerken und betreiben und pflegen diese. Darunter fällt beispielsweise auch Cloud Computing, wobei die Software nach dem Software-als-Service-Prinzip von einem externen Dienstleister betrieben und vom Kunden als Dienstleistung genutzt wird.
App-Programmierer
Programmierer von Apps entwickeln jegliche Art von Applikationen, sodass auch dieser Kompetenzbereich zur Anwendungssoftware zählt. Im allgemeinen Sprachgebrauch sind mit Apps zumeist mobile Apps gemeint, wie sie beispielsweise auf Smartphones zu finden sind. In der App-Entwicklung werden diese Anwendungen konzipiert und programmiert, die dann auf mobilen Endgeräten wie Smartphones, Tablets, Smartwatches und Smart-TVs installiert werden können.
Datenbankprogrammierer
Als Programmierer von Datenbanken erstellt und pflegt man Datenbanksysteme für die Buchhaltung, Steuer, Verwaltung von Kunden- oder Mitarbeiterinformationen, für das Controlling, das Rechnungswesen und viele weitere Bereiche. Vor allem aufgrund der großen Datenflut als Folge der Digitalisierung, Stichwort Big Data, kommt Datenbanken in der heutigen Zeit eine zentrale Rolle zu.
Neben dem Einpflegen von Daten und deren Strukturierung mithilfe von Rubriken fallen auch die Oberflächenoptimierung, die Programmierung von Suchfunktionen, das Einrichten des Zugriffs für andere Mitarbeiter sowie deren Einarbeitung in die Systeme durch das Schreiben von Handbüchern und Anleitungen oder das Geben von Schulungen in den Aufgabenbereich von Datenbankprogrammierern.
Grundkenntnisse von Programmierern
Da es so viele unterschiedliche Spezialisierungsbereiche in diesem Beruf gibt, haben Programmierer auch unterschiedliche Kenntnisse und Kompetenzen, die sie während ihrer Ausbildung oder Weiterbildung erwerben. Dennoch gibt es gewisse Grundkenntnisse, die nahezu alle Programmierer gemeinsam haben.
Dazu zählen beispielsweise HTML und CSS. Dies sind Syntaxen, die fälschlicherweise häufig als Programmiersprachen bezeichnet werden. Sie sind lediglich Formatierungsregeln, die keine Logiken enthalten, aber wiederum von Programmiersprachen verwendet werden kann. Diese – oder zumindest einige von ihnen, je nach Anwendungsbereich – zu kennen und zu beherrschen gehört ebenfalls zu den Grundkenntnissen von Programmierern.
Zusätzlich arbeiten die meisten Programmierer mit unterschiedlichen Entwicklungsframeworks, die sie bei der Entwicklung unterstützen. Vor allem im Web-Bereich kommen darüber hinaus diverse Content Management Systeme, kurz CMS, zum Einsatz.
Für Programmierer aller Art ist es außerdem von Vorteil, über zusätzliche Kenntnisse im Bereich Medienrecht, Sicherheit, Marketing und aktuellen Trends im Bereich IT und Digitalität zu verfügen.
Tools für Programmierer
Für die unterschiedlichen o.g. Bereiche der Softwareentwicklung gibt es das entsprechende Werkzeug und verschiedenste Hilfsmittel, die Programmierer bei der Entwicklungsarbeit verwenden. Die geläufigsten sollen hier kurz genannt sein.
Programmiersprachen:
- Java
- C#
- C und C++
Frameworks:
- Node.js
- React.js
- .NET
- Haxe
Gaming
Programmiersprachen:
- Java
- C#
- C und C++
Frameworks:
- Unity
- GameMaker
- Panda.js
Webentwicklung
Programmiersprachen:
- PHP
- JavaScript
- C und C++
- Python
- Visual Basic
- Swift
Frameworks:
- Angular
- Ruby On Rails
- Laravel
- React.js
- Symfony
- Node.js
CMS:
- Wordpress
- Joomla
- Magento
- Drupal
Apps
Programmiersprachen:
- Java
- Swift
- Objective-C
- C++
- C#
Frameworks:
- Cocoa
- Xamarin
Datenbankprogrammierung
Programmiersprachen:
- v.a. SQL, aber auch die o.g. Programmiersprachen
Frameworks:
- VisualBasic.NET
Software:
- Microsoft Access VBA-Programmierung
Teamarbeit
Entgegen der Vorstellung, dass Programmieren eine einsame Tätigkeit ist, gibt es unzählige Tools, die die Zusammenarbeit mit anderen Programmierern und die Organisation innerhalb des Teams erleichtern. Ein paar Beispiele sind:
- Github
Github ist eine webbasierte Hosting-Plattform, bei der man die Entwicklungsarbeit aufteilen, Ergebnisse zusammenführen und die unterschiedlichen Versionen verwalten kann. - Jira
Jira eignet sich vor allem für die Planung und Veröffentlichung von Software. - Squad
Squad ist ein Code-Editor im Browser, mithilfe dessen mehrere Programmierer gleichzeitig an einem Code schreiben können und mithilfe eines integrierten Chats miteinander kommunizieren können.
Aufgaben von Programmierern
Wie der Name bereits sagt, macht die Programmierung den größten Teil der Arbeit von Programmierern aus. Dabei schreiben sie den Code, je nach Anwendungsbereich, mithilfe ihrer Programmierkenntnisse auf die Plattform oder das Gerät abgestimmt mithilfe der jeweiligen Programmiersprachen und gängigen Frameworks.
Im Vorfeld gehört jedoch meistens auch eine Anforderungsanalyse dazu, bei der das Projekt auf Umsetzbarkeit und in Bezug auf die zur Verfügung stehende Ressourcen überprüft wird.
Nach der Fertigstellung ist die Arbeit von Programmierern oft noch nicht getan: Mithilfe des Testings und Monitorings werden manuelle und automatisierte Tests zu Funktionen und z.B. der Verbindung der Websites durchgeführt. Dies kann einmalig geschehen oder in regelmäßigen Abständen durchgeführt werden.
Werden dabei Fehler festgestellt, werden diese im Rahmen einer Wartung behoben und der Code des jeweiligen Produkts optimiert.
Optionale Aufgaben von Programmierern
Eine Tätigkeit, die nicht obligatorisch ist, viele Programmierer in ihrem Beruf aber ausüben, ist eine Beratung zu den gewünschten Produkten. Die Themen können dabei Sicherheit und Medienrecht, Trends, anwendungsspezifische Vergleiche von Produkten und generelle Erfahrungen sein. Manchmal kann die Beratung in Kooperation mit anderen Teammitgliedern wie Content Managern bzw. Online-Redakteuren stattfinden.
Ausgehend von den Wünschen und Vorstellungen kann im Vorfeld auch eine Konzeption durchgeführt werden, bei der die Anforderungen zusammengetragen und dementsprechend das gewünschte Produkt geplant wird.
Sollte sich im Team von Programmierern kein Grafikdesigner befinden, übernehmen sie ebenfalls den Entwurf und die Umsetzung des Layouts, wobei die Farbgebung, die Schriftarten, Grafiken, Buttons und das optische Erscheinungsbild anderer Elemente mithilfe von Photoshop, Figma oder anderen Grafikdesign-Tools festgelegt wird.
Sollte es sich um ein Webprodukt handeln, bieten manche Programmierung auch das Hosting mit an. Stellen für Websites und Web-Apps Webspace auf einem Server zur Verfügung.
Arbeitsfelder von Programmierern
Freelancer
Wie etwa rund 10% der IT-Fachkräfte können sich Programmierer mit ihrer Tätigkeit selbstständig machen oder freiberuflich arbeiten. Dabei nehmen sie meist einmalige, (selten auch wiederkehrende) Projekte und Aufträge von verschiedenen Unternehmen oder Einzelpersonen an.
Gründer
Jeder vierte der o.g. 10% Freelancer gründet ein Unternehmen. Das bedeutet, sie rufen ein Start-up ins Leben, beispielsweise eine Agentur oder einen Website-Betreiber und sind in ihrem Beruf als Programmierer ihr eigener Chef und bilden ein Team um sich herum.
Angestellt
Als angestellter Programmierer beteiligt man sich, wie etwa rund 40%, an der Entwicklung von Programmen, Websites, Games und Apps in einem Team eines Unternehmens. Dieses Unternehmen kann beispielsweise eine Web-, Full-Service-, oder eine Medien-Agentur sein.
Programmierer als Teil von Entwickler-Teams
Entwickler-Teams können sich unter Freelancern, mit Gründern oder in Festanstellung bilden. Je nach Teamgröße sind hier Zusammenarbeiten mit Projektmanagern, Content Managern, Designern, Quality Managern und Administratoren nötig.
Branchen
Laut einer Erhebung von Wiwo ist die häufigste Branche für Programmierer die Webentwicklung. Im Mittelfeld befinden sich Finanztechnologien sowie Cloud-basierte Dienstleistungen und das Schlusslicht bilden Technologien für das Gesundheitswesen.
- Web-Entwicklung und -Design
- IT Branche
- Software as a Service
- Software-Entwicklung
- Finanztechnologien oder -dienstleistungen
- Cloud-basierte Dienstleistungen
- Daten und Analyse
- Beratung
- Werbung, Medien und Unterhaltung
- Einzelhandel oder Online-Handel
- Technologien für das Gesundheitswesen
Qualifikationen von Programmierern
Der Beruf Programmierer bzw. die Berufsbezeichnung Programmierer ist kein geschützter Titel. Für Einsteiger ist dies von Vorteil, da dadurch ein direkter Berufseinstieg möglich ist. Für Unternehmen und Arbeitgeber ist dies allerdings ein Nachteil, da die Kompetenz von Programmierern im Bewerbungsprozess nur schwer nachweisbar ist.
Gute Anhaltspunkte sind daher Qualifikationen. Ein Praktikum kann sowohl den Lebenslauf verbessern wie auch bei der Berufswahl helfen. Anschließend kann beispielsweise ein Studium im Bereich Programmierung abgeschlossen werden, in dem nicht nur die Grundkenntnisse und Fähigkeiten von Programmierern erworben werden, sondern auch das Lernen und Beobachten gesellschaftlicher und medialer Prozesse. Studiengänge für Programmierer sind beispielsweise Informatik, Software Engineering, Softwaretechnik oder Softwareentwicklung. In den letzten Jahren haben sich aber auch immer mehr Web Development Studiengänge herausgebildet. Darüber hinaus bietet es sich an, sich auf ein Stipendium zu bewerben. Gerade, weil dieser Beruf so zukunftsträchtig ist, gibt es im Bereich Programmierung viele Stipendien.
Programmierer, die eine Ausbildung absolviert haben, haben diese meist als Mediengestalter Bild und Ton bzw. Digitale Medien oder im Bereich Medientechniker gemacht.
Quereinsteiger haben das Programmieren in VHS-Kursen und anderen Lehrgängen oder Workshops gelernt oder es sich autodidaktisch selbst beigebracht.
Die Ausbildung von Programmierern bzw. ihr Werdegang ist letztendlich zweitrangig: Gerade im Bereich Informationstechnologien ist eine ständige Weiterbildung nötig, da dies eine sehr schnelllebige Branche ist und sich stetig Innovationen, neue Entwicklungen und Trends auftun.
Zielgruppen von Programmierern
Die Zielgruppen, die Interesse an der Arbeit von Programmierern haben, sind beispielsweise Arbeitgeber, die Programmierer in ihrer Agentur, ihrem IT-Unternehmen oder der IT-Abteilung ihres Unternehmens einstellen wollen.
Anders herum können auch Unternehmen, Start-ups und Einzelpersonen ein Interesse daran haben, für ihr Produkt oder ihre Dienstleistung eine Software, in Spiel, eine App oder eine Website erstellen zu lassen. Aufgrund des heutigen hohen Niveaus von in diesem Bereich werden gelernte Programmierer den Erwartungen und Anforderungen besser gerecht als wenn man diese Aufgabe ungelernt in die Hand nimmt.
Allerdings decken die Kompetenzen von Programmierern in diesem Fall meist nicht alle Bereiche ab, weshalb das Beauftragen eines Entwickler-Teams, in denen Programmierer arbeiten, sinnvoll ist. So werden auch die Bereiche Design, Inhalt, Sicherheit und Pflege abgedeckt. Dies kann beispielsweise im Rahmen der Zusammenarbeit mit einer Internetagentur geschehen.
Programmierung bei TenMedia
TenMedia ist eine dynamische Digitalagentur in Berlin. Seit unserer Gründung im Jahre 2011 haben wir uns auf die Softwareentwicklung, die technische Entwicklung und den Betrieb von state-of-the-art Websites, modernen Apps, innovativen Webportalen und umfangreichen Onlineshops spezialisiert. Unser Entwickler-Team besteht aus Web-Enthusiasten und kompetenten Programmierern. Bei uns gibt es keinen Code von der Stange – wir entwickeln Kundenprojekte nach individuellen Wünschen und Vorstellungen. Darüber hinaus übernehmen wir auch das Hosting und Monitoring nach der Fertigstellung oder stehen sogar als langfristiger IT-Partner zur Verfügung.