Softwareentwicklung in Cuxhaven
Du suchst noch ein Network in deiner Nähe, um dich technisch und kreativ auszutauschen, interessierst dich für ein Praktikum oder möchtest einfach mal schauen, wie andere Entwickler so ticken? Wir geben einen kleinen Einblick in unsere Arbeitsweise und einen größeren in die von uns verwendeten Technologien. Das ist vor allem für diejenigen interessant, die selber designen oder Softwareentwicklung betreiben.
Jeder richtet sich bei uns seinen Arbeitsplatz ganz nach seinen Wünschen ein, denn jeder soll mit dem arbeiten, mit dem er gut arbeiten kann. Es kann aber hilfreich sein, sich auf eine gemeinsame Basis zu einigen, daher möchte ich dir auch vorstellen, was wir selbst verwenden.
Unsere Entwickler bevorzugen Ubuntu Linux als Betriebssystem, wir sind aber auch offen gegenüber anderen Betriebssystemen wie Microsoft Windows oder Apple macOS. Du kannst das Betriebsystem nutzen, mit dem du am besten zurecht kommst – wir wollen dir da keine Steine in den Weg legen. Bei uns sind derzeit alle drei Betriebssysteme im Einsatz.
Unsere Designer bevorzugen die Adobe Creative Cloud zum arbeiten, aber auch Affinity Designer, Inkscape, Gimp und Synfig Studio kommen bei uns zum Einsatz. Wir würden gerne erfahren, welche Programme du bevorzugst.
Unsere Entwickler bevorzugen Visual Studio Code, haben in der Vergangenheit aber auch gerne Sublime Text verwendet. Natürlich kannst du bei uns den Editor nutzen, in dem du am besten eingespielt bist.
Bei der Softwareentwicklung haben wir alle einen mehr oder weniger langen Prozess hinter uns. Dabei haben wir mit der Zeit festgestellt, welche Arbeitsweisen sich bewähren und mit welchen Sprachen und Frameworks wir am produktivsten sind.
Als Programmiersprachen nutzen wir JavaScript, TypeScript und PHP. Momentan schreiben wir viel internen JavaScript-Code in TypeScript um, um Fehler, die leicht durch JavaScript entstehen, besser im Voraus abfangen zu können und im Client sowie auf der Server-Anwendung die gleiche Programmiersprache verwenden zu können.
TypeScript hat sich deshalb bei uns bewährt, da wir damit die Möglichkeit haben, serverseitig (Backend-Entwicklung) und clientseitig (Frontend-Entwicklung) eine moderne Programmiersprache mit modernen Features zu nutzen. Da TypeScript selbst zu JavaScript kompiliert wird und JavaScript dank Node.js nicht nur im Browser, sondern auch auf dem Server eingesetzt werden kann, brauchen wir nicht zwischen unterschiedlichen Sprachen hin und her zu wechseln.
Übrigens können mit TypeScript / JavaScript auch Desktop-Anwendungen entwickelt werden: Dazu eignet sich das Framework Electron.
Für Websites kommt bei uns das OctoberCMS zum Einsatz, OctoberCMS ist in PHP7 entwickelt worden und nutzt dabei die aktuelle Version des Laravel PHP Frameworks. Damit setzt OctoberCMS auf modernste Technologien. Außerdem bietet es ein stabiles Plugin-Interface, einen Marktplace für Plugins und Themes und ist in seiner Grundausstattung sehr schlank. Zusatzfunktionen werden ausschließlich durch Plugins hinzugefügt. So können wir das System ganz nach dem Bedarf unserer Kunden ausrichten.
Bei Onlineshops bevorzugen wir Shopify (Affiliate Link). Shopify ist cloudbasiert, in Stabilität einfach ungeschlagen (keine breaking changes bei Updates) und bietet zudem nahezu unendlich viele Möglichkeiten bei der Entwicklung eigener Themes. So können wir mit Shopify von einem absolut stabilen Shopsystem profitieren und uns auf die Entwicklung wunderbarer Themes konzentrieren.
Unter Frontend-Entwicklung versteht man die clientseitige Entwicklung, also den Teil der Anwendung, der im Browser ausgeführt wird und für die Darstellung und das Verhalten der Webseite oder Webanwendung zuständig ist.
Bei uns gibt es mittlerweile schon fast einen fließenden Übergang zwischen Websites und Progressive Web Apps. So laden die meisten unserer Websites bereits nur einen Teil der Inhalte neu, statt jedesmal die gesamte Seite neu laden zu müssen. Dabei kommt bei uns für Themes Barba.js, Rivets und Bootstrap 4 zum Einsatz. Bei vollwertigen Webanwendungen kommt hingegen Angular ab Version 2 zum Einsatz, gerne auch im Material Design.
Mit Backend-Entwicklung ist die Entwicklung von serverseitigen Anwendungen gemeint, womit die Daten der clientseitigen Anwendung an den Browser weitergegeben werden oder Anfragen z. B. an eine Datenbank verarbeitet und zurück an die Clientanwendung gegeben werden.
Die Entwicklung von Apps erfordert die Entwicklung eigener Server-Anwendungen. Diese entwickeln wir in TypeScript mit Node.js. Als Framework kommt dabei Koa zum Einsatz. Wenn die Server-Anwendung hochskalierbar sein soll, verwenden wir die Infrastruktur der Google App Engine und Cloud Firestore.
Wir versuchen stets neue Plattformen, Tools, Programme, Sprachen, Libraries und Frameworks auszuprobieren und gelegentlich steigen wir auch auf anderes um. Es ist uns wichtig, dass wir stets auf dem aktuellen Stand der Technik sind und soweit wie möglich über den Tellerrand hinaus schauen. Die obigen Informationen können also heute schon wieder anders aussehen.
Jetzt hast du einen kleinen Einblick in unsere Arbeitsweise. Ganz egal ob du aus Cuxhaven kommst oder nicht: Wir freuen uns auf Austausch und auf frischen Wind durch dich und gerne auch auf Infos über dein bevorzugtes Arbeitsmaterial. Trau dich ruhig, uns zu kontaktieren – wir beißen nicht! ;)