PHP

Zu den Aufgaben von PHP Programmieren zählen u.a. die Konzipierung, Entwicklung, Implementierung, Wartung und weitere Optimierung von Webseiten und den verschiedensten Business Webanwendungen. PHP Entwickler arbeiten dabei sowohl im Frontend als auch im Backend Bereich. PHP kann aber ebenfalls für die Programmierung von  Unternehmenssoftware und z.B. für die Automatisierung und Optimierung interner Workflows eingesetzt werden.

Planen Sie ein IT-Projekt?

Fragen Sie unsere neutrale Sicht zum Thema Machbarkeit, Kostenabschätzung und potentielle Dienstleister ab!

IT-Dienstleister vorschlagen

PHP IT-Dienstleister

IAS Software
Saarwellingen Deutschland 66793
Herr Roman Riga
06838 97 94 970
Angebotsraum:
CompuTron GNetX
Pforzheim Deutschland 75180
Herr Daniel Josic
+49 7231 972747
Angebotsraum:
Explicatis
Köln Deutschland 50858
Herr Andreas Pfeiffer
+49 2234 99 303 88
Angebotsraum:
JustRelate Planware GmbH
München Deutschland 80339
Herr Josef Huber
089 54093615
Angebotsraum:
mediatec.net GmbH
Stockelsdorf Deutschland 23617
Herr Sebastian Baj
+49 (0)451-300 96 05-3
Angebotsraum:
LinoPro GmbH
Dresden Deutschland 01139
Herr Arndt Bretschneider
+49 351 444 111 00
Angebotsraum:

Suchen Sie nach einem passendem IT-Dienstleister oder Planen Sie ein IT-Projekt?

Was ist PHP?

PHP (Hypertext Preprocessor) ist eine sehr verbreitete Programmiersprache, mit der meist Webanwendungen erstellt werden.

Schon sehr früh wurde PHP veröffentlicht (1995). Die Verbreitung und der Funktionsumfang wuchs seitdem bis heute zusammen mit dem Internet.

Durch die Verbreitung und lange kontinuierliche Verwendung bieten mit PHP erstellte Webanwendungen eine relativ hohe Investitionssicherheit, obwohl in vielen Versionserhöhungen grundlegende Sprachänderungen erfolgten.

Wo wird PHP eingesetzt?

Durch die gute Datenbankunterstützung (z.B. MySQL) eignet sich PHP nicht nur zur Realisierung des Front-End-Systems, sondern unterstützt auch die Entwicklung komplexerer Back-End-Systeme, wie z.B. komplette betriebliche Anwendungen.

Vorteile von PHP

Ein starkes Argument für die Verwendung von PHP ist vor allem die hohe Verbreitung und Popularität und damit verbundene hohe Investitionssicherheit. PHP ist eine einfach zu erlernende Scriptsprache, die, sofern gut codiert, auch im Vergleich zu anderen Programmiersprache relativ leserlich ist. Es existiert eine sehr gute Community mit vielen hilfreichen Webseiten, Handbüchern, Dokumentationen, Codebeispielen und Foren. Beachtenswert sind auch die vielen Funktionsbibliotheken, Schnittstellen und Erweiterungen. PHP unterstützt die strukturierte Entwicklung mit lesbaren, wartungsfreundlichen und wiederverwendbaren Codes.

Auch die Performance ist für eine Scriptsprache beachtlich und lässt sich noch durch zusätzliche Erweiterungen (z.B. OpCache, Fast-CGI, eAccelerator, ionCube) steigern.

Outsourcing - PHP-Entwickler finden

Der Markt bietet vielen Formen von PHP-Entwicklung an. Zum einen gibt es auf die PHP-Softwareentwicklung spezialisierte Firmen, die ganze Entwicklerteams anbieten. Darunter dann auch gleich den Aufgaben entsprechende "Junior- und Senior-Entwickler", "Projektleiter", "Berater" oder Consultants u.v.m. Zum anderen gibt es Freelancer, die PHP-Programmierung projektorientiert anbieten. In der Praxis erfährt man auch häufig von Schülern oder Studenten, die PHP-Anwendungen nach speziellen Wünschen entwickelten. Auch begegnen einem bei der Suche nach PHP-Entwicklern öfter Methoden Schwerpunkte wie z.B. Agil, Scrum oder Offshore-Angebote mit PHP-Programmierer aus z.B. Ost-Europa oder Asien.

Wie soll man hier vorgehen? Jedes Angebot hat sicher für unterschiedliche Aufgaben auch irgendwo seine Berechtigung. Es gilt zunächst das eigene Vorhaben dahingehend zu analysieren und dann das passende IT-Dienstleistungsangebot einzugrenzen.

Projektgröße

Die Abschätzung der Projektgröße sollte grob ergeben, ob man mit einem Entwickler(in) auskommt oder ob absehbar ein Team benötigt wird. Bei Teams ist es von Vorteil, wenn die Entwickler sich kennen, die Kommunikation erprobt ist und sie harmonisieren. Bei mehreren Entwicklern braucht man auch recht früh Skills mit entsprechenden Koordinations-, Kommunikations- und Projekterfahrungen.

Abgrenzbarkeit bzw. Formulierung der Anforderungen

Ein wichtiger Punkt ist die Formulierung der Anforderungen. Woher kommt der Anstoß für das Projekt? Aus der Problemanalyse ergeben sich mehr oder weniger genau Anforderungen an das zu erstellende, zu redesignende oder zu wartende System. Die Anforderungen werden oft nur grob formuliert oder in Form eines umfassenden Lastenhefts erarbeitet.

Je genauer die Anforderungen formuliert wurden, desto weniger werden Eigenleistungen und Intellektuelle Fähigkeiten des Entwicklers benötigt. Im Extremfall kann es ausreichen, wenn ein vorhandener Pseudocode nur in PHP codiert werden muss. Bei vagen oder groben Anforderungen müssen Lösungen bzw. Lösungswege erst noch erarbeiten werden. Hier ist Erfahrung und Know-Know gefragt.

Typisches Beispiel ist es, wenn eine Anforderung "Datenbank basiert" lautet und für die Anwendung passenden Datenbanken designt werden müssen.

Integration in bestehende Systeme

Die benötigten Skills richten sich auch nach Integrationszielen in vorhandene Systeme bzw. die Abgrenzung der Schnittstellen. Systeme, die beispielsweise mit einem vorhandene SAP-System kommunizieren sollen, verlangen oft Entwickler mit SAP-Kenntnissen. Dabei kommt es auf die vorhandenen Systeme an und ob beispielsweise Daten nur gelesen werden müssen oder auch geschrieben. Dieser Integrationsaufwand lässt sich vorab nur schwierig einschätzen. Er ist oft erheblich und hat einen hohen Anteil (Unsicherheitsfaktor) in der Gesamtkostenabschätzung seitens der Anbieter.

Anteil DB-Entwicklung

PHP Projekte basieren häufig auf Datenbanken. Sollen die Datenbanken erst noch aufgebaut werden und die Datenstrukturen entworfen werden, dann sollte dafür entsprechendes Know-How vorhanden sein, um die Wahrscheinlichkeit von Fehlentwicklungen oder hohem Wartungsaufwand zu reduzieren. Im Vergleich zur anspruchsvollen Strukturierung der Daten ist die PHP Codierung eher einfach. Es kann zweckmäßig sein, den Schwerpunkt auf Datenbankdesign bzw. auf Datenbankexperten zu legen, wenn es einen hohen Datenbank-Anteil gibt.

Anteil Front-End-Entwicklung (z.B. Webseiten, Design, Usability)

Webprojekte haben oft spezielle Anforderungen an die Weboberfläche. Besonders wenn es um Anwendungen geht, die nicht nur für die eigenen Mitarbeiter der Firma gedacht sind. Die Entwicklung öffentlicher Websites beinhaltet auch Webdesign, SEO und Usability. Das sind aber wiederum Themen, die oft nach Spezialisten verlangen und weniger mit reinem PHP Know-Know zu tun haben. Auch hier gilt es Anforderungen zu definieren (z.B. Zielgruppe, Mengengerüste), um sie dann mit beispielsweise mit JavaScript und Kenntnissen des Http, Linux oder Apache umzusetzen.

Vorhandene Entwicklungsumgebung (IDE)

Um Anwendungen mit PHP zu erstellen, gibt es viele Werkzeuge, Standards, Frameworks (z.B. CakePHP,Zend, Aura, Phalcon) oder Entwicklungsumgebungen wie z.B. Eclipse, Komodo, NetBeans, PhpED oder Zend Studio. Viele Webseiten werden beispielsweise mit dem PHP-basierten CMS System Typo3 erstellt.

Die Auswahl passenden Dienstleister richtet sich auch danach, ob Sie mit den ggf. vorhanden Ressourcen wie IDE´s klarkommen.

Manche Systeme verlangen eine mehrmonatige Einführungszeit. Gibt es bezüglich IDE oder Framework keine Präferenzen, dann hat der externe Mitarbeiter freie Auswahl und kann effizient die passenden oder die ihm geläufigen Werkzeuge verwenden.

Ort der Entwicklung – inhouse, homeoffice oder offshore

Heutzutage werden immer weniger Softwareprojekte inhouse durchgeführt. Der besseren Kommunikation bei Inhouse-Projekten, wo die Entwickler beim Kunden entwickeln stehen höhere Kosten (Anfahrt, Unterbringen) und gesetzliche Hürden (z.B. Arbeitnehmerüberlassung) entgegen. Besonders Webprojekte für die PHP prädestiniert ist können ebenso gut extern durchgeführt werden. Oft sind auch die Server, auf denen die Anwendung später läuft nicht on premises, sondern stehen irgendwo anders im Rechenzentrum.

Für Offshore Entwicklungen sind die niedrigeren Entwicklungskosten zu betrachten, aber auch der erschwerte Kommunikationsaufwand (z.b. sprachlicher Hürden, fehlende Kenntnis der länderspezifischen Anforderungen oder Zeitzonen). Besonders bei der Offshore Auftragsvergabe sollten die Anforderungen sehr genau erarbeitet und formuliert werden.

Zertifizierungen

Der überwiegende Teil vorhandener Websites basiert auf PHP und dementsprechend gibt es auch eine Vielzahl von Zertifikaten und Schulungen.

Inwieweit Zertifikate wie z.B. Zend Certified PHP Engineer Certification, Cake, W3 oder Certified PHP Developer für die Relevanz eines Entwicklers, bezogen auf ein bestimmtes Projekt, wichtig ist, lässt sich nicht so einfach beurteilen. Viele Zertifikate sind allgemein gehalten und zeigen nur ein allgemeines Verständnis bzw. den Überblick an. In der Praxis treten oft spezielle Fragestellungen auf bzw. werden gezielte Skills benötigt. Als Orientierung eignen sich Werkzeug- oder Themenbezogende Zertifikate, wenn sie für das Projekt relevant sind wie z.B. LPIC, ACE (Adobe), eBay, MySQL, Magento, Drupal oder Typo3.

Notiz zu Kosten

PHP ist, wie einige andere Skriptsprachen auch, Open Source. Das bedeutet, sie ist kostenfrei nutzbar und Sie zahlen letztlich nur für diejenigen, die Ihnen die dynamischen Webseiten oder Webanwendungen damit erstellen. Die Gesamtkosten eines PHP-Projektes sind natürlich variabel und hängen dabei vom Umfang des jeweiligen Projekts ab.

Durchschnittlich kostet ein(e) PHP-Entwickler(in) in Deutschland 70-80 Euro pro Stunde. Je nach Projekterfahrungen, Zertifizierung oder Schulungen kann es auch etwas höher sein.