Softwareentwicklung
Steht in Ihrer Firma ein Projekt für eine Softwareentwicklung an oder denken Sie über ein solches nach, so finden Sie über unseren Bedarfs-Check bis zu drei passende Anbieter für die Neuentwicklung, Weiterentwicklung, Implementierung oder Wartung Ihrer Software. Mit unserer Übersicht, unseren Tipps und Kostenvergleichen unterstützen wir Sie gerne bei der Suche nach der passenden Softwarefirma.
Unsere KMU-Einkaufsexperten kennen den Schweizer Markt und arbeiten mit über 180 geprüften Softwareentwicklungsfirmen in der Schweiz zusammen.
Softwareentwicklung – das Wichtigste im Überblick
- Eine Individualsoftware ist eine Softwarelösung, die auf die individuellen Bedürfnisse und Anforderungen eines Unternehmens zugeschnitten ist.
- Softwareprojekte werden primär nach Aufwand (mit oder ohne Kostendach) oder zu einem Fixpreis verrechnet.
Outsourcing der Softwareentwicklung
Sie haben eine Idee für eine Software und suchen nun für deren Umsetzung nach einem Software-Dienstleister oder einer Software-Dienstleisterin? Oder Sie nutzen eine bestehende Software, die Sie nach Ihren Vorstellungen weiterentwickeln lassen möchten? Das passende Entwicklungsteam unterstützt Sie je nach Projekt in diesen Bereichen:
- Komplette Neuentwicklung einer Software (Individualsoftware)
- Softwareerweiterung bzw. Weiterentwicklung einer bestehenden Software
- Integration oder Ausbau einer Standardsoftware
- Unterstützung bei einer Implementierung
- Wartung einer bestehenden Software
Softwareentwickler in der Schweiz finden – Checkliste
Möchten Sie Ihre Software programmieren lassen, so hilft Ihnen diese Checkliste bei der Wahl des Entwicklungsteams: Der passende Softwareentwickler bzw. die passende Softwareentwicklerin...
- kann Sie ausführlich dazu beraten, ob Sie mit einer Standardsoftware auskommen oder eine individuelle Entwicklung benötigen.
- verfügt über das Entwicklungs-Know-how, das für Ihre Software benötigt wird (zum Beispiel Schnittstellenprogrammierung, App-Entwicklung, Entwicklung individueller Business-Software).
- bringt neben Technologie-Know-how auch Erfahrungen in Ihrer Branche mit und verfügt über entsprechende Referenzen.
- arbeitet gemäss heutigem Standard nach der Methode der agilen Softwareentwicklung.
- hat die richtige Firmengrösse, die mit der Grösse und Aufwand Ihres Softwareprojekts übereinstimmt.
Kosten einer Softwareentwicklung
Die Kosten für eine Softwareentwicklung in der Schweiz können ganz unterschiedlich ausfallen, abhängig von der Abrechnungsart. Verrechnet wird primär nach tatsächlichem Aufwand (Time & Material), nach Fixpreis oder nach Aufwand bis zu einem bestimmten Maximalbetrag. Der benötigte Aufwand hängt unter anderem vom Umfang, von den Funktionalitäten und dem verfügbaren Zeitrahmen ab. Zudem können Kosten für die spätere Wartung anfallen.
Die ungefähren Kostenerwartungen für 240 Stunden Softwareentwicklung mit Python & SQL beginnen bei CHF 29'100 bis CHF 41'500, mit einem Durchschnitt von CHF 36'800. Dies entspricht einem durchschnittlichen Stundensatz von 160 CHF.
Die oben dargestellten Kostenerwartungen basieren auf diesem Szenario:
- Cloud-basierte Softwareentwicklung mit Python und SQL (am Beispiel einer Lagerlogistik-Lösung)
- Use Cases und Software-Architektur sind bereits grob definiert
- Aufwand: ca. 80 Stunden pro Monat (über 3 Monate)
- Total: 240 Stunden
Mehr Informationen zu den Preisen finden Sie auf unserer Kostenseite.
Tipps unserer KMU-Einkaufsexperten für Softwareentwicklung
- Bevor Sie eine bestehende Standardsoftware an die Bedürfnisse Ihres KMU anpassen, empfiehlt es sich, alternativ die Entwicklung einer neuen Individualsoftware in Betracht zu ziehen. Denn der Aufwand für die Anpassungen einer Standardsoftware wird oft unterschätzt, sodass eine Individualsoftware letztlich sinnvoller gewesen wäre.
- Lassen Sie die Kosten für die externe Softwareentwicklung unbedingt bereits vor dem Projektstart abschätzen. Klären Sie dabei die Abrechnungsart ab und definieren Sie vorab den Funktionsumfang der Software sowie die spätere Wartung.
- Viele Softwareprojekte kosten mehr Zeit und Geld als ursprünglich geplant. Um die Wahrscheinlichkeit von Verzögerungen im Projekt zu verringern, empfehlen wir, ein ausführliches Lasten- und/oder Pflichtenheft zu erstellen. Ausserdem können Sie das Risiko von Verzögerungen durch den Einbezug erfahrener Softwareentwicklerinnen und Softwareentwickler weiter minimieren.
Individualsoftware vs. Standardsoftware
Im Vorfeld eines Softwareprojektes stellt sich häufig die Frage, ob eine Standardsoftware ausreicht oder eine Individualsoftware benötigt wird. Mit einer Standardsoftware ist ein fertiges Softwareprodukt gemeint, während eine Individualsoftware auf Ihre Bedürfnisse massgeschneidert wird.
Auf unserer Seite für Individualsoftware finden Sie Leitfragen, die Ihnen zeigen, ob Sie eine massgeschneiderte Lösung benötigen oder eine Standardsoftware ausreicht.
Welches Know-how benötigt Ihr Entwicklungspartner?
Je nach Bereich, in welchem der Softwareentwickler bzw. die Softwareentwicklerin Sie unterstützen soll, ist verschiedenes Know-how gefragt. Beim Check, ob die gesuchte Softwarefirma für Ihre Anforderungen geeignet ist, hilft diese Zusammenstellung:
Schnittstellenprogrammierung
Die Entwicklung von Schnittstellen zwischen zwei Softwareprodukten kann sehr komplex sein. Die Anforderungen hängen hauptsächlich von den zu verbindenden Software-Produkten ab. Hier werden vor allem Fähigkeiten und Kenntnisse in der API-Programmierung, WebServices wie REST, JSON oder SOAP, den entsprechenden Programmiersprachen und Datenstrukturen benötigt.
Entwickler für Webapplikationen
Webapplikationen werden in der Regel von spezialisierten Webentwicklerinnen und Webentwicklern erstellt. Man spricht hier auch von Frontend, Backend oder Full-Stack-Entwicklerinnen und -Entwicklern, je nachdem welche Bereiche oder Teilbereiche einer Entwicklung ausgelagert werden. Hier werden neben den Kenntnissen in Webtechnologien, Frameworks, Datenbanken und Webprogrammierung häufig auch Skills im Projektmanagement benötigt. Häufig vorkommende Webtechnologien sind HTML, PHP, Java, JavaScript, XML, SQL, Python, Cloud Computing und viele mehr.
App-Entwicklung
Das Erstellen einer mobilen App erfordert ähnliches Know-how wie für die Programmierung einer Webapplikation. Hinzu kommt aber das Know-how über mobile Betriebssysteme wie Android oder iOS oder Hardware-spezifischen Funktionalitäten wie Bluetooth oder NFC. Wenn der Auftraggeber bzw. die Auftraggeberin keine Erfahrung mit Mobile-App-Entwicklungen hat, werden zusätzlich noch gute konzeptionelle Fähigkeiten im Bereich von Softwarearchitektur und Konzeption benötigt.
Hardwarenahe Geräteprogrammierung
Bei einer hardwarenahen Programmierung sind vor allem Kenntnisse in den spezifischen hardwarenahen Programmiersprachen und im Zeitalter des Internet-of-Things auch Übertragungstechnologien und Schnittstellen wie Bluetooth oder NFC gefragt. Know-how in der entsprechenden Branche kann von Vorteil sein.
Entwicklung individueller KMU-Business-Software
Zu den aufwändigsten Softwareentwicklungen für ein Unternehmen gehört die Erstellung einer umfassenden, individuellen KMU-Software. Ein Anbieter, der eine solche KMU-Software implementiert, benötigt Kompetenzen in der Business-Analyse, im Projektmanagement, in der Konzeption und in der Softwarearchitektur. Ebenfalls ist Branchen-Know-how notwendig, je mehr, desto besser. Für die Ausführung werden natürlich auch Programmierkenntnisse benötigt.
Projektablauf und Meilensteine bei externer Softwareentwicklung
Besonders in der Zusammenarbeit mit externen Entwicklerinnen und Entwicklern sind die einzelnen Meilensteine vertragsrelevant:
- Planungsprozess: Anforderungserhebung, Lastenheft und/oder Pflichtenheft
- Auswahl Entwicklungsteam oder Vorauswahl Entwicklungspartner bzw. Entwicklungspartnerin
- Aufwandsabschätzung und Offerte, mit oder ohne Kostendach
- Analyse und Softwarearchitektur, Use Cases Definition
- Implementierung und Testing (iterativ)
- Projektbegleitend: Projektmanagement, Projektleitung
- Projektbegleitend: Konfigurationsmanagement, Quellcodeverwaltung, Versionsverwaltung
- Bei der Auftragsentwicklung: Softwareabnahme und Gewährleistung
- Softwareeinführung und User-Schulung
Was sind die beliebtesten Programmiersprachen?
Zu den weltweit beliebtesten Programmiersprachen zählen Python, C, Java, C++, C#, Visual Basic, JavaScript, PHP, Assembly Language und SQL (Stand: März 2022, Quelle: TIOBE Programming Community Index). In der Schweiz werden als Hauptsprachen vor allem JavaScript, Java, TypeScript, Python und C# genutzt, während HTML, SQL, CSS, JavaScript (gilt als Haupt- und Ergänzungssprache zugleich) und Bash/Shell die meistgenutzten Ergänzungssprachen von Entwicklerinnen und Entwicklern sind (Stand: 2021, Quelle: Swiss Developer Survey 2021).
Firmenverzeichnis
Hier gehts zum Anbieterverzeichnis mit mehr als 4'900 Einträgen.
Fakten und Zahlen zu Gryps
- 50'000 KMU-Kunden
- 4'900 geprüfte Anbieter aus der Schweiz
- 110 Produkte und Dienstleistungen
- 14 Jahre Markterfahrung
Häufige Fragen zur Softwareentwicklung
Die Stundenansätze belaufen sich bei der Softwareentwicklung im Schnitt auf ca. CHF 125 / Stunde (Junior) bzw. CHF 166 / Stunde (Senior). Mehr dazu auf unserer Kostenseite.
- Time & Material: Abrechnung nach tatsächlichem Aufwand
- Fixpreis: Abrechnung mit fixem Betrag
- Kostendach: nach Aufwand bis zu einem bestimmten Maximalbetrag
Sofern noch kein detailliert ausgearbeitetes Lastenheft inkl. Softwarearchitektur und UseCases vorliegt, kann die Erstellung einer Festpreisofferte schnell einen Aufwand von vielen Tagen bis Wochen bedeuten. Deshalb ist im Erstgespräch zu klären, ob eine Grobschätzung als Erstinfo ausreicht (oft kostenlos) oder ob eine fundiert ausgearbeitete, verbindliche Offerte notwendig ist.
Ja, es gibt Methoden, damit agile Projekte kalkulierbar bleiben und damit auch Festpreisofferten (agiler Festpreis). Beim agilen Festpreis werden nach einer initialen Projekt- und Testphase die Kosten und der Termin definiert und mit dem Kunden bzw. der Kundin ein Vorgehen zur Steuerung in einem gewissen Rahmen vereinbart.
Softwareentwickler ist oft ein Sammelbegriff für alle Arten von Entwicklerinnen und Entwicklern, somit wird ein App-Entwickler ebenso wie eine Webentwicklerin dazu gezählt. Es kommt also auf das vom Auftraggeber bzw. von der Auftraggeberin definierte Projekt an, das der jeweilige Entwickler bzw. die jeweilige Entwicklerin entwickelt. Ein App-Entwickler oder eine App-Entwicklerin konzentriert sich jedoch rein auf mobile Anwendungen wie Native Apps oder Webapplikationen.
Unter Frontend versteht man die Client-Seite, unter Backend die Server-Seite einer Anwendung. Die Softwareentwicklerinnen und Softwareentwickler unterscheiden sich also in ihren Rollen, Verantwortlichkeiten und im Umfeld, in dem sie arbeiten.
Brauchen Sie Hilfe bei Ihrer Beschaffung?
Unsere KMU-Einkaufsexperten freuen sich auf den Kontakt mit Ihnen und beantworten gerne Ihre Fragen.
Sandro Weber
Leiter Kundenberatung