Arbeitsort dieser Stelle Bern und Zurich

Master Thesis: Implement a Language Server for Code Completion

Bewerben

 

Description  

Operating and maintaining data pipelines of advanced data lakes is a challenge. Our open-source product SmartDataLakeBuilder (smartdatalake.io) makes this much more efficient by a metadata driven approach. Data objects and transformations  are configured in HOCON notation (superset of json). With this information SmartDataLakeBuilder executes the data pipelines using state-of-the-art BigData technologies (Apache Spark). In order to write the HOCON configuration files more easily, we would like to develop a service providing code completion to IDE’s by implementing the language server protocol (LSP).

Challenge: The SmartDataLake configuration file needs to be parsed and the context at a given position understood. With that it is possible to look up possible configuration options from the Scala configuration structures. Then a list of code completion hints can be created. Welcome to the world of parsers and compilers with a not so complicated entry level challenge.

In this role

The goal of the master thesis is to:

  • develop a service implementing the language server protocol with LSP4J and Java/Scala, to provide SmartDataLake HOCON notation code completion for various IDE’s.
  • Create a plugin for Visual Studio Code to use your LSP implementation
  • Bonus: Create a plugin for IntelliJ to use your LSP implementation

What we offer

Join our team as intern and you will find a young, dynamic and culturally diverse working environment.

About your profile

knowledge / skills required  

  • Knowledge in Java/Scala and basic knowhow about parsers and compilers.
  • Interest to deep dive into a concrete parser/compiler challenge.

If you are INTERESTED in applying for this position, please send us your complete application (CV, cover letter, letter of reference, diplomas and certificates).

Wenn Sie auf dieser Website weitersurfen, akzeptieren Sie die Nutzung von Cookies oder ähnlichen Technologien, welche die Erstellung von Zugriffstatistiken für unsere Website bezwecken (Tests und Messungen von Zielgruppen, Besuchen, Surfverhalten und Performance), die Ihnen aber auch gezielt auf Ihre Interessen abgestimmte Inhalte und Inserate anbieten.

Wir haben unsere Cookies aktualisiert. Zögern Sie nicht, Ihre Präferenzen ebenfalls zu aktualisieren.

Schließen
save

Ihre Cookie-Präferenzen setzen

Ihre Cookie-Präferenzen aktualisieren

Sie können sich über die Art der hinterlegten Cookies informieren, sie akzeptieren oder ablehnen, sei es für die gesamte Website und alle Services oder einzeln für jeden Service.

OK, alles annehmen

Besucherfluss

Diese cookies verschaffen uns Einblick in Traffic-Quellen und ermöglichen uns ein besseres, anonymisiertes Verständnis unserer Besucher.

(Google Analytics und CrazyEgg).

Neu

Freigabetools

Cookies von sozialen Medien erlauben ein Teilen von Inhalten in Ihren bevorzugten Netzen.

(ShareThis)

Neu

Verständnis der Besucher

Diese cookies werden verwendet, um Besucher über verschiedene Websites hinaus zu verfolgen.

Dadurch wollen wir relevantere, zielgerichtete Inhalte für bestehende Kontakte anbieten (ClickDimensions) und Inserate anzeigen können, die für die Benutzer nützlich und ansprechend sind (Facebook Pixels).

 

Neu
Weitere Angaben zu diesen Cookies und unserer Cookie-Richtlinie finden Sie hier.