This list contains only the countries for which job offers have been published in the selected language (e.g., in the French version, only job offers written in French are displayed, and in the English version, only those in English).
This role is part of an initiative to build a real-time data pipeline for processing front-office markets chat data. The system will ingest unstructured messages from trading and sales desks, invoke NLP Engine APIs to extract intent and entities, and transform the results into structured objects. These outputs will power downstream use cases such as trade analytics, trade processing, pricing, risk management, and compliance monitoring. In addition to real-time capabilities, the initiative will also encompass batch processing using big data technologies like Apache Spark to handle large historical datasets, enable complex analytical workloads, and generate aggregated reports. The solution leverages Java, Spring Boot, Elasticsearch, Oracle, Kafka, Apache Spark, and caching frameworks to ensure scalability, low latency, high reliability, and efficient processing of both real-time and historical data in mission-critical trading environments.
Job Responsibility:
Design, develop, and maintain high-performance Java applications for processing front-office chat data in real time
Design, develop, and optimize batch processing jobs using Apache Spark for large-scale data transformation and analysis
Implement config-driven, Spring-based components for data ingestion, transformation, and enrichment
Develop and optimize REST APIs for integration with NLP engines, internal systems, and external applications
Integrate and manage Apache Kafka for high-throughput, low-latency event streaming
Utilize Elasticsearch for efficient indexing and querying of large chat-derived datasets
Write optimized Oracle SQL/PLSQL for configuration management
Leverage continuous integration pipelines to streamline development and deployment
Use Gen AI development tools (Copilot and DevinAI) to write, review, and optimize code efficiently
Collaborate with business analysts, product team and developers to ensure system reliability, scalability, and alignment with requirements
Requirements:
6-10 years of professional experience in Java application development
Expertise in Spring Boot and microservices architecture
Strong experience with Elasticsearch (indexing, queries, aggregations)
Hands-on experience with Apache Kafka (publish/subscribe, streams, scalability)
Proficiency in Oracle Database (SQL, PL/SQL, optimization)
Extensive experience with Apache Spark for batch processing, including Spark SQL
Experience with big data ecosystems and cloud-based data platforms (e.g., Hadoop, Data Lakes, Snowflake, Databricks) is highly desirable
Experience with caching frameworks (Redis or equivalent)
Ability to effectively leverage Gen AI coding assistants for improved development productivity
Knowledge of real-time data processing and large-scale batch processing and data pipeline design
Familiarity with NLP APIs and integrating external ML/AI services is a plus
Understanding of distributed systems, concurrency, and performance tuning
Strong problem-solving and analytical skills
Excellent communication and ability to work across global teams
Proven ability to collaborate under the guidance of other lead developers
Ownership mindset with a focus on delivering high-quality solutions
Bachelor’s or Master’s degree in Computer Science, Engineering, or related field
Nice to have:
Experience with big data ecosystems and cloud-based data platforms (e.g., Hadoop, Data Lakes, Snowflake, Databricks)
Familiarity with NLP APIs and integrating external ML/AI services