Senior Software Engineer - Scala, Spark, Kafka, Akka, Cats, microservices, streaming
- Verfügbarkeit einsehen
- 0 Referenzen
- auf Anfrage
- 10963 Berlin
- auf Anfrage
- en | fr | nl
- 05.05.2026
- Contract ready
Kurzvorstellung
Geschäftsdaten
Qualifikationen
Projekt‐ & Berufserfahrung
5/2025 – 5/2026
Tätigkeitsbeschreibung
Part of the Trip management team and MaaS (mobility as a service) domain, building and maintaining services and APIs for managing the lifecycle of the trips running on the MOIA multi-tenant ride-sharing platform. Worked on the migration, simplification/refactoring of the existing services while supporting the expansion into new service areas and new customer tenants.
Technologies used:
Scala, Akka/Pekko, Akka/Pekko streams, ZIO, microservices, GRPC, protobuf, AWS, SNS, SQS, Kinesis, Dynamo, Redis, Docker, k8s, Continuous Integration, Github
Amazon Web Services (AWS), Docker, Git, Scala
10/2023 – 12/2023
Tätigkeitsbeschreibung
Development and migration of B2B portal application micro-services and frontend to the latest versions of Scala / Akka / frontend libraries.
Technologies used:
Scala, Akka/Pekko, Kafka, protobuf, AWS, AWS Kinesis, AWS SNS, Play framework, microservices, Docker, k8s, AWS RDS (Postgres), ScalaTest, Github, TypeScript, JS
Amazon Web Services (AWS), Docker, Kubernetes, Scala
8/2022 – 8/2023
Tätigkeitsbeschreibung
Working on an in-house custom built kafka event processing solution based on Akka actors and Play framework, performing data enrichment on the job postings coming from different sources.
Designed a plan with concrete steps to tackle technical debt, increase the unit test coverage, add integration tests and prepare for the migration to an open source streaming processing solution.
Contributed to the company's data-engineering ecosystem of common Scala libraries (used by all Scala teams), driving migration away from a tight dependency on Akka framework towards open source alternatives, avoiding unnecessary Akka licensing costs that would otherwise apply to most of the projects.
Technologies used:
Scala, Akka, Kafka, Kafka Connect, Play framework, Cats, microservices, Docker, k8s, Hadoop/Hive, Spark, Cassandra, MySQL, ScalaTest, Specs2, Github
Apache Kafka, Docker, Git, Kubernetes, Scala
8/2021 – 8/2022
Tätigkeitsbeschreibung
Working on an event-driven microservices solution based on Akka Streams / Kafka / lambda architecture
Technologies used:
Scala, Cats, Akka Streams, Kafka, GraphQL, microservices, Docker, AWS (ECS, DynamoDB, lambda), protobuf
Amazon Web Services (AWS), Apache Kafka, Docker, Graphql, Scala
1/2021 – 8/2021
Tätigkeitsbeschreibung
Working on a payments solution based on Streams / Events Sourcing microservices architecture
Technologies used:
Scala, Akka Streams, Akka Typed Actors, Akka Persistence, Akka Event Sourcing, Akka Cluster, GRPC, Kafka, microservices, Docker, Azure DevOps Pipeline, Openshift / Kubernetes, Helm
Apache Kafka, Streaming, Scala, Microsoft Azure, Kubernetes
10/2020 – 1/2021
Tätigkeitsbeschreibung
Working on a SaaS ecommerce backend solution based on Events Sourcing, microservices, REST APIs
Technologies used:
Event Sourcing, Scala, Cats, FP, REST, AWS, K8s
Scala, Amazon Web Services (AWS), Kubernetes
10/2018 – 6/2020
Tätigkeitsbeschreibung
Building and maintaining data analytics pipelines for our flagship banking product Q-Refinery.
Q-Refinery has various features such as customer bank transactions enrichment (brand, industry and geolocation) and analysis of customer spend behaviour, brand preference, income and expense classification, etc. The product consists of a few data pipelines built with Scala and Spark, processing between 30 and 100Tb of data, depending on the bank. We used Oozie as a scheduler to orchestrate the pipelines and to run in a MapR / yarn managed on-prem cluster. We put a lot of thinking into the data model definition and also the way we read and write the data, how it is partitioned and how large the part files, so we wrote our own [typed] Parquet/CSV/TSV reader/writer framework.
Product page: -Hyperlink entfernt-
Technologies used:
Big Data, Spark, Scala, ScalaZ, Cats, Cats Effects, FP, ScalaTest, Oozie
Big Data, Apache Spark, Scala
1/2018 – 9/2018
Tätigkeitsbeschreibung
Part of the FX-Options team, building an application to be used mainly by traders, allowing them to better model the FX options risk and pricing.
Morgan Stanley has the largest Scala code repository in the UK with around 3 milion lines of code. They have an in house developed framework which abstracts futures, database calls and UI. Even though there was a pretty steep learning curve to learn the framework, there were a few opportunities to use more mainstream libraries such as Cats and Shapeless. I have written a small but very flexible form fields validation framework with Shapeless. The project highlight was the extensive amount of unit tests we wrote to cover complex FX options bookings for different scenarios.
Technologies used:
Scala, Shapeless, ScalaTest, TDD, Continuous Integration
Scala
5/2016 – 12/2017
Tätigkeitsbeschreibung
Building automation tools for the SEM team managing the AdWords/Bing marketing campaigns for all the properties on the Hotels.com website, localized in 72 languages. The main set of tools are organised in a microservices architecture with REST API interfaces and interchanging events via Kafka or a proprietary message bus, presenting reports to the business user in a web interface. We’ve migrated some of the data processing jobs to Spark on AWS EMR allowing to scale better and I had the main role in drawing the architecture and getting the team up to speed with Spark.
Technologies used:
Scala, Akka, Akka-HTTP/Spray, React JS, Spark, ScalaTest, REST, JSON, TDD, Docker, AWS, Continuous Integration
Apache Spark, Docker, Scala, Amazon Web Services (AWS), Representational State Transfer (REST)
2/2015 – 5/2016
Tätigkeitsbeschreibung
Working on the TV Synced Ads platform, enabling advertisers to activate online RTB campaigns when their ads are aired on TV.
The product was monitoring around 2000 TV channels and using video/audio fingerprinting to do ad clip recognition. My team was developing a few services (built with Spray/Akka-Http and heavily on Akka actors framework) that were monitoring events coming from the TV program monitoring (such as ad started, ad finished on program X). These events, combined with the client/agency configured campaigns, would trigger further rules on activating/deactivating campaigns on RTB platforms (Doubleclick, Adwords, etc). Used various external APIs for Doubleclick, Adwords, AppNexus etc.
Technologies used:
Scala, Akka, Spray, Specs2, REST, JSON, TDD, Continuous Integration, Real-Time Bidding / RTB (AppNexus, DoubleClick, AdWords, Adform)
Scala, Representational State Transfer (REST)
10/2013 – 10/2014
Tätigkeitsbeschreibung
Development and support for the REST webservice providing backend functionalities (static data, products catalogues, account management) for Sony Playstation (PS4, PS3) as well as other Sony devices such as ULTRAHD TVs.
Technologies used:
Java, J2EE, Spring, REST, JSON, TDD, BDD, Cucumber, Selenium, Ruby, Tomcat, Cassandra, Git, GitHub, Continuous Integration, Jenkins
Independent coursework:
Functional Programming Principles in Scala – Coursera
Principles of Reactive Programming (Scala, Akka) – Coursera
Fast track of Play with Scala – Typesafe training at Scala Days 2014
Stairways to Scala (Advanced) – with Bill Venners and Dick Wall – December 2014
Behavior Driven Development, Java (allg.), Spring Framework, Representational State Transfer (REST)
8/2012 – 9/2013
Tätigkeitsbeschreibung
Design and develop the Business Continuity Dashboard web application, used for reporting the Business Continuity data of the bank units worldwide. Being the only developer on the project I designed the architecture within the bank’s technical standards.
Part of the Cortex Deposit team, developing a financial application used for management of clients deposits. Dedicate lately a lot of time to load testing and optimization of the application modules/services as a whole in typical workflow scenarios.
Technologies used:
Java, J2EE, Spring, Hibernate, JPA, JMS, Wicket, Shiro security, IBM WAS, Tomcat, jMeter, Oracle, Postgres
Oracle Database, Postgresql, Hibernate (Java), J2EE, Java (allg.), Spring Framework
Ausbildung
Bucharest
Weitere Kenntnisse
Persönliche Daten
- Englisch (Muttersprache)
- Französisch (Gut)
- Niederländisch (Grundkenntnisse)
- Europäische Union
- Schweiz
Kontaktdaten
Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.
Jetzt Mitglied werden
