.single-format-quote .post section blockquote { background: url("img/jobs.jpg") no-repeat scroll 0 0 / cover #273035; border: medium none; margin: 0; padding: 30px 40px; } ?>

Bild: as_seen / photocase.de

Ein Job als Scala-Entwickler: Funktionale Sprache trifft kreative Denke

Julia Bellinghausen

Du suchst einen Job als Scala-Entwickler? In unserer Reihe „Kreative Jobs“ beleuchten wir verschiedene Berufsbilder für Informatiker, die nicht nur Zukunft haben. Sie bieten auch Freiraum für Kreativität und selbstbestimmtes Arbeiten. Heute: Scala-Entwicklung. Aber was muss man für einen solchen Job mitbringen? Und warum macht das Spaß?

Scala – vom Underdog zur gefragten Programmiersprache

Scala, abgeleitet von „scalable language“, ist eine sehr kompakte und objektorientierte Programmiersprache, die Anfang der 2000er-Jahre an der École polytechnique fédérale de Lausanne in der Schweiz für den Einsatz vor allem in der Industrie entwickelt wurde. Was zunächst nach einem Nischenthema aussah, hat sich im Laufe der letzten Jahre als weit verbreitete und zunehmend gefragten Programmiersprache etabliert.

Zunächst waren Internet-Gigangten wie Twitter, die Scala früh einsetzten, wichtige Treiber. Später wurde die Entwicklung durch die zunehmende Verbreitung des reaktiven Programmierens beschleunigt. Die Nutzung von Scala im Bereich Big Data, Fast Data und Data Science hat schließlich nachhaltig für Bekanntheit gesorgt. Auf dem Arbeitsmarkt werden heute zunehmend Entwickler mit Scala-Kenntnissen gesucht. Sie werden sowohl als Senior-Mitarbeiter inhouse – zum Beispiel bei großen E-Commerce-Anbietern – oder bei IT-Beratungsunternehmen gebraucht. Aber auch für Berufseinsteiger gibt es vielversprechende Junior-Positionen.

Der Job als Scala-Entwickler

Scala kommt unter anderem im Backend-Processing in Enterprise-Umgebungen und in der Entwicklung von Service-Infrastrukturen in der Cloud sowie in der Entwicklung von mobilen und web-basierten Anwendungen zum Einsatz. Programmierer schätzen an Scala vor allem den funktionalen Stil, das mächtige Typsystem und die Interoperabilität mit Java. Mit Scala lassen sich Codes erstellen, die gleichermaßen knapp und dennoch verständlich sind. Die Vielzahl an unterstützen Programmierstilen erlaubt das Coden von sicheren und vielfältigen Designs.

Marius Soutier hilft in seinem Job als Scala-Entwickler und als selbständiger Berater und Data Engineer Firmen dabei, ihren oft ungenutzten Datenschatz zu heben: „Ein Online-Shop-Betreiber kann beispielsweise aus dem Verhalten seiner Nutzer ableiten, wie der Shop so umgestaltet werden könnte, dass weniger Menschen die Seite wieder verlassen oder Kunden schneller an die Produkte kommen, nach denen sie suchen.“

 Was ein Scala-Entwickler mitbringen sollte

 Wer als Junior Scala-Entwickler durchstarten will, sollte ein abgeschlossenes Studium der (Wirtschafts-)Informatik oder eine vergleichbare Ausbildung mitbringen. Neben dem sicheren Umgang mit Scala sind meist auch Kenntnisse in weiteren Programmiersprachen wie Java, Clojure, Ruby oder Python gefragt. Außerdem ist erste Praxiserfahrung mit der Entwicklung JVM-basierter Serverapplikationen, in der agilen Softwareentwicklung sowie der Testautomatisierung äußerst hilfreich.

Je nach Stellenbeschreibung ist zudem Know-how in Sachen Webarchitekturen und -technologien sowie Datenbanken ebenso hilfreich. Außerdem kann ein grundlegendes Verständnis von REST-APIs, paralleler und asynchroner Programmierung, non-blocking I/O sowie skalierbaren Architekturen, insbesondere Sharding, Replikationen, Load Balancing und Fail-Overs gefordert sein. Wer seine Chancen bei der Jobsuche erhöhen will, sollte sich die Anforderungsprofile der jeweiligen Stellenanzeigen genau durchlesen und sie mit dem eigenen Erfahrungsschatz abgleichen. Gerade im Bereich E-Commerce werden zum Beispiel Vorkenntnisse im Bereich Machine Learning-basierte Rankingtools und Suchfunktionen erwartet.

Softskills machen den Unterschied

Schon bei Junior-Positionen bevorzugen Unternehmen Kandidaten mit Praxiserfahrung, die sie in Praktika oder im Rahmen von studentischen Nebenjobs gesammelt haben. Teamfähigkeit, flexible Denke, Kreativität bei der Lösung von Problemen und die Arbeitsabläufe agiler Softwareentwicklung lassen sich eben am besten „on the job“ erlernen und verfestigen.

Das bestätigt auch Marius: „In meinem Job ist es wichtig, Lösungen für unerwartete Probleme zu finden und mit einem sich ständig ändernden Umfeld umzugehen. Man kann zu Beginn eines Projekts nicht an alle Eventualitäten denken, die sich auftun werden. In solchen Momenten muss man kreativ werden. Eine Software wird zudem nicht in einem Anlauf geschrieben und ist dann abgeschlossen. Während man sie entwickelt, lernt man mehr über die Problemstellung, und diesen neuen Informationen muss man sich wieder anpassen und damit kreativ umgehen, mit seinen Teamkollegen über mögliche Konsequenzen sprechen, und alle am Projekt Beteiligten auf dem Laufenden halten.“

Eigenständiges Arbeiten und Herzblut sind gefragt

Softskills sind auch für Scala-Entwickler unersetzlich – das reine Fachwissen, das sie sich an der Hochschule aneignen, bildet die Basis. Praxiserfahrung jedoch unterscheidet den reinen „Abarbeiter“ vom engagierten Projektmitarbeiter, der seinen IT-Job mit Kreativität ausgestaltet und seine Aufgaben mit Eigeninitiative bewältigt. Das punktet auch beim Arbeitgeber. Der sollte dafür aber natürlich auch die nötigen Freiräume einräumen: „Eigene Entscheidungen zu treffen ist für ein Team von Softwareentwicklern unersetzlich“, weiß Marius. Projekte, bei denen Entscheidungen von oben aufoktroyiert werden, laufen seiner Erfahrung nach nicht so gut wie kollaborative Zusammenarbeit. Mitarbeiter müssen sich mit ihrem Unternehmen oder Auftraggeber identifizieren können. „Je mehr ich mich selber zum „Owner“ der Aufgabe machen kann, desto mehr Herzblut werde ich in ihre Umsetzung stecken.“

Scala-Developer – ein Job mit Zukunft

Marius hat mit seiner Berufswahl die besten Erfahrungen gemacht und ist weiterhin mit Freude dabei: „Die IT-Welt steht niemals still – ständig entstehen neue spannende Technologien, die früher oder später auch für einen selbst relevant werden können. Außerdem macht es einfach Spaß, Probleme zu lösen und positives Feedback von Kunden zu bekommen. Zu guter Letzt tummeln sich im IT-Umfeld viele nette Menschen. Oft findet ein freier und firmenübergreifender Austausch statt, wie z.B. in meiner Scala-User-Group. Viele sind motiviert, Neues zu lernen, es anderen beizubringen, sich gegenseitig zu helfen und Dinge voran zu bringen. Meet-ups sind eine perfekte Gelegenheit um Gleichgesinnte zu treffen, von ihnen zu lernen, und Wissen weiterzugeben. Dort gibt es nicht nur interessante Jobs – meistens gibt es Pizza!“

Julia Bellinghausen

Julia Bellinghausen hat Philosophie, Literatur- und Kommunikationswissenschaft studiert. Als Redakteurin für das univativ Journal ist sie immer auf der Suche nach neuen Geschichten rund um die Themen Studium, Berufseinstieg und Arbeitswelt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

error: Dieser Inhalt ist geschützt!