Software engineer Scala Developer (W/M) at EPFL - Blue Brain Project (Genève, Switzerland)
Location: Genève, Switzerland
Type: Full Time
Created: 2021-10-09 05:00:28
Your mission :
The aim of the EPFL Blue Brain Project (BBP), a Swiss brain research initiative founded and directed by Professor Henry Markram, is to establish simulation neuroscience as a complementary approach alongside experimental, theoretical and clinical neuroscience to understanding the brain, by building the world’s first biologically detailed digital reconstructions and simulations of the mouse brain.
The brain is one of the greatest Big Data problems we have today. Therefore, the Neuroinformatics Software Engineering team built and open sourced Blue Brain Nexus (https://bluebrainnexus.io) to organize, store and process exceptionally large volumes of data in a semantic way and support usage by a broad number of users.
Going beyond the specific use case of the BBP, Blue Brain Nexus is designed to be agnostic of the data domain it is applied to, making it suitable for semantic data management within the scientific community as well as in many other industries. Blue Brain Nexus is already being used by scientists and researchers around the world.
The ultimate goal of Blue Brain Nexus, beyond integrating and organising data, is to enable and accelerate science. In order to achieve this, we are looking at developing the following capabilities:
- Digitally manage a scientific project (lifecycle, collaborating scientists, data, workflows, dissemination...).
- Enable scientists to easily integrate and organise their data,
- Facilitate discovery of data and their reuse,
- Integrate scientific computational workflow (data pipelines, interactive notebooks, ...) and enable scientists to execute them upon suitable data being made available,
- Leverage machine learning techniques and data available in the underlying Knowledge Graph to facilitate and accelerate scientific activities,
- Leverage information available about scientific data to automate strategic IT tasks (e.g. copy of critical data to enable disaster recovery),
- Enable FAIR data publication processes,
- Facilitate the integration of data in the scientific publishing process.
You would be joining the Neuroinformatics Software Engineering team, which is in charge of designing and developing the future of Blue Brain Nexus, as a Scala Developer.
You would be writing open source software using functional programming in Scala, building distributed, highly available systems to manage large scale data. You would contribute to all aspects of software development, from concept, architecture and design to implementation, deployment and managing the software in the production environment. You would play a big role in shaping the future of these systems and contribute to the success of modeling and simulating the brain.
If you would like to read more about what we do, you can read about the open-sourcing of Blue Brain Nexus in this EPFL press release. We have also published an interview on the role of Neuroinformatics at BBP (read the Technology Networks’ interview). If you are curious about Simulation Neuroscience and Blue Brain, you can read Prof. Henry Markram interview series.
Main duties and responsibilities include :
- Develop and maintain software systems to manage and access Neuroscience data within the Blue Brain Nexus Platform.
- Develop search and custom API services for the neuroscientific community.
- Participate in the definition of the Platform roadmap and specification of the Platform services.
- Implement best-practices for maintainable software development, including but not limited to: continuous integration, build, release, deployment process, managing services in various environments, documentation.
- Adherence to and improvement of coding standards.
Your profile :
Experience and preferred skills:
- Proficiency with at least one JVM programming language.
- Professional experience with Scala and a strong wish to develop this skill.
- Experience with NoSQL databases (e.g. Cassandra).
- Agile software development, unit and integration testing.
Experience in any of the following areas would be a plus:
- Typeful, functional programming.
- Building distributed systems, RESTful web services.
- CQRS / Event sourced systems.
- Scala based libraries and frameworks (e.g. Typelevel libraries, Akka toolkit, ScalaTest etc.).
- Semantic web technologies (RDF/OWL, SPARQL, RDF Triple Stores).
- Graph Databases (Property Graphs, RDF Triple Stores).
- Search engine technologies (ElasticSearch).
- DevOps technologies (Docker, OpenShift or Kubernetes, GitOps).
- Scripting languages (Python, Bash).
- Workflow execution technologies and enabling reproducible computation.
- Master degree in computer science or equivalent.
- At least 2 years experience of software development.
- Excellent command of the English language, both written and spoken. French would be a plus
We offer :
- An internationally visible and rising project in simulation-based research in neuroscience using supercomputers.
- A dynamic, multidisciplinary, international and collaborative working environment committed to benefitting the global community
- A modern working environment, based at the Biotech Campus in Geneva Sécheron
Start date : as soon as possible
Term of employment :Fixed-term (CDD)
Work rate :100%
Duration :1 year, renewable