Datenquellen

Um die Anzahl der Entwickler*innen in einem bestimmten Land zu schätzen, nutzen wir die Daten internationaler Arbeitsorganisationen (wie Eurostat) und sowie nationale Statistiken des jeweiligen Landes (zum Beispiel Statistics Canada für Kanada). Da der Begriff „Programmierer*in“ je nach Land unterschiedlich definiert wird, verwenden wir die Daten, die für unsere Studie am relevantesten sind. In den USA zum Beispiel entsprechen die folgenden Berufe weitgehend der Definition von „Programmierer*in“:

  • 15-1131 Computerprogrammierung
  • 15-1132 Softwareentwicklung, Anwendungen
  • 15-1133 Softwareentwicklung, Systemsoftware
  • 15-1134 Webentwicklung

Jedes Jahr führen wir eine Entwicklungsökosystem-Umfrage durch, bei der wir 30.000 Entwickler*innen weltweit ansprechen. Diese Daten sind in den Aufbau unseres Forschungsmodells eingeflossen. Sie ermöglichen uns ein umfassendes Verständnis der Entwicklungscommunity, auf der Grundlage von Erkenntnissen über die Popularität von Programmiersprachen, Tools und Technologien, Präferenzen der Entwickler*innen und neue Trends.

Unser Modell

Für den Aufbau unseres Modells stützen wir uns auf die Bevölkerungsgröße und die Anzahl der Entwickler*innen in einem bestimmten Land (X) in einem bestimmten Jahr (T). Wir verwenden die neuesten öffentlich zugänglichen Daten für das jeweilige Land, um das Jahr mit den aktuellsten Informationen für unsere Berechnungen zu ermitteln. Auf diese Weise können wir die Entwicklerdichte im jeweiligen Land für das jeweilige Jahr berechnen.

DevDensity = DevNumber/Population

Um die Anzahl der Entwickler*innen in demselben Land für neuere Jahre (T+1, T+2, ...) zu berechnen, gehen wir von einer konstanten Dichte aus und wenden sie auf die aktuellen Bevölkerungszahlen des Landes gemäß UN-Schätzungen an. Dieses Modell hat sich in retrospektiven Analysen als effektiv erwiesen. Um die Anzahl der Entwickler*innen in einem Land zu berechnen, für das keine Daten vorliegen, verwenden wir Daten aus anderen Ländern („Y“) in derselben Region. Für jedes Land Yᵢ berechnen wir die durchschnittliche Dichte über alle bekannten Jahre. Wir wählen dann ein 10%-Quantil unter den resultierenden Durchschnittswerten. Dieses verwenden wir als Näherungswert für die Entwicklerdichte im Land X.

Nachdem wir die Dichte der allgemeinen Entwicklerpopulation berechnet haben, können wir die Größe einer bestimmten Entwicklerkategorie innerhalb dieser Population ermitteln. Wenn wir den Anteil der jeweiligen Kategorie (z. B. Python-Anwender*innen unter allen Programmierenden) in der Stichprobe der Entwicklungsökosystem-Umfrage kennen, können wir die Population dieser konkreten Kategorie wie folgt berechnen:

CategorySize = CategoryShare х DevPopulation

Nehmen wir an, wir wollen die Zahl der in den USA ansässigen Entwickler*innen ermitteln, die im Jahr 2023 Python verwendet haben.

Die Daten der Entwicklungsökosystem-Umfrage 2023 liegen uns vor, und wir können die Antworten auf folgende Fragen nutzen:

  • Bitte wählen Sie Ihr Land oder Ihre Region aus.
  • Welche Programmiersprachen haben Sie in den letzten 12 Monaten verwendet?

Unter allen Befragten, die „Vereinigte Staaten“ als ihr Land oder ihre Region angegeben haben, würden wir den Anteil der Entwickler*innen, die Python verwenden, als gewichteten Anteil der Befragten ermitteln, die „Python“ als ihre Programmiersprache angegeben haben.

Die geschätzte Anzahl der Entwickler*innen, die Python in den USA im Jahr 2023 verwendet haben, kann dann wie folgt berechnet werden:

SizeUsaPython = ShareUsaPython х DevPopulationUSA

Einschränkungen

Unsere Methodik weist mehrere Einschränkungen auf:

Unser Modell berücksichtigt derzeit nur professionelle Entwickler*innen. Studierende und Hobbyprogrammierer*innen werden nicht einbezogen, da unsere Daten und unsere Methodik nicht ausreichen, um diese Personen zu zählen.

Wenn keine Informationen für ein bestimmtes Jahr vorliegen, verwenden wir die neuesten verfügbaren Daten. Für einige Länder fehlen Daten und müssen ersetzt oder bereinigt werden.

Unser Dashboard verfügt über begrenzte Filtermöglichkeiten und bietet nur Optionen an, für die umfassende Daten vorliegen.

Die Zahlen geben nur den wahrscheinlichsten Wert (mittlere Prognose) wieder und sollten nicht als exakter Wert betrachtet werden. Gemäß einer retrospektiven Überprüfung des Modells weichen die tatsächlichen Werte im Durchschnitt um 14% von den prognostizierten Werten ab (mittlerer absoluter prozentualer Fehler, MAPE). Dies gibt uns eine Vorstellung davon, inwieweit die tatsächlichen Werte von den auf dem Dashboard angezeigten Prognosen abweichen können.

Gehaltsrechner

Unser Gehaltsrechner basiert auf den Daten, die wir in unserer jährlichen Entwicklungsökosystem-Umfrage erhoben haben. Die Gehaltsdaten wurden ermittelt, indem die Befragten nach ihrem Nettojahresgehalt in USD (nach Steuern, ohne Boni) gefragt wurden.

Unsere Gehaltsberechnungsmethode weist mehrere Einschränkungen auf:

  • Die Teilnehmenden wurden nach Gehaltsspannen statt konkreten Gehaltszahlen gefragt. Dies bedeutet, dass der Gehaltsrechner nur Schätzungen innerhalb dieser Bandbreiten liefert und möglicherweise keine zielgenauen Schätzungen bereitstellen kann.
  • Die Faktoren, die das Gehalt beeinflussen, können je nach Arbeitsrolle variieren. Zwar liegen uns Antworten von Personen in verschiedenen Arbeitsrollen (Design, Projektmanagement, Produktmanagement usw.) vor, die Anzahl der Antworten reicht jedoch nicht aus, um genaue Schätzungen für diese Rollen zu ermitteln. Daher bietet der Gehaltsrechner nur Schätzungen für professionelle Entwickler*innen (vollbeschäftigte Befragte mit Berufserfahrung in der Programmierung).
  • Wenn keine Informationen für ein bestimmtes Jahr vorliegen, verwenden wir die neuesten verfügbaren Daten.
  • Der Gehaltsrechner bietet nur eingeschränkte Filtermöglichkeiten für Länder und Programmiersprachen, da uns nur für diese Optionen repräsentative Umfragedaten vorliegen. Zum Beispiel fehlt Österreich in der Länderliste, da wir nicht über genügend Datenpunkte für genaue Schätzungen verfügen.